[SAL-HELP] Differences between sal-bmc and sal-inf-bmc
Ambar Gadkari
ambar.gadkari at gmail.com
Wed Aug 22 06:32:39 PDT 2007
Skipped content of type multipart/alternative-------------- next part --------------
ex: CONTEXT =
BEGIN
mytype: TYPE = [0 .. 100];
mytype1: TYPE = [0 .. 10];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
m1 : MODULE =
BEGIN
INPUT i1: mytype1
INPUT o2: mytype
OUTPUT o1: mytype
LOCAL cond1: BOOLEAN
INITIALIZATION
cond1 = FALSE;
o1 = 0
TRANSITION
[
TRUE -->
o1' = o1 + i1 + o2;
cond1' = IF (o1' > 50) THEN TRUE ELSE FALSE ENDIF;
]
END;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
m2 : MODULE =
BEGIN
INPUT i2: mytype1
INPUT o1: mytype
OUTPUT o2: mytype
LOCAL cond2: BOOLEAN
INITIALIZATION
cond2 = FALSE;
o2 = 0
TRANSITION
[
TRUE -->
o2' = o2 + 2*i2 - o1;
cond2' = IF (o2' > 80) THEN TRUE ELSE FALSE ENDIF;
]
END;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
sys : MODULE =
m1 || m2;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
th1: THEOREM m1|- G(NOT(cond1));
th2: THEOREM m2|- G(NOT(cond2));
th3: THEOREM sys|- G(NOT(cond1 AND cond2));
END
More information about the SAL-HELP
mailing list