forge.translate
Class ForgeTranslation

java.lang.Object
  extended by forge.translate.ForgeTranslation

public final class ForgeTranslation
extends java.lang.Object

A translation of a Forge procedure to Kodkod.

Author:
Greg Dennis (gdennis@mit.edu)

Method Summary
 java.util.List<kodkod.ast.Formula> assumes()
          Returns the set of assume constraints accumulated across the translation.
 Environment finalEnv()
          Returns the final environment.
 Environment initialEnv()
          Returns the initial environment.
 RelationalModel model()
           
 ForgeProgram program()
           
 StmtSet slice(ForgeExpression.Modifiable mod)
          Returns the set of statements that impact the given modifiable.
 StmtSet slice(kodkod.ast.Formula assume)
          Returns the set of statements responsible for the given assume formula.
static ForgeTranslation translate(SEStrategy strategy, ForgeCFG cfg, boolean logSlices)
          Translates the given cfg to Kodkod, logging the slice information iff the logSlices flag is true.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

translate

public static ForgeTranslation translate(SEStrategy strategy,
                                         ForgeCFG cfg,
                                         boolean logSlices)
Translates the given cfg to Kodkod, logging the slice information iff the logSlices flag is true.


program

public ForgeProgram program()

model

public RelationalModel model()

initialEnv

public Environment initialEnv()
Returns the initial environment.


finalEnv

public Environment finalEnv()
Returns the final environment.


assumes

public java.util.List<kodkod.ast.Formula> assumes()
Returns the set of assume constraints accumulated across the translation.


slice

public StmtSet slice(kodkod.ast.Formula assume)
Returns the set of statements responsible for the given assume formula.


slice

public StmtSet slice(ForgeExpression.Modifiable mod)
Returns the set of statements that impact the given modifiable.