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