public abstract class QuantifiedFormula extends FolFormula
Modifier and Type | Field and Description |
---|---|
private FolFormula |
folFormula
The folFormula this quantified folFormula ranges over.
|
private java.util.Set<Variable> |
quantifier_variables
The variables of this quantified folFormula.
|
Constructor and Description |
---|
QuantifiedFormula(FolFormula folFormula,
Variable variable)
Creates a new quantified folFormula with the given folFormula and variable.
|
QuantifiedFormula(RelationalFormula folFormula,
java.util.Set<Variable> variables)
Creates a new quantified folFormula with the given folFormula and variables.
|
Modifier and Type | Method and Description |
---|---|
boolean |
containsQuantifier()
Checks whether this formula contains any quantification.
|
boolean |
equals(java.lang.Object obj) |
java.util.Set<FOLAtom> |
getAtoms()
Processes the set of all atoms which appear in this formula
|
FolFormula |
getFormula()
Returns the folFormula this quantified folFormula ranges over
|
java.util.Set<Functor> |
getFunctors() |
java.util.Set<? extends Predicate> |
getPredicates()
Processes the set of all predicates which appear in this
formula
|
java.util.Set<QuantifiedFormula> |
getQuantifiedFormulas() |
java.util.Set<Variable> |
getQuantifierVariables()
Returns the variables of this quantified folFormula.
|
java.util.Set<Term<?>> |
getTerms() |
<C extends Term<?>> |
getTerms(java.lang.Class<C> cls)
Processes the set containing all terms of type C.
|
java.util.Set<Variable> |
getUnboundVariables() |
int |
hashCode() |
boolean |
isClosed()
Checks whether this formula is closed, i.e.
|
boolean |
isClosed(java.util.Set<Variable> boundVariables)
Checks whether this formula is closed, i.e.
|
boolean |
isDnf()
Checks whether this formula is in disjunctive normal form.
|
boolean |
isLiteral() |
boolean |
isWellBound()
Checks whether this formula is well-bound, i.e.
|
boolean |
isWellBound(java.util.Set<Variable> boundVariables)
Checks whether this formula is well-bound, i.e.
|
clone, collapseAssociativeFormulas, combineWithAnd, combineWithOr, complement, getUniformProbability, substitute, toDnf, toNnf
allGroundInstances, allSubstitutions, containsTermsOfType, exchange, getPredicateCls, getSatisfactionRatio, getSignature, isGround, isWellFormed, substitute, toString
private FolFormula folFormula
private java.util.Set<Variable> quantifier_variables
public QuantifiedFormula(RelationalFormula folFormula, java.util.Set<Variable> variables)
folFormula
- the folFormula this quantified folFormula ranges over.variables
- the variables of this quantified folFormula.public QuantifiedFormula(FolFormula folFormula, Variable variable)
folFormula
- the folFormula this quantified folFormula ranges over.variable
- the variable of this quantified folFormula.public boolean isClosed()
QuantifiedFormula
public boolean isClosed(java.util.Set<Variable> boundVariables)
QuantifiedFormula
boundVariables
- the variables assumed to be bound.public boolean containsQuantifier()
QuantifiedFormula
public boolean isWellBound()
QuantifiedFormula
public boolean isWellBound(java.util.Set<Variable> boundVariables)
QuantifiedFormula
boundVariables
- the variables assumed to be bound.public java.util.Set<? extends Predicate> getPredicates()
SimpleLogicalFormula
public java.util.Set<Functor> getFunctors()
getFunctors
in class RelationalFormula
public java.util.Set<FOLAtom> getAtoms()
SimpleLogicalFormula
getAtoms
in interface SimpleLogicalFormula
getAtoms
in class RelationalFormula
public java.util.Set<Variable> getUnboundVariables()
public FolFormula getFormula()
getFormula
in interface QuantifiedFormula
getFormula
in class RelationalFormula
public java.util.Set<Variable> getQuantifierVariables()
getQuantifierVariables
in interface QuantifiedFormula
getQuantifierVariables
in class FolFormula
public java.util.Set<QuantifiedFormula> getQuantifiedFormulas()
public boolean isDnf()
FolFormula
isDnf
in class FolFormula
public boolean isLiteral()
public java.util.Set<Term<?>> getTerms()
public <C extends Term<?>> java.util.Set<C> getTerms(java.lang.Class<C> cls)
LogicStructure
cls
- The Class structure containing type information about the
searched termpublic int hashCode()
hashCode
in interface SimpleLogicalFormula
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object obj)
equals
in interface SimpleLogicalFormula
equals
in class java.lang.Object