YES Problem: f(a(),f(f(a(),x),a())) -> f(f(a(),f(a(),x)),a()) Proof: DP Processor: DPs: f#(a(),f(f(a(),x),a())) -> f#(a(),f(a(),x)) f#(a(),f(f(a(),x),a())) -> f#(f(a(),f(a(),x)),a()) TRS: f(a(),f(f(a(),x),a())) -> f(f(a(),f(a(),x)),a()) Restore Modifier: DPs: f#(a(),f(f(a(),x),a())) -> f#(a(),f(a(),x)) f#(a(),f(f(a(),x),a())) -> f#(f(a(),f(a(),x)),a()) TRS: f(a(),f(f(a(),x),a())) -> f(f(a(),f(a(),x)),a()) SCC Processor: #sccs: 1 #rules: 2 #arcs: 4/4 DPs: f#(a(),f(f(a(),x),a())) -> f#(a(),f(a(),x)) f#(a(),f(f(a(),x),a())) -> f#(f(a(),f(a(),x)),a()) TRS: f(a(),f(f(a(),x),a())) -> f(f(a(),f(a(),x)),a()) Matrix Interpretation Processor: dimension: 1 interpretation: [f#](x0, x1) = x0, [f](x0, x1) = 0, [a] = 1 orientation: f#(a(),f(f(a(),x),a())) = 1 >= 1 = f#(a(),f(a(),x)) f#(a(),f(f(a(),x),a())) = 1 >= 0 = f#(f(a(),f(a(),x)),a()) f(a(),f(f(a(),x),a())) = 0 >= 0 = f(f(a(),f(a(),x)),a()) problem: DPs: f#(a(),f(f(a(),x),a())) -> f#(a(),f(a(),x)) TRS: f(a(),f(f(a(),x),a())) -> f(f(a(),f(a(),x)),a()) Matrix Interpretation Processor: dimension: 1 interpretation: [f#](x0, x1) = x1, [f](x0, x1) = x0 + x1 + 1, [a] = 0 orientation: f#(a(),f(f(a(),x),a())) = x + 2 >= x + 1 = f#(a(),f(a(),x)) f(a(),f(f(a(),x),a())) = x + 3 >= x + 3 = f(f(a(),f(a(),x)),a()) problem: DPs: TRS: f(a(),f(f(a(),x),a())) -> f(f(a(),f(a(),x)),a()) Qed