YES Problem: g(0(),f(x,x)) -> x g(x,s(y)) -> g(f(x,y),0()) g(s(x),y) -> g(f(x,y),0()) g(f(x,y),0()) -> f(g(x,0()),g(y,0())) Proof: DP Processor: DPs: g#(x,s(y)) -> g#(f(x,y),0()) g#(s(x),y) -> g#(f(x,y),0()) g#(f(x,y),0()) -> g#(y,0()) g#(f(x,y),0()) -> g#(x,0()) TRS: g(0(),f(x,x)) -> x g(x,s(y)) -> g(f(x,y),0()) g(s(x),y) -> g(f(x,y),0()) g(f(x,y),0()) -> f(g(x,0()),g(y,0())) EDG Processor: DPs: g#(x,s(y)) -> g#(f(x,y),0()) g#(s(x),y) -> g#(f(x,y),0()) g#(f(x,y),0()) -> g#(y,0()) g#(f(x,y),0()) -> g#(x,0()) TRS: g(0(),f(x,x)) -> x g(x,s(y)) -> g(f(x,y),0()) g(s(x),y) -> g(f(x,y),0()) g(f(x,y),0()) -> f(g(x,0()),g(y,0())) graph: g#(s(x),y) -> g#(f(x,y),0()) -> g#(f(x,y),0()) -> g#(y,0()) g#(s(x),y) -> g#(f(x,y),0()) -> g#(f(x,y),0()) -> g#(x,0()) g#(f(x,y),0()) -> g#(y,0()) -> g#(s(x),y) -> g#(f(x,y),0()) g#(f(x,y),0()) -> g#(y,0()) -> g#(f(x,y),0()) -> g#(y,0()) g#(f(x,y),0()) -> g#(y,0()) -> g#(f(x,y),0()) -> g#(x,0()) g#(f(x,y),0()) -> g#(x,0()) -> g#(s(x),y) -> g#(f(x,y),0()) g#(f(x,y),0()) -> g#(x,0()) -> g#(f(x,y),0()) -> g#(y,0()) g#(f(x,y),0()) -> g#(x,0()) -> g#(f(x,y),0()) -> g#(x,0()) g#(x,s(y)) -> g#(f(x,y),0()) -> g#(f(x,y),0()) -> g#(y,0()) g#(x,s(y)) -> g#(f(x,y),0()) -> g#(f(x,y),0()) -> g#(x,0()) SCC Processor: #sccs: 1 #rules: 3 #arcs: 10/16 DPs: g#(s(x),y) -> g#(f(x,y),0()) g#(f(x,y),0()) -> g#(x,0()) g#(f(x,y),0()) -> g#(y,0()) TRS: g(0(),f(x,x)) -> x g(x,s(y)) -> g(f(x,y),0()) g(s(x),y) -> g(f(x,y),0()) g(f(x,y),0()) -> f(g(x,0()),g(y,0())) Matrix Interpretation Processor: dimension: 1 interpretation: [g#](x0, x1) = x0 + x1 + 1, [s](x0) = x0 + 1, [g](x0, x1) = x0 + x1, [f](x0, x1) = x0 + x1 + 1, [0] = 0 orientation: g#(s(x),y) = x + y + 2 >= x + y + 2 = g#(f(x,y),0()) g#(f(x,y),0()) = x + y + 2 >= x + 1 = g#(x,0()) g#(f(x,y),0()) = x + y + 2 >= y + 1 = g#(y,0()) g(0(),f(x,x)) = 2x + 1 >= x = x g(x,s(y)) = x + y + 1 >= x + y + 1 = g(f(x,y),0()) g(s(x),y) = x + y + 1 >= x + y + 1 = g(f(x,y),0()) g(f(x,y),0()) = x + y + 1 >= x + y + 1 = f(g(x,0()),g(y,0())) problem: DPs: g#(s(x),y) -> g#(f(x,y),0()) TRS: g(0(),f(x,x)) -> x g(x,s(y)) -> g(f(x,y),0()) g(s(x),y) -> g(f(x,y),0()) g(f(x,y),0()) -> f(g(x,0()),g(y,0())) Matrix Interpretation Processor: dimension: 1 interpretation: [g#](x0, x1) = x0, [s](x0) = x0 + 1, [g](x0, x1) = x1, [f](x0, x1) = x0, [0] = 0 orientation: g#(s(x),y) = x + 1 >= x = g#(f(x,y),0()) g(0(),f(x,x)) = x >= x = x g(x,s(y)) = y + 1 >= 0 = g(f(x,y),0()) g(s(x),y) = y >= 0 = g(f(x,y),0()) g(f(x,y),0()) = 0 >= 0 = f(g(x,0()),g(y,0())) problem: DPs: TRS: g(0(),f(x,x)) -> x g(x,s(y)) -> g(f(x,y),0()) g(s(x),y) -> g(f(x,y),0()) g(f(x,y),0()) -> f(g(x,0()),g(y,0())) Qed