YES Problem: f(f(x)) -> f(x) f(s(x)) -> f(x) g(s(0())) -> g(f(s(0()))) Proof: DP Processor: DPs: f#(s(x)) -> f#(x) g#(s(0())) -> f#(s(0())) g#(s(0())) -> g#(f(s(0()))) TRS: f(f(x)) -> f(x) f(s(x)) -> f(x) g(s(0())) -> g(f(s(0()))) Usable Rule Processor: DPs: f#(s(x)) -> f#(x) g#(s(0())) -> f#(s(0())) g#(s(0())) -> g#(f(s(0()))) TRS: f(s(x)) -> f(x) f(f(x)) -> f(x) CDG Processor: DPs: f#(s(x)) -> f#(x) g#(s(0())) -> f#(s(0())) g#(s(0())) -> g#(f(s(0()))) TRS: f(s(x)) -> f(x) f(f(x)) -> f(x) graph: g#(s(0())) -> f#(s(0())) -> f#(s(x)) -> f#(x) f#(s(x)) -> f#(x) -> f#(s(x)) -> f#(x) Restore Modifier: DPs: f#(s(x)) -> f#(x) g#(s(0())) -> f#(s(0())) g#(s(0())) -> g#(f(s(0()))) TRS: f(f(x)) -> f(x) f(s(x)) -> f(x) g(s(0())) -> g(f(s(0()))) SCC Processor: #sccs: 1 #rules: 1 #arcs: 2/9 DPs: f#(s(x)) -> f#(x) TRS: f(f(x)) -> f(x) f(s(x)) -> f(x) g(s(0())) -> g(f(s(0()))) Matrix Interpretation Processor: dimension: 1 interpretation: [f#](x0) = x0 + 1, [g](x0) = 0, [0] = 0, [s](x0) = x0 + 1, [f](x0) = 0 orientation: f#(s(x)) = x + 2 >= x + 1 = f#(x) f(f(x)) = 0 >= 0 = f(x) f(s(x)) = 0 >= 0 = f(x) g(s(0())) = 0 >= 0 = g(f(s(0()))) problem: DPs: TRS: f(f(x)) -> f(x) f(s(x)) -> f(x) g(s(0())) -> g(f(s(0()))) Qed