Package eu.bandm.tools.dpll
Interface Proposition<P>
- Type Parameters:
P- the type of propositional variables
public interface Proposition<P>
A logical proposition.
-
Method Summary
Modifier and TypeMethodDescriptionbooleanChecks whether this proposition is free of disjunctions.booleanisFalse()Check whether this proposition is evidently false.booleanisSatisfiedBy(Set<Literal<P>> solution) Checks whether this proposition is satisfied by a given solution.booleanisTrue()Check whether this proposition is evidently true.intscore()Returns a nonnegative measure of the syntactic complexity of this proposition.
-
Method Details
-
isTrue
boolean isTrue()Check whether this proposition is evidently true.- Returns:
trueif this proposition is immediately seen to be true;falseotherwise.
-
isFalse
boolean isFalse()Check whether this proposition is evidently false.- Returns:
trueif this proposition is immediately seen to be false;falseotherwise.
-
score
int score()Returns a nonnegative measure of the syntactic complexity of this proposition.- Returns:
- the number of literal occurrences in this proposition
-
isSatisfiedBy
Checks whether this proposition is satisfied by a given solution.- Parameters:
solution- the solution to check for satisfaction- Returns:
trueif assuming that all literals insolutionare true entails that this proposition is true;falseotherwise.
-
isDisjunctionFree
boolean isDisjunctionFree()Checks whether this proposition is free of disjunctions.A disjunction-free proposition is satisfied by at most one solution that uses the same propositional variables.
- Returns:
trueif this proposition is free of disjunctions
-