node top (x :int) returns (y:bool)
var l:int;
let
automaton parity
state Even :
unless (x mod 2 = 1) restart Odd
l = x -> pre (l/2);
tel
state Odd :
unless (x mod 2 = 0) restart Even
l = x -> pre (3*l + 1);
y = (l = 1);