Synchronous_reactive_systems/src/test.node

20 lines
382 B
Plaintext
Raw Normal View History

node diagonal_int (i: int) returns (o1, o2 : int);
let
(o1, o2) = (i, i);
tel
node undiag_test (i: int) returns (o : bool);
var l1, l2: int; l3: int;
let
l3 = 1 -> 0;
(l1, l2) = diagonal_int(i);
o = (not (not (l1 = l2))) and (l1 = l2) and true;
tel
2022-12-13 11:45:40 +01:00
node automaton () returns (o : bool);
let
automaton
| Incr -> do o = (pre o) + 1 done
| Decr -> do o = (pre o) - 1 done
tel