- Minor codebase clean-up - Slight reorganisation of examples + tests so that we don't break stuff by accident - CI tests
48 lines
2.1 KiB
Plaintext
48 lines
2.1 KiB
Plaintext
# Context entities: out allowed
|
|
# Reactions:
|
|
|
|
. proc = "proc0":
|
|
* (R={ out },I={ },P={ approach })
|
|
* (R={ approach },I={ req },P={ req })
|
|
* (R={ allowed },I={ },P={ in })
|
|
* (R={ in },I={ },P={ out leave })
|
|
* (R={ req },I={ in },P={ req })
|
|
|
|
. proc = "proc1":
|
|
* (R={ out },I={ },P={ approach })
|
|
* (R={ approach },I={ req },P={ req })
|
|
* (R={ allowed },I={ },P={ in })
|
|
* (R={ in },I={ },P={ out leave })
|
|
* (R={ req },I={ in },P={ req })
|
|
|
|
. proc = "proc2":
|
|
* (R={ out },I={ },P={ approach })
|
|
* (R={ approach },I={ req },P={ req })
|
|
* (R={ allowed },I={ },P={ in })
|
|
* (R={ in },I={ },P={ out leave })
|
|
* (R={ req },I={ in },P={ req })
|
|
|
|
# Context Automaton States:
|
|
= Init state: init
|
|
* init
|
|
* green
|
|
* red
|
|
* T
|
|
# Context Automaton Transitions:
|
|
* [init -> green]: { proc0={ out } proc1={ out } proc2={ out } }
|
|
* [green -> red]: { proc0={ allowed } } proc0.req
|
|
* [green -> red]: { proc1={ allowed } } proc1.req
|
|
* [green -> red]: { proc2={ allowed } } proc2.req
|
|
* [green -> green]: { proc0={ } } ((~proc0.req AND ~proc1.req) AND ~proc2.req)
|
|
* [green -> green]: { proc1={ } } ((~proc0.req AND ~proc1.req) AND ~proc2.req)
|
|
* [green -> green]: { proc2={ } } ((~proc0.req AND ~proc1.req) AND ~proc2.req)
|
|
* [red -> green]: { proc0={ } } proc0.leave
|
|
* [red -> green]: { proc1={ } } proc1.leave
|
|
* [red -> green]: { proc2={ } } proc2.leave
|
|
* [red -> red]: { proc0={ } } ((~proc0.leave AND ~proc1.leave) AND ~proc2.leave)
|
|
* [red -> red]: { proc1={ } } ((~proc0.leave AND ~proc1.leave) AND ~proc2.leave)
|
|
* [red -> red]: { proc2={ } } ((~proc0.leave AND ~proc1.leave) AND ~proc2.leave)
|
|
* [green -> T]: { } ~((((((true OR proc0.req) OR proc1.req) OR proc2.req) OR ((~proc0.req AND ~proc1.req) AND ~proc2.req)) OR ((~proc0.req AND ~proc1.req) AND ~proc2.req)) OR ((~proc0.req AND ~proc1.req) AND ~proc2.req))
|
|
* [red -> T]: { } ~((((((true OR proc0.leave) OR proc1.leave) OR proc2.leave) OR ((~proc0.leave AND ~proc1.leave) AND ~proc2.leave)) OR ((~proc0.leave AND ~proc1.leave) AND ~proc2.leave)) OR ((~proc0.leave AND ~proc1.leave) AND ~proc2.leave))
|
|
* [T -> T]: { }
|