|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectrwth.i2.ltlrv.formula.base.AbstractFormula
rwth.i2.ltlrv.afastate.base.AbstractAFAState
rwth.i2.ltlrv.afastate.base.UnaryAFAState
rwth.i2.ltlrv.afastate.impl.Next
public class Next
Next - Implements the Next formula constructor of LTL.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from interface rwth.i2.ltlrv.afastate.interfaze.IAFAState |
|---|
IAFAState.ValidationException, IAFAState.VariableKind |
| Field Summary |
|---|
| Fields inherited from class rwth.i2.ltlrv.afastate.base.UnaryAFAState |
|---|
subformula |
| Fields inherited from class rwth.i2.ltlrv.formula.base.AbstractFormula |
|---|
factory |
| Constructor Summary | |
|---|---|
Next(IFormula subFormula)
Constructs a new formula with the given subformula. |
|
| Method Summary | |
|---|---|
void |
doTransition(Set<String> context,
PropositionSet currentProps,
WeakValuesMap<String,Object> currentBinding,
Set<Set<IAFAState>> result)
Performs the actual transition based on the current context. |
private WeakValuesMap<String,Object> |
filterBinding(Set<String> context,
WeakValuesMap<String,Object> binding)
Filters bindings for those which are contained in the given context. |
boolean |
isFinalStateInAFA()
Returns true if this formula represents a final
state in the AFA. |
void |
providesNeg(Set<String> result)
This returns the set of negatively provided variables at the current temporal levels. |
void |
providesPos(Set<String> result)
This returns the set of positively provided variables at the current temporal levels. |
IAFAState |
reconstruct(IFormula t)
Creates a formula with the same operator as this |
void |
requires(Set<String> result)
This returns the set of required variables. This is the set of all variables which are free in propositions, meaning they occur in an if-pointcut but are not provided by the same pointcut at the same time. |
String |
symbol()
Returns the symbol for this term constructor. |
void |
unboundVariablesAtCurrentJoinpoint(IAFAState.VariableKind variableKind,
Set<String> result)
Override cutting off the recursive search, since the Next operator
builds the boundary between the current and the next joinpoints. |
| Methods inherited from class rwth.i2.ltlrv.afastate.base.UnaryAFAState |
|---|
equals, getSubformula, hashCode, negationNormalForm, specializeBindings, toString, validate |
| Methods inherited from class rwth.i2.ltlrv.afastate.base.AbstractAFAState |
|---|
provides, transition, updateContext, validate |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface rwth.i2.ltlrv.formula.interfaze.IUnaryTerm |
|---|
getSubformula |
| Methods inherited from interface rwth.i2.ltlrv.formula.interfaze.IFormula |
|---|
negationNormalForm |
| Methods inherited from interface rwth.i2.ltlrv.afastate.interfaze.IAFAState |
|---|
provides, specializeBindings, transition, validate |
| Methods inherited from interface rwth.i2.ltlrv.formula.interfaze.IFormula |
|---|
negationNormalForm |
| Constructor Detail |
|---|
public Next(IFormula subFormula)
subFormula - the subformula| Method Detail |
|---|
public boolean isFinalStateInAFA()
true if this formula represents a final
state in the AFA. This is the case if the formula is either
a Release subformula, TT, or a boolean combination of
subformulae evaluating to true.
isFinalStateInAFA in interface IAFAStatetrue if this formula represents a final
state in the AFAIRelease,
ITT
public void doTransition(Set<String> context,
PropositionSet currentProps,
WeakValuesMap<String,Object> currentBinding,
Set<Set<IAFAState>> result)
doTransition in class AbstractAFAStatecontext - @see #transition(Set, PropositionSet, WeakValuesMap, Set)currentProps - @see #transition(Set, PropositionSet, WeakValuesMap, Set)currentBinding - @see #transition(Set, PropositionSet, WeakValuesMap, Set)result - @see #transition(Set, PropositionSet, WeakValuesMap, Set)IAFAState.transition(Set, PropositionSet, WeakValuesMap, Set),
AbstractAFAState.transition(Set, PropositionSet, WeakValuesMap, Set),
AbstractAFAState.updateContext(Set)
private WeakValuesMap<String,Object> filterBinding(Set<String> context,
WeakValuesMap<String,Object> binding)
context - the current contextbinding - the original binding
public void unboundVariablesAtCurrentJoinpoint(IAFAState.VariableKind variableKind,
Set<String> result)
Next operator
builds the boundary between the current and the next joinpoints.
unboundVariablesAtCurrentJoinpoint in interface IAFAStateunboundVariablesAtCurrentJoinpoint in class UnaryAFAStatevariableKind - TODOIAFAState.unboundVariablesAtCurrentJoinpoint(VariableKind, Set)public void providesPos(Set<String> result)
providesPos( phi /\ psi ) = providesPos( phi ) join providesPos( psi )
providesPos( phi \/ psi ) = providesPos( phi ) intersect providesPos( psi )
providesPos( phi R psi ) = providesPos( (psi /\ phi) \/ (psi /\ X(phi R psi)) )
= providesPos( psi )
providesPos( phi U psi ) = providesPos( psi \/ (phi /\ X(phi U psi) )
= providesPos( psi ) intersect providesPos( phi )
providesPos( X phi ) = emptyset
providesPos( !prop ) = emptyset
providesPos( prop ) = provided variables of prop
providesPos in interface IAFAStateresult - The result will be placed here.public void providesNeg(Set<String> result)
providesNeg( phi /\ psi ) = providesNeg( phi ) intersect providesNeg( psi )
providesNeg( phi \/ psi ) = providesNeg( phi ) join providesNeg( psi )
providesNeg( phi R psi ) = providesNeg( psi ) intersect providesNeg( phi )
providesNeg( phi U psi ) = providesNeg( psi )
providesNeg( X phi ) = emptyset
providesNeg( !prop ) = provided variables of prop
providesNeg( prop ) = emptyset
providesNeg in interface IAFAStateresult - The result will be placed here.public void requires(Set<String> result)
requires in interface IAFAStaterequires in class UnaryAFAStateresult - The result will be placed here.public IAFAState reconstruct(IFormula t)
this
but a different subformula. This is used for recursion with
nondestructive updates.
- Specified by:
reconstruct in interface IUnaryAFAState
- Parameters:
t - the new subformula
- Returns:
- the new instance
public String symbol()
symbol in interface IFormula
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||