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