Class DynamicLaw
- java.lang.Object
-
- net.sf.tweety.action.description.syntax.CLaw
-
- net.sf.tweety.action.description.syntax.DynamicLaw
-
public class DynamicLaw extends CLaw
A dynamic law in C has the form caused F if G after U where F is a propositional formula over the set of fluent names (called headFormula) G is a propositional formula over the set of fluent names (called ifFormula) U is a propositional formula over the set of fluent names and the set of action names (called afterFormula)- Author:
- wutsch
-
-
Field Summary
Fields Modifier and Type Field Description protected FolFormula
afterFormula
-
Fields inherited from class net.sf.tweety.action.description.syntax.CLaw
headFormula, ifFormula, requirements
-
-
Constructor Summary
Constructors Constructor Description DynamicLaw()
Constructs a new empty dynamic law.DynamicLaw(FolFormula headFormula, FolFormula afterFormula)
Creates a new dynamic law of the form caused headFormula after afterFormulaDynamicLaw(FolFormula headFormula, FolFormula afterFormula, java.util.Set<GroundingRequirement> requirements)
Creates a new dynamic law of the form caused headFormula after afterFormula requires requirementsDynamicLaw(FolFormula headFormula, FolFormula ifFormula, FolFormula afterFormula)
Creates a new dynamic law of the form: caused headFormula if ifFormula after afterFormulaDynamicLaw(FolFormula headFormula, FolFormula ifFormula, FolFormula afterFormula, java.util.Set<GroundingRequirement> requirements)
Creates a new dynamic law of the form: caused headFormula if ifFormula after afterFormula requires requirements
-
Method Summary
Modifier and Type Method Description FolFormula
getAfterFormula()
Returns the afterFormula of this causal law.java.util.Set<CLaw>
getAllGrounded()
Returns the set of all grounded instances of this causal law.java.util.Set<FolAtom>
getAtoms()
Returns the set of propositions in all formulas in this law.java.util.Set<FolFormula>
getFormulas()
Returns the set of formulas contained in this causal law, e.g.Signature
getSignature()
Returns the signature of the language of this formula.boolean
isDefinite()
Returns true iff this law is definite.private void
setAfterFormula(FolFormula afterFormula)
Sets the afterFormula of this causal lawjava.util.Set<CLaw>
toDefinite()
Returns an equivalent definite causal law.java.lang.String
toString()
-
Methods inherited from class net.sf.tweety.action.description.syntax.CLaw
addGroundingRequirement, getHeadFormula, getIfFormula, isConjunctiveClause, isGround, isValidDefiniteHead
-
-
-
-
Field Detail
-
afterFormula
protected FolFormula afterFormula
-
-
Constructor Detail
-
DynamicLaw
public DynamicLaw()
Constructs a new empty dynamic law.
-
DynamicLaw
public DynamicLaw(FolFormula headFormula, FolFormula ifFormula, FolFormula afterFormula)
Creates a new dynamic law of the form: caused headFormula if ifFormula after afterFormula- Parameters:
headFormula
- some FOL formulaifFormula
- some FOL formulaafterFormula
- some FOL formula
-
DynamicLaw
public DynamicLaw(FolFormula headFormula, FolFormula ifFormula, FolFormula afterFormula, java.util.Set<GroundingRequirement> requirements)
Creates a new dynamic law of the form: caused headFormula if ifFormula after afterFormula requires requirements- Parameters:
headFormula
- some FOL formulaifFormula
- some FOL formulaafterFormula
- some FOL formularequirements
- a set of requirements
-
DynamicLaw
public DynamicLaw(FolFormula headFormula, FolFormula afterFormula)
Creates a new dynamic law of the form caused headFormula after afterFormula- Parameters:
headFormula
- some FOL formulaafterFormula
- some FOL formula
-
DynamicLaw
public DynamicLaw(FolFormula headFormula, FolFormula afterFormula, java.util.Set<GroundingRequirement> requirements)
Creates a new dynamic law of the form caused headFormula after afterFormula requires requirements- Parameters:
headFormula
- some FOL formulaafterFormula
- some FOL formularequirements
- a set of requirements
-
-
Method Detail
-
setAfterFormula
private void setAfterFormula(FolFormula afterFormula)
Sets the afterFormula of this causal law- Parameters:
afterFormula
- The new afterFormula of this causal law.
-
getAfterFormula
public FolFormula getAfterFormula()
Returns the afterFormula of this causal law.- Returns:
- the afterFormula of this causal law.
-
isDefinite
public boolean isDefinite()
Description copied from class:CLaw
Returns true iff this law is definite. A causal law is definite if it's head is a literal or a contradiction and all formulas are conjunctions of literals.- Specified by:
isDefinite
in classCLaw
- Returns:
- true, if this law is definite, false otherwise.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
getSignature
public Signature getSignature()
Description copied from interface:Formula
Returns the signature of the language of this formula.- Specified by:
getSignature
in interfaceFormula
- Specified by:
getSignature
in classCLaw
- Returns:
- the signature of the language of this formula.
-
getAtoms
public java.util.Set<FolAtom> getAtoms()
Description copied from class:CLaw
Returns the set of propositions in all formulas in this law.
-
toDefinite
public java.util.Set<CLaw> toDefinite()
Description copied from class:CLaw
Returns an equivalent definite causal law. A causal law is definite if it's head is a literal or a contradiction and all formulas are conjunctions of literals.- Specified by:
toDefinite
in classCLaw
- Returns:
- the equivalent definite causal law if one exists.
-
getAllGrounded
public java.util.Set<CLaw> getAllGrounded()
Description copied from class:CLaw
Returns the set of all grounded instances of this causal law.- Specified by:
getAllGrounded
in classCLaw
- Returns:
- the set of all grounded instances of this causal law.
-
getFormulas
public java.util.Set<FolFormula> getFormulas()
Description copied from class:CLaw
Returns the set of formulas contained in this causal law, e.g. in a static law, this contains the head formula and the if formula.- Specified by:
getFormulas
in classCLaw
- Returns:
- the set of formulas contained in this causal law.
-
-