Package net.sf.tweety.action.signature
Class ActionSignature
- java.lang.Object
-
- net.sf.tweety.commons.QuadrupleSetSignature<Constant,Predicate,Functor,Sort>
-
- net.sf.tweety.logics.fol.syntax.FolSignature
-
- net.sf.tweety.action.signature.ActionSignature
-
- All Implemented Interfaces:
java.lang.Cloneable
,Signature
public class ActionSignature extends FolSignature
This class represents an action signature consisting of a set of fluent names and a set of action names. These are represented by first order predicates to allow for the simple implementation of a grounding mechanism.- Author:
- Sebastian Homann
-
-
Constructor Summary
Constructors Constructor Description ActionSignature()
Creates an empty signatureActionSignature(java.util.Collection<?> c)
Creates a signature with the given objects (should be sorts, constants, predicates or formulas).ActionSignature(FolFormula f)
Creates a new Action Signature for a single first order formula.
-
Method Summary
Modifier and Type Method Description boolean
containsActionName(java.lang.String actionName)
Returns true iff the given actionName is contained in this action signature.boolean
containsActionName(FolActionName actionName)
Returns true iff the given actionName is contained in this signature.boolean
containsFluentName(java.lang.String fluentName)
Returns true iff the given fluentName is contained in this action signature.boolean
containsFluentName(FolFluentName fluentName)
Returns true iff the given fluentName is contained in this signature.boolean
containsPredicate(Predicate predicate)
Returns true iff the given predicate is contained in this signature.FolActionName
getActionName(java.lang.String action)
Returns the action name predicate with the given name if one exists, null otherwise.java.util.Set<FolActionName>
getActionNames()
Returns the set of action names contained in this action signature.java.util.Set<FolAtom>
getAllGroundedActionNameAtoms()
Returns the set of all possible grounded atoms in this signature on the basis of all action name predicates contained.java.util.Set<FolAtom>
getAllGroundedFluentAtoms()
Returns the set of all possible grounded atoms in this signature on the basis of all fluent predicates contained.FolFluentName
getFluentName(java.lang.String fluentName)
Returns the fluent name predicate with the given name if one exists, null otherwise.java.util.Set<FolFluentName>
getFluentNames()
Returns the set of fluent names contained in this action signature.boolean
isValidFormula(Formula f)
Checks, if a given formula is valid in the sense of an action description, containing only predicates that are either fluentnames or actionnames and containing neither quantifiers nor functions.java.lang.String
toString()
Returns a string representation of this first-order logic signature.-
Methods inherited from class net.sf.tweety.logics.fol.syntax.FolSignature
add, addAll, clone, contains, containsConstant, containsFunctor, containsPredicate, containsSort, getConstant, getConstants, getFunctor, getFunctors, getPredicate, getPredicates, getSort, getSorts, isRepresentable, remove
-
Methods inherited from class net.sf.tweety.commons.QuadrupleSetSignature
add, addSignature, clear, equals, hashCode, isEmpty, isOverlappingSignature, isSubSignature, removeAll
-
-
-
-
Constructor Detail
-
ActionSignature
public ActionSignature()
Creates an empty signature
-
ActionSignature
public ActionSignature(java.util.Collection<?> c) throws java.lang.IllegalArgumentException
Creates a signature with the given objects (should be sorts, constants, predicates or formulas).- Parameters:
c
- a collection of items to be added.- Throws:
java.lang.IllegalArgumentException
- if at least one of the given objects is neither a constant, a sort, a predicate or a formula.
-
ActionSignature
public ActionSignature(FolFormula f)
Creates a new Action Signature for a single first order formula.- Parameters:
f
- a FOL formula
-
-
Method Detail
-
getActionNames
public java.util.Set<FolActionName> getActionNames()
Returns the set of action names contained in this action signature.- Returns:
- the set of action names contained in this action signature.
-
getFluentNames
public java.util.Set<FolFluentName> getFluentNames()
Returns the set of fluent names contained in this action signature.- Returns:
- the set of fluent names contained in this action signature.
-
isValidFormula
public boolean isValidFormula(Formula f)
Checks, if a given formula is valid in the sense of an action description, containing only predicates that are either fluentnames or actionnames and containing neither quantifiers nor functions.- Parameters:
f
- the formula in question.- Returns:
- true iff the given formula is a FolFormula, contains only atoms with fluent or action-predicates and contains no quantifiers or functors.
-
toString
public java.lang.String toString()
Description copied from class:FolSignature
Returns a string representation of this first-order logic signature.- Specified by:
toString
in interfaceSignature
- Overrides:
toString
in classFolSignature
- Returns:
- a string consisting of the sorts with their constants followed by the predicates and functors of the signature.
-
containsActionName
public boolean containsActionName(java.lang.String actionName)
Returns true iff the given actionName is contained in this action signature.- Parameters:
actionName
- an action name- Returns:
- true iff actionName is contained in this signature.
-
containsFluentName
public boolean containsFluentName(java.lang.String fluentName)
Returns true iff the given fluentName is contained in this action signature.- Parameters:
fluentName
- a fluent name- Returns:
- true iff fluentName is contained in this action signature.
-
getActionName
public FolActionName getActionName(java.lang.String action)
Returns the action name predicate with the given name if one exists, null otherwise.- Parameters:
action
- an action- Returns:
- the actionName predicate with the given name or null
-
getFluentName
public FolFluentName getFluentName(java.lang.String fluentName)
Returns the fluent name predicate with the given name if one exists, null otherwise.- Parameters:
fluentName
- a string- Returns:
- the fluent predicate with the given name or null
-
containsActionName
public boolean containsActionName(FolActionName actionName)
Returns true iff the given actionName is contained in this signature.- Parameters:
actionName
- a FOL action name- Returns:
- true iff the given actionName is contained in this signature.
-
containsFluentName
public boolean containsFluentName(FolFluentName fluentName)
Returns true iff the given fluentName is contained in this signature.- Parameters:
fluentName
- a string- Returns:
- true iff the given fluentName is contained in this signature.
-
containsPredicate
public boolean containsPredicate(Predicate predicate)
Returns true iff the given predicate is contained in this signature.- Parameters:
predicate
- some predicate- Returns:
- true iff the given predicate is contained in this signature.
-
getAllGroundedFluentAtoms
public java.util.Set<FolAtom> getAllGroundedFluentAtoms()
Returns the set of all possible grounded atoms in this signature on the basis of all fluent predicates contained.- Returns:
- the set of all possible grounded fluent atoms.
-
getAllGroundedActionNameAtoms
public java.util.Set<FolAtom> getAllGroundedActionNameAtoms()
Returns the set of all possible grounded atoms in this signature on the basis of all action name predicates contained.- Returns:
- the set of all possible grounded action atoms.
-
-