Package org.tweetyproject.arg.aba.syntax
Class InferenceRule<T extends Formula>
- java.lang.Object
-
- org.tweetyproject.arg.aba.syntax.AbaElement<T>
-
- org.tweetyproject.arg.aba.syntax.AbaRule<T>
-
- org.tweetyproject.arg.aba.syntax.InferenceRule<T>
-
- Type Parameters:
T- is the type of the language that the ABA theory's rules range over
- All Implemented Interfaces:
Formula,Rule<T,T>,ComplexLogicalFormula,LogicStructure,SimpleLogicalFormula
public class InferenceRule<T extends Formula> extends AbaRule<T>
This class models an inference rule from an ABA theory.- Author:
- Nils Geilen (geilenn@uni-koblenz.de)
-
-
Constructor Summary
Constructors Constructor Description InferenceRule()
-
Method Summary
Modifier and Type Method Description voidaddPremise(T premise)Add the given premise to this rule.voidaddPremises(java.util.Collection<? extends T> premises)Add the given premises to this rule.InferenceRule<T>clone()Creates a deep copy of this formulabooleanequals(java.lang.Object obj)TgetConclusion()Returns the conclusion of this rule.java.util.Set<? extends Predicate>getPredicates()Processes the set of all predicates which appear in this formulajava.util.Collection<? extends T>getPremise()Returns the premise of this rule.SignaturegetSignature()Returns the signature of the language of this formula.java.util.Set<Term<?>>getTerms()<C extends Term<?>>
java.util.Set<C>getTerms(java.lang.Class<C> cls)Processes the set containing all terms of type C.inthashCode()booleanisAssumption()booleanisConstraint()booleanisFact()voidsetConclusion(T conclusion)Set the conclusion of this rule.AbaElement<T>substitute(Term<?> v, Term<?> t)Substitutes all occurrences of term "v" in this formula by term "t" and returns the new formula.java.lang.StringtoString()-
Methods inherited from class org.tweetyproject.arg.aba.syntax.AbaElement
allGroundInstances, allSubstitutions, containsTermsOfType, exchange, getAtoms, getPredicateCls, getUnboundVariables, isGround, isLiteral, isWellFormed, substitute
-
-
-
-
Method Detail
-
isFact
public boolean isFact()
-
isConstraint
public boolean isConstraint()
-
setConclusion
public void setConclusion(T conclusion)
Description copied from interface:RuleSet the conclusion of this rule.- Parameters:
conclusion- some formula
-
addPremise
public void addPremise(T premise)
Description copied from interface:RuleAdd the given premise to this rule.- Parameters:
premise- some formula
-
addPremises
public void addPremises(java.util.Collection<? extends T> premises)
Description copied from interface:RuleAdd the given premises to this rule.- Parameters:
premises- some formulas
-
getSignature
public Signature getSignature()
Description copied from interface:FormulaReturns the signature of the language of this formula.- Returns:
- the signature of the language of this formula.
-
getPremise
public java.util.Collection<? extends T> getPremise()
Description copied from interface:RuleReturns the premise of this rule.- Returns:
- the premise of this rule.
-
getConclusion
public T getConclusion()
Description copied from interface:RuleReturns the conclusion of this rule.- Returns:
- the conclusion of this rule.
-
isAssumption
public boolean isAssumption()
- Specified by:
isAssumptionin classAbaRule<T extends Formula>- Returns:
- whether this rule is an assumption
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfaceSimpleLogicalFormula- Overrides:
hashCodein classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Specified by:
equalsin interfaceSimpleLogicalFormula- Overrides:
equalsin classjava.lang.Object
-
getPredicates
public java.util.Set<? extends Predicate> getPredicates()
Description copied from interface:SimpleLogicalFormulaProcesses the set of all predicates which appear in this formula- Returns:
- all predicates that appear in this formula
-
getTerms
public java.util.Set<Term<?>> getTerms()
- Returns:
- a set containing all terms of this logical structure
-
getTerms
public <C extends Term<?>> java.util.Set<C> getTerms(java.lang.Class<C> cls)
Description copied from interface:LogicStructureProcesses the set containing all terms of type C. This method uses the equals method of the given Class and therefore does not add terms which are sub classes of type C to the set.- Type Parameters:
C- the type of terms- Parameters:
cls- The Class structure containing type information about the searched term- Returns:
- A set containing all terms of type C of this logical structure
-
clone
public InferenceRule<T> clone()
Description copied from interface:SimpleLogicalFormulaCreates a deep copy of this formula- Specified by:
clonein interfaceComplexLogicalFormula- Specified by:
clonein interfaceSimpleLogicalFormula- Specified by:
clonein classAbaElement<T extends Formula>- Returns:
- the cloned formula
-
substitute
public AbaElement<T> substitute(Term<?> v, Term<?> t) throws java.lang.IllegalArgumentException
Description copied from interface:ComplexLogicalFormulaSubstitutes all occurrences of term "v" in this formula by term "t" and returns the new formula.- Specified by:
substitutein interfaceComplexLogicalFormula- Specified by:
substitutein classAbaElement<T extends Formula>- Parameters:
v- the term to be substituted.t- the term to substitute.- Returns:
- a formula where every occurrence of "v" is replaced by "t".
- Throws:
java.lang.IllegalArgumentException- if "v" and "t" are of different sorts
-
-