30 lines
703 B
Text
30 lines
703 B
Text
|
|
node after (a: bool) returns (o: bool);
|
|
var prev_o: bool;
|
|
let
|
|
prev_o = false -> pre o;
|
|
o = prev_o or a;
|
|
tel;
|
|
|
|
node always_since (a: bool; b: bool) returns (o: bool);
|
|
var prev_o: bool;
|
|
let
|
|
prev_o = false -> pre o;
|
|
o = if b then a else prev_o and a;
|
|
tel;
|
|
|
|
node once_since(a: bool; reset: bool) returns (o: bool);
|
|
var a_happened: bool;
|
|
let
|
|
a_happened = a -> if reset then false else (pre a_happened or a);
|
|
o = (a and not reset) -> a_happened;
|
|
tel;
|
|
|
|
node always_from_to(b: bool; reset: bool; c: bool) returns (x: bool);
|
|
var
|
|
c_happened: bool;
|
|
prev_b: bool;
|
|
let
|
|
c_happened = c -> if reset then false else (c or pre c_happened);*
|
|
prev_b = b -> if reset then true else (b and prev_b);
|
|
tel;
|