YES TRS: {f(a(), f(x, a())) -> f(f(x, f(f(a(), a()), a())), a())} DP: Strict: {f#(a(), f(x, a())) -> f#(x, f(f(a(), a()), a())), f#(a(), f(x, a())) -> f#(f(x, f(f(a(), a()), a())), a()), f#(a(), f(x, a())) -> f#(f(a(), a()), a()), f#(a(), f(x, a())) -> f#(a(), a())} Weak: {f(a(), f(x, a())) -> f(f(x, f(f(a(), a()), a())), a())} EDG: {(f#(a(), f(x, a())) -> f#(x, f(f(a(), a()), a())), f#(a(), f(x, a())) -> f#(a(), a())) (f#(a(), f(x, a())) -> f#(x, f(f(a(), a()), a())), f#(a(), f(x, a())) -> f#(f(a(), a()), a())) (f#(a(), f(x, a())) -> f#(x, f(f(a(), a()), a())), f#(a(), f(x, a())) -> f#(f(x, f(f(a(), a()), a())), a())) (f#(a(), f(x, a())) -> f#(x, f(f(a(), a()), a())), f#(a(), f(x, a())) -> f#(x, f(f(a(), a()), a())))} SCCS: Scc: {f#(a(), f(x, a())) -> f#(x, f(f(a(), a()), a()))} SCC: Strict: {f#(a(), f(x, a())) -> f#(x, f(f(a(), a()), a()))} Weak: {f(a(), f(x, a())) -> f(f(x, f(f(a(), a()), a())), a())} UR: {} BOUND: Bound: match(-raise)-bounded by 1 Automaton: { a_1() -> 2* a_0() -> 1* f#_1(3, 4) -> 1* f#_1(1, 4) -> 1* f#_0(1, 1) -> 1* f_1(3, 2) -> 4* f_1(2, 2) -> 3* f_0(1, 1) -> 1*} Strict: {} Qed