Constructor and Description |
---|
CVCL(java.lang.String command,
State.ProverVersion version,
java.io.PrintWriter log,
boolean useMask)
Create CVCL instance by call of command
|
Modifier and Type | Method and Description |
---|---|
boolean |
abort()
Abort current prover activity.
|
void |
addDeclaration(Declaration decl)
Add declaration.
|
void |
assertAxiom(Expression axiom)
assert axiom about previously asserted declarations.
|
void |
assertFormula(Expression formula)
Assert truth of formula.
|
void |
generateCounterExamples(boolean generate)
generate counterexamples, if possible.
|
java.lang.String |
getError()
error message, if CVCL instance is not okay
|
static java.lang.String |
getExternalName(ValueDeclIdentifier ident)
create CVCL identifier from given name
|
java.lang.String |
getOriginalName(java.lang.String name)
Get original name from external CVCL name.
|
State.ProverVersion |
getVersion()
Get version of checker.
|
boolean |
isOkay()
true iff CVCL instance is okay
|
Declaration |
parseDeclaration(java.lang.String string)
Parse CVCL String as a declaration.
|
Expression |
parseExpression(java.lang.String string)
Parse CVCL String as an expression.
|
void |
popContext()
End subcontext for formula assertions.
|
void |
pushContext()
Start a new subcontext for formula assertions.
|
Answer |
queryFormula(Expression formula)
Query truth of formula.
|
void |
setError(java.lang.String message)
set error message
|
Expression |
simplifyExpression(Expression exp)
Simplify expression.
|
void |
terminate(boolean wait)
Terminate prover instance.
|
void |
tryHard(boolean hard)
Try hard to simplify (potentially timeconsuming).
|
Expression |
untransform(Expression exp)
Perform backward transformation performed by CVCLTransformer.
|
Expression |
untransformApplication(ApplicationExpression exp)
Get original value of function application.
|
Expression |
untransformReference(Reference exp)
Get original value of reference.
|
public CVCL(java.lang.String command, State.ProverVersion version, java.io.PrintWriter log, boolean useMask)
command
- command line string to invoke CVCLversion
- the CVC versionlog
- stream to log commands to (null, if none)useMask
- true iff quantified formulas are to be masked from CVCL.public static java.lang.String getExternalName(ValueDeclIdentifier ident)
ident
- an identifierpublic java.lang.String getOriginalName(java.lang.String name)
name
- a CVCL name (may be returned by getExternalName())public boolean isOkay()
public java.lang.String getError()
public void setError(java.lang.String message)
message
- the error messagepublic void generateCounterExamples(boolean generate)
generateCounterExamples
in interface Prover
generate
- true iff counterexamples are to be generatedpublic void tryHard(boolean hard)
public State.ProverVersion getVersion()
public void terminate(boolean wait)
public boolean abort()
public Expression parseExpression(java.lang.String string)
string
- the CVCL representation of an expression.public Declaration parseDeclaration(java.lang.String string)
string
- the CVCL representation of a declaration.public void addDeclaration(Declaration decl)
addDeclaration
in interface Prover
decl
- declaration that is added to prover state.public void pushContext()
pushContext
in interface Prover
public void popContext()
popContext
in interface Prover
public void assertAxiom(Expression axiom)
assertAxiom
in interface Prover
axiom
- formula whose truth is asserted;
declaration symbols must be only used in context of axiom.public void assertFormula(Expression formula)
assertFormula
in interface Prover
formula
- formula whose truth is asserted.public Answer queryFormula(Expression formula)
queryFormula
in interface Prover
formula
- formula whose truth is queried.public Expression simplifyExpression(Expression exp)
simplifyExpression
in interface Prover
exp
- expression to be simplified.public Expression untransform(Expression exp)
exp
- the transformed expression.public Expression untransformReference(Reference exp)
exp
- the referencepublic Expression untransformApplication(ApplicationExpression exp)
exp
- the application.