(*

The system should find that the goal is reachable.

*)

pred c/1 elimVar, decompData.
nounif c:x.

fun f/2.
fun g/1.
fun h/2.
fun c0/0.
fun c1/0.

query c:h(f(c0,g(c1)), f(c1, g(c0))).

equation f(x,g(y)) = f(y,g(x)).

reduc
(* Initialization *)

c:f(c0,g(c1));

(* The attacker *)

c:x -> c:h(x,x).

(* EXPECTPV
RESULT goal reachable: c:h(f(c0(),g(c1())),f(c1(),g(c0())))
0.004s (user 0.000s + system 0.004s), max rss 6728K
END *)
