(* The query is false because the communication on channel c
   between out(c,a) and in(c,x) can be private,
   so the message a can be sent on c without the attacker
   having a. *)

free c:channel.

query x:bitstring; mess(c,x) ==> attacker(x).

set verboseClauses = short.

process
  new a:bitstring;
  new b:bitstring;
  (out(c,a) | in(c,x:bitstring); out(c,b))

(* EXPECTPV
RESULT mess(c[],x_1) ==> attacker(x_1) cannot be proved.
0.008s (user 0.008s + system 0.000s), max rss 7380K
END *)
