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