(* Query should be false *)

channel c.

event e(bool, bitstring, bitstring).
event e2(bool, bitstring, bitstring).

query x: bool,y: bitstring,z: bitstring; event(e2(x,y,z)) ==> event(e(x,y,z)).

process
   in(c, (x: bool,y: bitstring,z: bitstring));
   out(c, let (=y,=y) = (y,z) in event e(x,y,z); y else z);
   event e2(x,y,z)

(* EXPECTPV
RESULT event(e2(x_1,y_1,z_1)) ==> event(e(x_1,y_1,z_1)) is false.
0.004s (user 0.004s + system 0.000s), max rss 7712K
END *)
