|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectedu.wis.jtlv.env.module.Module
public abstract class Module
A general interface for modules. It is advise to load modules and manipulate
them through the file itself, and then load it to the environment through
Env. However, this is not the only way to create a new module. One can use
whole set of manipulating procedures provided by this interface, to create a
new module.
By default, The initial condition is TRUE, transition relation is TRUE.
Env.loadModule(String),
Env.getAllModules(),
Env.getModule(String)| Constructor Summary | |
|---|---|
Module()
|
|
| Method Summary | |
|---|---|
abstract void |
addInitial(net.sf.javabdd.BDD to_add)
Conjunct the initial condition with the given condition. |
abstract ModuleBDDField |
addVar(java.lang.String new_var)
Add a variable to the module. |
net.sf.javabdd.BDD |
allPred(net.sf.javabdd.BDD to)
Given a set of state, this procedure return all states which can lead in any number of module steps to these states. |
net.sf.javabdd.BDD |
allSucc(net.sf.javabdd.BDD from)
This procedure return all states which the module can reach in any number of steps from given a set of state. |
abstract void |
conjunctTrans(net.sf.javabdd.BDD to_add)
Conjunct the transition relation with the given condition. |
net.sf.javabdd.BDD |
controlStates(Module responder,
net.sf.javabdd.BDD to)
A state s is included in the returning result if the this module can force the responder to reach a state in "to". |
abstract void |
disjunctTrans(net.sf.javabdd.BDD to_add)
Disjunct the transition relation with the given condition. |
net.sf.javabdd.BDD |
elimSuccChains(net.sf.javabdd.BDD scc)
Eliminate states from scc which have no successors within scc. |
net.sf.javabdd.BDD |
feasible()
This is essentially algorithm "FEASIBLE", from the article: Yonit Ketsen, Amir Pnueli, Li-on Raviv, Elad Shahar, "Model checking with strong fairness". |
net.sf.javabdd.BDD |
feasible2()
Version which allows justice and compassion requirement to refer to the next state. |
abstract ModuleBDDField[] |
getAllFields()
Getter for all fields declared in this module. |
abstract java.util.Vector<net.sf.javabdd.BDD> |
getAllIniRestrictions()
|
abstract java.util.Vector<net.sf.javabdd.BDD> |
getAllTransRestrictions()
|
abstract java.lang.String |
getFullInstName()
Getter for the instance string. |
abstract java.lang.String |
getName()
Getter for the declared field name which holds this instance. |
abstract java.lang.String |
getPath()
The path leading to this module. |
net.sf.javabdd.BDD |
hasSuccessorsTo(net.sf.javabdd.BDD state,
net.sf.javabdd.BDD to)
|
abstract net.sf.javabdd.BDD |
idleStep()
Construct a BDD representing the idle transition of this module. |
abstract net.sf.javabdd.BDD |
initial()
Getter for the initial states in the module. |
abstract net.sf.javabdd.BDDVarSet |
modulePrimeVars()
Getter for the primed variable of this module. |
abstract net.sf.javabdd.BDDVarSet |
moduleUnprimeVars()
Getter for the unprimed variable of this module. |
net.sf.javabdd.BDDVarSet |
moduleVars()
Getter for all, primed and unprimed variable of this module. |
net.sf.javabdd.BDD |
pred(net.sf.javabdd.BDD to)
Given a set of state, this procedure return all states which can lead in a single module step to these states. |
net.sf.javabdd.BDD |
reachable()
|
abstract void |
removeAllIniRestrictions()
|
abstract void |
removeAllTransRestrictions()
|
abstract void |
removeIniRestriction(int id)
|
abstract void |
removeTransRestriction(int id)
|
abstract int |
restrictIni(net.sf.javabdd.BDD temp_ini)
|
abstract int |
restrictTrans(net.sf.javabdd.BDD temp_trans)
|
abstract void |
setAllIniRestrictions(java.util.Vector<net.sf.javabdd.BDD> toSet)
|
abstract void |
setAllTransRestrictions(java.util.Vector<net.sf.javabdd.BDD> toSet)
|
abstract void |
setInitial(net.sf.javabdd.BDD to_add)
Set the initial condition with the given condition. |
net.sf.javabdd.BDD[] |
shortestPath(net.sf.javabdd.BDD source,
net.sf.javabdd.BDD dest)
Compute the shortest path from source to destination. |
net.sf.javabdd.BDD |
succ(net.sf.javabdd.BDD from)
This procedure return all states which the module can reach in a single step from given a set of state. |
abstract java.lang.String |
toString()
Prepare a string describing the module, its variables, define, statement, etc. |
abstract net.sf.javabdd.BDD |
trans()
Getter for the transition relation of the module. |
net.sf.javabdd.BDD |
yieldStates(Module responder,
net.sf.javabdd.BDD to)
A state s in included in the returning result if responder module can force this module to reach a state in "to". That is, regardless of how this module will move from the result, the responder module can choose an appropriate move into "to". |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public Module()
| Method Detail |
|---|
public abstract ModuleBDDField addVar(java.lang.String new_var)
throws ModuleException
Add a variable to the module.
new_var - The name of the new variable to add.
ModuleException - If there was a problem with adding the variable, e.g. a
variable with this name already exists.
public abstract void addInitial(net.sf.javabdd.BDD to_add)
throws ModuleException
Conjunct the initial condition with the given condition.
to_add - The condition to add to the module.
ModuleException - If there was a problem with adding the condition, e.g. a
there where primed variables in the condition.initial(),
setInitial(BDD)
public abstract void setInitial(net.sf.javabdd.BDD to_add)
throws ModuleException
Set the initial condition with the given condition.
to_add - The condition to set to the module.
ModuleException - If there was a problem with setting the condition, e.g. a
there where primed variables in the condition.initial(),
addInitial(BDD)
public abstract void conjunctTrans(net.sf.javabdd.BDD to_add)
throws ModuleException
Conjunct the transition relation with the given condition.
to_add - The transition to conjunct with the module's transitions.
ModuleException - If there was a problem with adding relation.trans(),
disjunctTrans(BDD)
public abstract void disjunctTrans(net.sf.javabdd.BDD to_add)
throws ModuleException
Disjunct the transition relation with the given condition.
to_add - The transition disjunct with to the module's transitions.
ModuleException - If there was a problem with adding relation.trans(),
conjunctTrans(BDD)public abstract ModuleBDDField[] getAllFields()
Getter for all fields declared in this module.
public abstract net.sf.javabdd.BDDVarSet modulePrimeVars()
Getter for the primed variable of this module.
public abstract net.sf.javabdd.BDDVarSet moduleUnprimeVars()
Getter for the unprimed variable of this module.
public net.sf.javabdd.BDDVarSet moduleVars()
Getter for all, primed and unprimed variable of this module.
public abstract net.sf.javabdd.BDD initial()
Getter for the initial states in the module.
addInitial(BDD),
setInitial(BDD)public abstract net.sf.javabdd.BDD trans()
Getter for the transition relation of the module.
disjunctTrans(BDD),
conjunctTrans(BDD),
idleStep()public abstract net.sf.javabdd.BDD idleStep()
Construct a BDD representing the idle transition of this module. If the process has a synchronously composed inner module (possible only in SMVModule), then it will also construct its idle step.
disjunctTrans(BDD),
conjunctTrans(BDD),
trans()
public net.sf.javabdd.BDD pred(net.sf.javabdd.BDD to)
throws net.sf.javabdd.BDDException
Given a set of state, this procedure return all states which can lead in a single module step to these states.
to - The set of state to be reach.
net.sf.javabdd.BDDException - If there was a problem with the BDD operation.allPred(BDD),
trans(),
succ(BDD)
public net.sf.javabdd.BDD allPred(net.sf.javabdd.BDD to)
throws net.sf.javabdd.BDDException
Given a set of state, this procedure return all states which can lead in any number of module steps to these states.
to - The set of state to be reach.
net.sf.javabdd.BDDException - If there was a problem with the BDD operation.pred(BDD),
trans(),
allSucc(BDD)
public net.sf.javabdd.BDD succ(net.sf.javabdd.BDD from)
throws net.sf.javabdd.BDDException
This procedure return all states which the module can reach in a single step from given a set of state.
from - The set of state to start from.
net.sf.javabdd.BDDException - If there was a problem with the BDD operation.allSucc(BDD),
trans(),
pred(BDD)
public net.sf.javabdd.BDD allSucc(net.sf.javabdd.BDD from)
throws net.sf.javabdd.BDDException
This procedure return all states which the module can reach in any number of steps from given a set of state.
from - The set of state to start from.
net.sf.javabdd.BDDException - If there was a problem with the BDD operation.allPred(BDD),
trans(),
succ(BDD)public abstract int restrictIni(net.sf.javabdd.BDD temp_ini)
public abstract void removeIniRestriction(int id)
public abstract void removeAllIniRestrictions()
public abstract java.util.Vector<net.sf.javabdd.BDD> getAllIniRestrictions()
public abstract void setAllIniRestrictions(java.util.Vector<net.sf.javabdd.BDD> toSet)
public abstract int restrictTrans(net.sf.javabdd.BDD temp_trans)
public abstract void removeTransRestriction(int id)
public abstract void removeAllTransRestrictions()
public abstract java.util.Vector<net.sf.javabdd.BDD> getAllTransRestrictions()
public abstract void setAllTransRestrictions(java.util.Vector<net.sf.javabdd.BDD> toSet)
public net.sf.javabdd.BDD reachable()
public net.sf.javabdd.BDD[] shortestPath(net.sf.javabdd.BDD source,
net.sf.javabdd.BDD dest)
Compute the shortest path from source to destination.
Algorithm from: Yonit Kesten, Amir Pnueli, Li-on Raviv, Elad Shahar,
"Model Checking with Strong Fairness".
source - The states to start look for path.dest - The states to reach in the path.
public net.sf.javabdd.BDD feasible()
This is essentially algorithm "FEASIBLE", from the article:
Yonit Ketsen, Amir Pnueli, Li-on Raviv, Elad Shahar, "Model checking with
strong fairness". This implementation is reduced to a module without any
fairness requirements.
The line numbers are the line numbers of that algorithm. Read the article for further details.
ModuleWithWeakFairness.feasible(),
ModuleWithStrongFairness.feasible(),
feasible2()public net.sf.javabdd.BDD feasible2()
Version which allows justice and compassion requirement to refer to the next state.
feasible(),
ModuleWithWeakFairness.feasible2(),
ModuleWithStrongFairness.feasible2()
public net.sf.javabdd.BDD yieldStates(Module responder,
net.sf.javabdd.BDD to)
A state s in included in the returning result if responder module can
force this module to reach a state in "to".
That is, regardless of how this module will move from the result, the
responder module can choose an appropriate move into "to".
responder - The module which moves (i.e. this is the responder).to - The states to reach.
allPred(BDD)
public net.sf.javabdd.BDD controlStates(Module responder,
net.sf.javabdd.BDD to)
A state s is included in the returning result if the this module can
force the responder to reach a state in "to".
responder - The module to check for.to - The states to reach.
public net.sf.javabdd.BDD elimSuccChains(net.sf.javabdd.BDD scc)
Eliminate states from scc which have no successors within scc. scc is supposed to be a strongly connected component, however, it also contains chains of states which exit the scc, but are not in it. This procedure eliminates these chains.
scc - The set of states to find scc for.
public net.sf.javabdd.BDD hasSuccessorsTo(net.sf.javabdd.BDD state,
net.sf.javabdd.BDD to)
state - to -
public abstract java.lang.String toString()
Prepare a string describing the module, its variables, define, statement, etc.
toString in class java.lang.Objectpublic abstract java.lang.String getPath()
The path leading to this module.
public abstract java.lang.String getName()
Getter for the declared field name which holds this instance.
public abstract java.lang.String getFullInstName()
Getter for the instance string.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||