Package org.sosy_lab.java_smt.utils
Class UfElimination
- java.lang.Object
-
- org.sosy_lab.java_smt.utils.UfElimination
-
public class UfElimination extends Object
UfElimination replaces UFs by fresh variables and adds constraints to enforce the functional consistency.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classUfElimination.Result
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description BooleanFormulaeliminateUfs(BooleanFormula f)Applies the Ackermann transformation to the givenFormula.UfElimination.ResulteliminateUfs(BooleanFormula pF, UfElimination.Result pOtherResult)Applies the Ackermann transformation to the givenFormulawith respect to theUfElimination.Resultof another formula.
-
-
-
Method Detail
-
eliminateUfs
public BooleanFormula eliminateUfs(BooleanFormula f)
Applies the Ackermann transformation to the givenFormula. Quantified formulas are not supported.
-
eliminateUfs
public UfElimination.Result eliminateUfs(BooleanFormula pF, UfElimination.Result pOtherResult)
Applies the Ackermann transformation to the givenFormulawith respect to theUfElimination.Resultof another formula. Quantified formulas are not supported.- Parameters:
pF- theFormulato remove all Ufs frompOtherResult- result of eliminating Ufs in anotherBooleanFormula- Returns:
- the
UfElimination.Resultof the Ackermannization
-
-