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