Class QuantifiedFormulaSupport<T extends RelationalFormula>

  • Type Parameters:
    T - The type of the formulas which are quantified.

    public class QuantifiedFormulaSupport<T extends RelationalFormula>
    extends java.lang.Object
    This class provides common functionalities for quantified formulas, i.e. forall and exists quantified formulas.
    Author:
    Matthias Thimm, Anna Gessler
    • Constructor Detail

      • QuantifiedFormulaSupport

        public QuantifiedFormulaSupport​(T formula,
                                        java.util.Set<Variable> variables)
    • Method Detail

      • getFormula

        public T getFormula()
        Returns the folFormula this quantified formula ranges over
        Returns:
        the folFormula this quantified formula ranges over
      • getQuantifierVariables

        public java.util.Set<Variable> getQuantifierVariables()
        Returns the variables of this quantified formula.
        Returns:
        the variables of this quantified formula.
      • setFormula

        public void setFormula​(T formula)
      • setQuantifierVariables

        public void setQuantifierVariables​(java.util.Set<Variable> variables)
      • isClosed

        public boolean isClosed()
      • isClosed

        public boolean isClosed​(java.util.Set<Variable> boundVariables)
      • containsQuantifier

        public boolean containsQuantifier()
      • isWellBound

        public boolean isWellBound()
      • isWellBound

        public boolean isWellBound​(java.util.Set<Variable> boundVariables)
      • getPredicates

        public java.util.Set<? extends Predicate> getPredicates()
      • getFunctors

        public java.util.Set<Functor> getFunctors()
      • getAtoms

        public java.util.Set<? extends Atom> getAtoms()
      • getUnboundVariables

        public java.util.Set<Variable> getUnboundVariables()
      • isDnf

        public boolean isDnf()
      • isLiteral

        public boolean isLiteral()
      • getTerms

        public java.util.Set<Term<?>> getTerms()
      • getTerms

        public <C extends Term<?>> java.util.Set<C> getTerms​(java.lang.Class<C> cls)
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object