Interface AcceptanceCondition
- All Known Implementing Classes:
Argument
,BinaryAcceptanceCondition
,ConjunctionAcceptanceCondition
,ContradictionAcceptanceCondition
,DisjunctionAcceptanceCondition
,EquivalenceAcceptanceCondition
,ExclusiveDisjunctionAcceptanceCondition
,ImplicationAcceptanceCondition
,NegationAcceptanceCondition
,TautologyAcceptanceCondition
public interface AcceptanceCondition
An immutable representation of acceptance conditions for ADFs.
Mirrors the structure of org.tweetyproject.logics.pl.syntax.PlFormula.
- Author:
- Mathias Hofer
-
Nested Class Summary
-
Field Summary
Modifier and TypeFieldDescriptionstatic final ContradictionAcceptanceCondition
This constant is an alias forContradictionAcceptanceCondition.INSTANCE
, its only purpose is readability.static final TautologyAcceptanceCondition
This constant is an alias forTautologyAcceptanceCondition.INSTANCE
, its only purpose is readability. -
Method Summary
Modifier and TypeMethodDescription<U,
D> U Passes the topDownData to the right visit method and returns the result of the visit method, performs no modifications on them.static AcceptanceCondition.Builder
Returns a left-associative builder.default boolean
Checks if the given argument is contained in this acceptance condition.
-
Field Details
-
CONTRADICTION
This constant is an alias forContradictionAcceptanceCondition.INSTANCE
, its only purpose is readability.It is guaranteed that there is only one instance of the logical constant, therefore it is safe to perform == checks.
-
TAUTOLOGY
This constant is an alias forTautologyAcceptanceCondition.INSTANCE
, its only purpose is readability.It is guaranteed that there is only one instance of the logical constant, therefore it is safe to perform == checks.
-
-
Method Details
-
arguments
- Returns:
- recursively computes all the arguments of this acceptance condition
-
getChildren
Set<AcceptanceCondition> getChildren()- Returns:
- an unmodifiable set of children
-
accept
Passes the topDownData to the right visit method and returns the result of the visit method, performs no modifications on them.This allows for type-safe traversal through the acceptance condition structure.
- Type Parameters:
U
- the bottom-up dataD
- the top-down data- Parameters:
visitor
- the visitortopDownData
- the data which is passed from the root of the acceptance condition to the leaf- Returns:
- the result of the visit method
-
contains
Checks if the given argument is contained in this acceptance condition.Note that this relation is reflexive, hence each argument contains itself.
- Parameters:
arg
- some argument- Returns:
- true if the argument is contained
-
builder
Returns a left-associative builder.- Parameters:
acc
- the base acceptance condition, e.g. an argument- Returns:
- a builder
-