|
ESC/Java2 © 2003,2004,2005,2006 David Cok and Joseph Kiniry © 2005,2006 UCD Dublin © 2003,2004 Radboud University Nijmegen © 1999,2000 Compaq Computer Corporation © 1997,1998,1999 Digital Equipment Corporation All Rights Reserved |
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectescjava.vcGeneration.ProverType
escjava.vcGeneration.sammy.SammyProver
| Constructor Summary | |
SammyProver()
|
|
| Method Summary | |
Expr |
addTypeInfo(InitialState initState,
Expr tree)
This method is used by untyped prover logics to add typing predicates to the supplied VC term. |
void |
generateDeclarations(java.io.Writer s,
java.util.HashMap variablesName)
This methods generates the declarations for a specified prover. |
void |
getProof(java.io.Writer out,
java.lang.String proofName,
TNode term)
This method allows a VC term (generated by using the visitor pattern), for example, to: be wrapped up as a prover assertion (eg. a lemma or theorem for the prover) universally quantify all free variables in the VC term |
java.lang.String |
getTypeInfo(TypeInfo caller)
TypeInfo represents a single translation/mapping between an old
type name and the targeted prover type name.
|
java.lang.String |
getVariableInfo(VariableInfo caller)
VariableInfo represents a single translation/mapping between an old
variable name and the targeted prover variable name.
|
void |
init()
Used to initialise the variable and type maps. |
java.lang.String |
labelRename(java.lang.String label)
This method is used to provide prover based renaming of the VC file name. |
TNode |
rewrite(TNode tree)
This method allows an ESC/Java VC term to be simplified before it is translated to the target prover. |
private void |
sammyRename(TypeInfo caller)
|
private void |
sammyRename(VariableInfo caller)
|
TVisitor |
visitor(java.io.Writer out)
The visitor pattern is used to map an ESC/Java VC term to a prover term. |
| Methods inherited from class escjava.vcGeneration.ProverType |
generateDeclarations, generateTerm |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public SammyProver()
| Method Detail |
public java.lang.String labelRename(java.lang.String label)
ProverType
labelRename in class ProverTypelabel - The method based label that needs to be renamed.
public TVisitor visitor(java.io.Writer out)
throws java.io.IOException
ProverTypevcGenerator uses this method to perform the mapping.
A typical implementation of this method will also need to extend the TVisitor class.
visitor in class ProverTypeout - The stream to which we should write our visitor trail
java.io.IOException
public void getProof(java.io.Writer out,
java.lang.String proofName,
TNode term)
throws java.io.IOException
ProverType
getProof in class ProverTypeproofName - name to be given to the proof assertion (eg. lemma or theorem)
java.io.IOExceptionpublic java.lang.String getVariableInfo(VariableInfo caller)
ProverTypeVariableInfo represents a single translation/mapping between an old
variable name and the targeted prover variable name.
This method returns the target prover's variable name given one of these translations/mapplets.
getVariableInfo in class ProverTypecaller - The specific variable name translation/mapplet we are to use.
private void sammyRename(VariableInfo caller)
public java.lang.String getTypeInfo(TypeInfo caller)
ProverTypeTypeInfo represents a single translation/mapping between an old
type name and the targeted prover type name.
This method returns the target prover's type name given one of these translations/mapplets.
getTypeInfo in class ProverTypecaller - The specific type name translation/mapplet we are to use.
private void sammyRename(TypeInfo caller)
public void init()
ProverType
init in class ProverType
public Expr addTypeInfo(InitialState initState,
Expr tree)
ProverTypeTyped prover logics do not need to do anything here.
addTypeInfo in class ProverTypetree - the VC term to which typing predicates may need to be added.
public TNode rewrite(TNode tree)
ProverType
rewrite in class ProverTypetree - a VC term to be simplified
public void generateDeclarations(java.io.Writer s,
java.util.HashMap variablesName)
throws java.io.IOException
ProverType
generateDeclarations in class ProverTypes - The buffer to which we want to generate the declarations to.variablesName - The hashmap containing all the variables, usually TNode.variablesName.
java.io.IOException
|
ESC/Java2 © 2003,2004,2005,2006 David Cok and Joseph Kiniry © 2005,2006 UCD Dublin © 2003,2004 Radboud University Nijmegen © 1999,2000 Compaq Computer Corporation © 1997,1998,1999 Digital Equipment Corporation All Rights Reserved |
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||