Class DefaultNegation

java.lang.Object
All Implemented Interfaces:
Formula, ComplexLogicalFormula, LogicStructure, SimpleLogicalFormula

public class DefaultNegation extends ASPBodyElement
This class represents a default negated literal, i.e. "not a", where a is a classical atom or an aggregate atom.

Note: In answer set programming, the body of a rule is usually composed of a set of positive and negative literals, where this valuation refers to default negation or negation as failure. When implementing a rule, there are two options:

  • implement the rule with two distinct lists, representing the sets of positive and negative literals
  • implement the rule with one set containing super literals, where a super literal can be positive or strictly negated, with or without default negation.

This library takes the second approach, which allows more flexibility, but comes at the cost that malformed constructs like "not not a" are not intercepted by the library.

Author:
Tim Janus, Thomas Vengels, Anna Gessler