Inherits edu::mit::csail::sdg::squander::engine::kk::SquanderKodkodImpl.

Classes | |
| class | FldRelElem |
Public Member Functions | |
| SquanderKodkod2Impl () | |
Protected Member Functions | |
| Set< GlobalVariable > | getModsForPostState (ForgeConverter fconv, SpecCase sc) |
| ForgeExpression | getPreSpec (SpecCase cs) |
| ForgeExpression | getPostSpec (SpecCase cs, ForgeConverter fconv) |
| Formula | convertSpec (ForgeExpression spec) |
| IEvaluator | getEval (Iterator< Solution > solutions) |
| void | init () |
| void | createRelations () |
| void | addRelForVar (ForgeVariable var, String name) |
| Bounds | createBounds () |
| void | boundLocalVar (LocalVariable var, TupleFactory f, Bounds b) |
Private Member Functions | |
| Formula | wellformed () |
| Formula | one (Expression rel) |
| Formula | arrLenConstr (FldRelElem fre) |
| Formula | arrElemsConstr (FldRelElem fre) |
| Expression | intsExpr () |
| List< InstanceLiteral > | getModLits (GlobalVariable g, ForgeExpression expr) |
| void | addRelForVar (String name, Expression expr) |
| void | addFldRel (InstanceLiteral l, GlobalVariable g, List< InstanceLiteral > modLits) |
| List< FldRelElem > | findFldRelsForVar (GlobalVariable var) |
| ObjTupleSet[] | getBounds (ForgeVariable var) |
| ObjTupleSet | getExtent (ForgeVariable var) |
Private Attributes | |
| HashMap< String, FldRelElem > | fldRels |
An alternative implementation of the ISquander interface that uses a different translation to Kodkod.
Definition at line 49 of file SquanderKodkod2Impl.java.
| edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.SquanderKodkod2Impl | ( | ) |
Definition at line 74 of file SquanderKodkod2Impl.java.
| void edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.addFldRel | ( | InstanceLiteral | l, | |
| GlobalVariable | g, | |||
| List< InstanceLiteral > | modLits | |||
| ) | [private] |
Definition at line 254 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.addRelForVar(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.fldRels, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.lit2rel, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.modifies, and edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.relName().
Referenced by edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.createRelations().
| void edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.addRelForVar | ( | String | name, | |
| Expression | expr | |||
| ) | [private] |
Definition at line 245 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.var2rel.
| void edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.addRelForVar | ( | ForgeVariable | var, | |
| String | name | |||
| ) | [protected] |
Reimplemented from edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.
Definition at line 241 of file SquanderKodkod2Impl.java.
Referenced by edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.addFldRel(), and edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.createRelations().
| Formula edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.arrElemsConstr | ( | FldRelElem | fre | ) | [private] |
Definition at line 143 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.fldRels, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.intsExpr(), and edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.one().
Referenced by edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.wellformed().
| Formula edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.arrLenConstr | ( | FldRelElem | fre | ) | [private] |
Definition at line 138 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.one().
Referenced by edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.wellformed().
| void edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.boundLocalVar | ( | LocalVariable | var, | |
| TupleFactory | f, | |||
| Bounds | b | |||
| ) | [protected] |
Reimplemented from edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.
Definition at line 325 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.conv2tuples(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.getBounds(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.relName(), and edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.var2rel.
Referenced by edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.createBounds().
| Formula edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.convertSpec | ( | ForgeExpression | spec | ) | [protected] |
Reimplemented from edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.
Definition at line 96 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.wellformed().
| Bounds edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.createBounds | ( | ) | [protected] |
Reimplemented from edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.
Definition at line 278 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.spec.ForgeScene.args, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.boundLocalVar(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.conv2tuples(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.createUniverse(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.fconv, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.findFldRelsForVar(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.forgeScene, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.getBounds(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.getExtent(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.ints, edu.mit.csail.sdg.squander.spec.ForgeScene.isConst(), edu.mit.csail.sdg.squander.absstate.ObjTupleSet.join(), edu.mit.csail.sdg.squander.engine.ForgeConverter.lit2obj(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.lit2rel, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.program, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.relName(), edu.mit.csail.sdg.squander.spec.ForgeScene.returnVar, edu.mit.csail.sdg.squander.spec.ForgeScene.thisVar, and edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.var2rel.
| void edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.createRelations | ( | ) | [protected] |
Reimplemented from edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.
Definition at line 161 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.addFldRel(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.addRelForVar(), edu.mit.csail.sdg.squander.spec.ForgeScene.args, edu.mit.csail.sdg.squander.spec.ForgeScene.consts, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.cs, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.falseRelation, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.fconv, edu.mit.csail.sdg.squander.engine.ForgeConverter.findInstLiteralsForType(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.forgeScene, edu.mit.csail.sdg.squander.spec.Spec.SpecCase.frame, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.getModLits(), edu.mit.csail.sdg.squander.spec.ForgeScene.isConst(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.lit2rel, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.modifies, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.program, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.relName(), edu.mit.csail.sdg.squander.spec.ForgeScene.returnVar, edu.mit.csail.sdg.squander.spec.ForgeScene.thisVar, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.trueRelation, and edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.type2expr.
| List<FldRelElem> edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.findFldRelsForVar | ( | GlobalVariable | var | ) | [private] |
Definition at line 268 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.fldRels.
Referenced by edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.createBounds().
| ObjTupleSet [] edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.getBounds | ( | ForgeVariable | var | ) | [private] |
Definition at line 335 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.engine.Heap2Bounds.bounds(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.fconv, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.getExtent(), and edu.mit.csail.sdg.squander.engine.ForgeConverter.heap2Lit().
Referenced by edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.boundLocalVar(), and edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.createBounds().
| IEvaluator edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.getEval | ( | Iterator< Solution > | solutions | ) | [protected] |
Reimplemented from edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.
Definition at line 103 of file SquanderKodkod2Impl.java.
| ObjTupleSet edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.getExtent | ( | ForgeVariable | var | ) | [private] |
Definition at line 352 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.absstate.ObjTupleSet.add(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.fconv, edu.mit.csail.sdg.squander.engine.ForgeConverter.findLiteralsForType(), edu.mit.csail.sdg.squander.engine.ForgeConverter.lit2obj(), and edu.mit.csail.sdg.squander.absstate.ObjTupleSet.product().
Referenced by edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.createBounds(), and edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.getBounds().
| List<InstanceLiteral> edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.getModLits | ( | GlobalVariable | g, | |
| ForgeExpression | expr | |||
| ) | [private] |
Definition at line 218 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.engine.SquanderEval2.eval(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.fconv, edu.mit.csail.sdg.squander.engine.ForgeConverter.findInstLiteralsForType(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.forgeScene, edu.mit.csail.sdg.squander.spec.ForgeScene.instLitForObj(), and edu.mit.csail.sdg.squander.absstate.ObjTupleSet.tuples.
Referenced by edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.createRelations().
| Set<GlobalVariable> edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.getModsForPostState | ( | ForgeConverter | fconv, | |
| SpecCase | sc | |||
| ) | [protected] |
Reimplemented from edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.
Definition at line 77 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.spec.Spec.SpecCase.frame.
| ForgeExpression edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.getPostSpec | ( | SpecCase | cs, | |
| ForgeConverter | fconv | |||
| ) | [protected] |
Reimplemented from edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.
Definition at line 88 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.spec.Spec.abstractConstraint(), edu.mit.csail.sdg.squander.spec.Spec.funcConstraint(), edu.mit.csail.sdg.squander.spec.Spec.SpecCase.post, and edu.mit.csail.sdg.squander.spec.Spec.SpecCase.spec().
| ForgeExpression edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.getPreSpec | ( | SpecCase | cs | ) | [protected] |
Reimplemented from edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.
Definition at line 82 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.spec.Spec.abstractConstraint(), edu.mit.csail.sdg.squander.spec.Spec.SpecCase.pre, and edu.mit.csail.sdg.squander.spec.Spec.SpecCase.spec().
| void edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.init | ( | ) | [protected] |
Reimplemented from edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.
Definition at line 108 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.fldRels.
| Expression edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.intsExpr | ( | ) | [private] |
Definition at line 156 of file SquanderKodkod2Impl.java.
Referenced by edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.arrElemsConstr().
| Formula edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.one | ( | Expression | rel | ) | [private] |
| Formula edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.wellformed | ( | ) | [private] |
Definition at line 113 of file SquanderKodkod2Impl.java.
References edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.arrElemsConstr(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.arrLenConstr(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.fldRels, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.forgeScene, edu.mit.csail.sdg.squander.spec.ForgeScene.isSpecField(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.modifies, edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.one(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.relName(), edu.mit.csail.sdg.squander.spec.ForgeScene.returnVar, and edu.mit.csail.sdg.squander.engine.kk.SquanderKodkodImpl.var2rel.
Referenced by edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.convertSpec().
HashMap<String, FldRelElem> edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.fldRels [private] |
Definition at line 72 of file SquanderKodkod2Impl.java.
Referenced by edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.addFldRel(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.arrElemsConstr(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.findFldRelsForVar(), edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.init(), and edu.mit.csail.sdg.squander.engine.kk.SquanderKodkod2Impl.wellformed().
1.6.2-20100208