Class QueryProposition

All Implemented Interfaces:
Comparable<Proposition>, Formula, Atom, ClassicalFormula, Conjunctable, Disjunctable, Invertable, ProbabilityAware, SimpleLogicalFormula
Direct Known Subclasses:
AlwaysQuery, HoldsQuery, NecessarilyQuery

public abstract class QueryProposition extends Proposition
Action queries are represented as propositional formulas with three possible types of propositions: "holds", "always" and "necessarily" propositions. This class holds the common functionality of all these propositions.
Author:
Sebastian Homann
  • Constructor Details

    • QueryProposition

      public QueryProposition(FolFormula formula, String name)
      Creates a new query proposition with the given formula and a unique name, which is used by the base class.
      Parameters:
      formula - a state formula.
      name - a unique name.
  • Method Details

    • getInnerFormula

      public FolFormula getInnerFormula()
      Returns the inner formula of this query proposition, e.g. "F" in the case of a holds F proposition.
      Returns:
      the inner formula of this query proposition
    • getActionSignature

      public ActionSignature getActionSignature()
      Returns a new action signature containing all symbols of the inner formula of this proposition.
      Returns:
      a new action signature containing all symbols of the inner formula of this proposition.
    • getInnerActions

      public abstract Set<FolAction> getInnerActions()
      Returns the set of all actions contained in this query proposition. This is mainly a convenience function, as only necessarily propositions contain any actions.
      Returns:
      the set of all actions contained in this query proposition.
    • substitute

      public abstract QueryProposition substitute(Map<? extends Term<?>,? extends Term<?>> map)
      Returns a new query proposition of the same type, in which all variables in inner formulas and actions are replaced according to the given map.
      Parameters:
      map - a map from variables to constants.
      Returns:
      a new query proposition.
    • toString

      public abstract String toString()
      Overrides:
      toString in class Proposition
    • getVariables

      public abstract Set<Variable> getVariables()
      Returns:
      all variables occurring in inner formulas and actions of this query proposition.