TFormulaInfo - The solver specific type.TFunctionDecl - The solver specific type of declarations of any function applicationTType - The solver specific type of formula-types.public abstract class AbstractUFManager<TFormulaInfo,TFunctionDecl,TType,TEnv> extends Object implements UFManager
| Modifier and Type | Field and Description |
|---|---|
protected FormulaCreator<TFormulaInfo,TType,TEnv,TFuncDecl> |
formulaCreator |
| Modifier | Constructor and Description |
|---|---|
protected |
AbstractUFManager(FormulaCreator<TFormulaInfo,TType,TEnv,TFunctionDecl> pCreator) |
| Modifier and Type | Method and Description |
|---|---|
<T extends Formula> |
callUF(FunctionDeclaration<T> funcType,
Formula... args) |
<T extends Formula> |
callUF(FunctionDeclaration<T> pFunc,
List<? extends Formula> pArgs)
Create an uninterpreted function call.
|
<T extends Formula> |
declareAndCallUF(String name,
FormulaType<T> pReturnType,
Formula... pArgs) |
<T extends Formula> |
declareAndCallUF(String name,
FormulaType<T> pReturnType,
List<Formula> pArgs)
Declares and calls an uninterpreted function with exactly the given name.
|
<T extends Formula> |
declareUF(String pName,
FormulaType<T> pReturnType,
FormulaType<?>... pArgs)
Declare an uninterpreted function.
|
<T extends Formula> |
declareUF(String pName,
FormulaType<T> pReturnType,
List<FormulaType<?>> pArgTypes)
Declare an uninterpreted function.
|
protected FormulaCreator<TFormulaInfo,TType,TEnv,TFuncDecl> |
getFormulaCreator() |
protected TType |
toSolverType(FormulaType<?> formulaType) |
protected final FormulaCreator<TFormulaInfo,TType,TEnv,TFuncDecl> formulaCreator
protected AbstractUFManager(FormulaCreator<TFormulaInfo,TType,TEnv,TFunctionDecl> pCreator)
public final <T extends Formula> FunctionDeclaration<T> declareUF(String pName, FormulaType<T> pReturnType, List<FormulaType<?>> pArgTypes)
UFManagerpublic <T extends Formula> FunctionDeclaration<T> declareUF(String pName, FormulaType<T> pReturnType, FormulaType<?>... pArgs)
UFManagerpublic <T extends Formula> T callUF(FunctionDeclaration<T> funcType, Formula... args)
callUF in interface UFManagerUFManager.callUF(FunctionDeclaration, List)public final <T extends Formula> T callUF(FunctionDeclaration<T> pFunc, List<? extends Formula> pArgs)
UFManagerSimply delegates to FormulaManager.makeApplication(FunctionDeclaration, List)
public <T extends Formula> T declareAndCallUF(String name, FormulaType<T> pReturnType, List<Formula> pArgs)
UFManagerPlease make sure that the given name is valid in SMT-LIB2. Take a look at FormulaManager.isValidName(java.lang.String) for further information.
This method does not quote or unquote the given name, but uses the plain name "AS IS".
Formula.toString() can return a different String than the given one.
declareAndCallUF in interface UFManagerpublic <T extends Formula> T declareAndCallUF(String name, FormulaType<T> pReturnType, Formula... pArgs)
declareAndCallUF in interface UFManagerUFManager.declareAndCallUF(String, FormulaType, List)protected final FormulaCreator<TFormulaInfo,TType,TEnv,TFuncDecl> getFormulaCreator()
protected final TType toSolverType(FormulaType<?> formulaType)