YES TRS: {f(g(X)) -> g(f(f(X))), f(h(X)) -> h(g(X))} DP: Strict: {f#(g(X)) -> f#(X), f#(g(X)) -> f#(f(X))} Weak: {f(g(X)) -> g(f(f(X))), f(h(X)) -> h(g(X))} EDG: {(f#(g(X)) -> f#(f(X)), f#(g(X)) -> f#(f(X))) (f#(g(X)) -> f#(f(X)), f#(g(X)) -> f#(X)) (f#(g(X)) -> f#(X), f#(g(X)) -> f#(X)) (f#(g(X)) -> f#(X), f#(g(X)) -> f#(f(X)))} SCCS: Scc: {f#(g(X)) -> f#(X), f#(g(X)) -> f#(f(X))} SCC: Strict: {f#(g(X)) -> f#(X), f#(g(X)) -> f#(f(X))} Weak: {f(g(X)) -> g(f(f(X))), f(h(X)) -> h(g(X))} POLY: Argument Filtering: pi(h) = [], pi(f#) = 0, pi(f) = 0, pi(g) = [0] Usable Rules: {} Interpretation: [g](x0) = x0 + 1 Strict: {} Weak: {f(g(X)) -> g(f(f(X))), f(h(X)) -> h(g(X))} Qed