forge.translate
Class HybridStrategy

java.lang.Object
  extended by forge.translate.HybridStrategy
All Implemented Interfaces:
SEStrategy

public final class HybridStrategy
extends java.lang.Object
implements SEStrategy

A translator that inlines for updates but adds constraints for branches

Author:
Greg Dennis (gdennis@mit.edu)

Field Summary
static HybridStrategy STRATEGY
           
 
Method Summary
 kodkod.ast.Formula execute(SymbolicExecutor.AssignHook hook)
           
 kodkod.ast.Formula execute(SymbolicExecutor.CreateHook hook)
           
 kodkod.ast.Formula execute(SymbolicExecutor.SpecHook hook)
           
 edu.mit.csail.sdg.util.collections.Pair<kodkod.ast.Formula,kodkod.ast.Formula> merge(SymbolicExecutor.BranchHook hook, ForgeExpression.Modifiable mod, kodkod.ast.Expression thenExpr, kodkod.ast.Expression elseExpr)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

STRATEGY

public static final HybridStrategy STRATEGY
Method Detail

execute

public kodkod.ast.Formula execute(SymbolicExecutor.AssignHook hook)
Specified by:
execute in interface SEStrategy

execute

public kodkod.ast.Formula execute(SymbolicExecutor.CreateHook hook)
Specified by:
execute in interface SEStrategy

execute

public kodkod.ast.Formula execute(SymbolicExecutor.SpecHook hook)
Specified by:
execute in interface SEStrategy

merge

public edu.mit.csail.sdg.util.collections.Pair<kodkod.ast.Formula,kodkod.ast.Formula> merge(SymbolicExecutor.BranchHook hook,
                                                                                            ForgeExpression.Modifiable mod,
                                                                                            kodkod.ast.Expression thenExpr,
                                                                                            kodkod.ast.Expression elseExpr)
Specified by:
merge in interface SEStrategy

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object