-
Notifications
You must be signed in to change notification settings - Fork 8
/
raf_network.smv
43 lines (28 loc) · 972 Bytes
/
raf_network.smv
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
-- created on 16. Mar. 2016 using PyBoolNet
-- available at "sourceforge.net/projects/boolnetfixpoints".
MODULE main
VAR
Erk: boolean;
Mek: boolean;
Raf: boolean;
DEFINE
Erk_IMAGE := Raf&Mek | Mek&Erk;
Mek_IMAGE := Raf&Mek | Erk;
Raf_IMAGE := !Raf | !Erk;
Erk_STEADY := (Erk_IMAGE = Erk);
Mek_STEADY := (Mek_IMAGE = Mek);
Raf_STEADY := (Raf_IMAGE = Raf);
SUCCESSORS := count((!Erk_STEADY), (!Mek_STEADY), (!Raf_STEADY));
STEADYSTATE := (SUCCESSORS = 0);
ASSIGN
next(Erk) := {Erk, Erk_IMAGE};
next(Mek) := {Mek, Mek_IMAGE};
next(Raf) := {Raf, Raf_IMAGE};
TRANS STEADYSTATE | count((next(Erk)!=Erk), (next(Mek)!=Mek), (next(Raf)!=Raf))=1;
INIT TRUE
CTLSPEC EF(!Erk&!Mek&Raf) & EF(Erk&Mek&Raf)
-- erwarte: Erk&!Mek&Raf | Erk&!Mek&!Raf | !Erk&Mek&!Raf
--CTLSPEC !EF(!Erk&!Mek&Raf) & EF(Erk&Mek&Raf)
-- erwarte: Erk&Mek&!Raf | Erk&Mek&Raf | !Erk&Mek&Raf
--CTLSPEC EF(!Erk&!Mek&Raf) & !EF(Erk&Mek&Raf)
-- erwarte: !Erk&!Mek&!Raf | !Erk&!Mek&Raf