Interface Formula

All Known Subinterfaces:
ArrayFormula<TI,TE>, BitvectorFormula, BooleanFormula, EnumerationFormula, FloatingPointFormula, FloatingPointRoundingModeFormula, NumeralFormula, NumeralFormula.IntegerFormula, NumeralFormula.RationalFormula, RegexFormula, StringFormula

@Immutable public interface Formula
An arbitrary SMT formula.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    equals(Object other)
    checks whether the other object is a formula of the same structure.
    int
    returns a valid hashCode satisfying the constraints given by equals(java.lang.Object).
    returns an arbitrary representation of the formula, might be human- or machine-readable.
  • Method Details

    • toString

      String toString()
      returns an arbitrary representation of the formula, might be human- or machine-readable.

      We do not guarantee that the returned String is in any way related to the formula. The solver might apply escaping or even un-escaping. A user should not use the returned String for further processing. For analyzing formulas, we recommend using a FormulaVisitor.

      Overrides:
      toString in class Object
    • equals

      boolean equals(Object other)
      checks whether the other object is a formula of the same structure. Does not apply an expensive SAT-check to check equisatisfiability.

      Two formulas that are structured in the same way, are determined as "equal". Due to transformations and simplifications, two equisatisfiable formulas with different structure might not be determined as "equal".

      Overrides:
      equals in class Object
    • hashCode

      int hashCode()
      returns a valid hashCode satisfying the constraints given by equals(java.lang.Object).
      Overrides:
      hashCode in class Object