free c:channel.

fun h(bitstring):bitstring.

const a:bitstring.

event A(bitstring).
event B(bitstring).

query x:bitstring, y:bitstring; inj-event(B(x)) && inj-event(A(x)) ==> inj-event(A(y)) && x <> a.

process
  in(c,x:bitstring);
  event A(x);
  in(c,y:bitstring);
  if y <> a
  then
    event A(y);
    event B(y)

(* EXPECTPV
RESULT inj-event(B(x_1)) && inj-event(A(x_1)) ==> inj-event(A(y_1)) && x_1 ≠ a is true.
0.012s (user 0.008s + system 0.004s), max rss 7764K
END *)
