YES TRS: {f(f(y, z), f(x, f(a(), x))) -> f(f(f(a(), z), f(x, a())), f(a(), y))} DP: Strict: {f#(f(y, z), f(x, f(a(), x))) -> f#(x, a()), f#(f(y, z), f(x, f(a(), x))) -> f#(f(f(a(), z), f(x, a())), f(a(), y)), f#(f(y, z), f(x, f(a(), x))) -> f#(f(a(), z), f(x, a())), f#(f(y, z), f(x, f(a(), x))) -> f#(a(), z), f#(f(y, z), f(x, f(a(), x))) -> f#(a(), y)} Weak: {f(f(y, z), f(x, f(a(), x))) -> f(f(f(a(), z), f(x, a())), f(a(), y))} EDG: {(f#(f(y, z), f(x, f(a(), x))) -> f#(f(f(a(), z), f(x, a())), f(a(), y)), f#(f(y, z), f(x, f(a(), x))) -> f#(a(), y)) (f#(f(y, z), f(x, f(a(), x))) -> f#(f(f(a(), z), f(x, a())), f(a(), y)), f#(f(y, z), f(x, f(a(), x))) -> f#(a(), z)) (f#(f(y, z), f(x, f(a(), x))) -> f#(f(f(a(), z), f(x, a())), f(a(), y)), f#(f(y, z), f(x, f(a(), x))) -> f#(f(a(), z), f(x, a()))) (f#(f(y, z), f(x, f(a(), x))) -> f#(f(f(a(), z), f(x, a())), f(a(), y)), f#(f(y, z), f(x, f(a(), x))) -> f#(f(f(a(), z), f(x, a())), f(a(), y))) (f#(f(y, z), f(x, f(a(), x))) -> f#(f(f(a(), z), f(x, a())), f(a(), y)), f#(f(y, z), f(x, f(a(), x))) -> f#(x, a()))} SCCS: Scc: {f#(f(y, z), f(x, f(a(), x))) -> f#(f(f(a(), z), f(x, a())), f(a(), y))} SCC: Strict: {f#(f(y, z), f(x, f(a(), x))) -> f#(f(f(a(), z), f(x, a())), f(a(), y))} Weak: {f(f(y, z), f(x, f(a(), x))) -> f(f(f(a(), z), f(x, a())), f(a(), y))} BOUND: Bound: match(-raise)-DP-bounded by 0 Automaton: { b_0() -> 3* a_0() -> 2* f#_0(6, 8) -> 1* f#_0(6, 7) -> 1* f_0(8, 5) -> 6* f_0(5, 2) -> 5* f_0(4, 5) -> 6* f_0(3, 2) -> 5* f_0(2, 8) -> 7* f_0(2, 5) -> 4* f_0(2, 4) -> 7* f_0(2, 3) -> 8* f_0(2, 2) -> 5*} Strict: {} Qed