public class DefeasibleRule extends DelpRule
Constructor and Description |
---|
DefeasibleRule(FolFormula head,
java.util.Set<FolFormula> body)
Initializes the defeasible rule with the given parameters
|
Modifier and Type | Method and Description |
---|---|
RelationalFormula |
clone()
Creates a deep copy of this formula
|
(package private) java.lang.String |
getSymbol() |
RelationalFormula |
substitute(Term<?> v,
Term<?> t)
Substitutes all occurrences of term "v" in this formula
by term "t" and returns the new formula.
|
StrictRule |
toStrictRule()
returns the translation of this rule as a strict rule
|
addPremise, addPremises, combineWithAnd, combineWithOr, complement, containsQuantifier, equals, getAtoms, getConclusion, getFunctors, getPredicates, getPremise, getQuantifierVariables, getTerms, getTerms, getUnboundVariables, getUniformProbability, hashCode, isApplicable, isClosed, isClosed, isConstraint, isFact, isGround, isLiteral, isWellBound, isWellBound, setConclusion, toString
allGroundInstances, allSubstitutions, containsTermsOfType, exchange, getFormula, getPredicateCls, getSatisfactionRatio, getSignature, isWellFormed, substitute
finalize, getClass, notify, notifyAll, wait, wait, wait
getSignature
public DefeasibleRule(FolFormula head, java.util.Set<FolFormula> body)
head
- a literalbody
- a set of literalspublic StrictRule toStrictRule()
public RelationalFormula substitute(Term<?> v, Term<?> t) throws java.lang.IllegalArgumentException
RelationalFormula
substitute
in interface ComplexLogicalFormula
substitute
in class DelpRule
v
- the term to be substituted.t
- the term to substitute.java.lang.IllegalArgumentException
- if "v" and "t" are of different sorts
(NOTE: this exception is only thrown when "v" actually appears in this
formula).public RelationalFormula clone()
SimpleLogicalFormula
clone
in interface ComplexLogicalFormula
clone
in interface SimpleLogicalFormula
clone
in class RelationalFormula