YES Problem: app(nil(),k) -> k app(l,nil()) -> l app(cons(x,l),k) -> cons(x,app(l,k)) sum(cons(x,nil())) -> cons(x,nil()) sum(cons(x,cons(y,l))) -> sum(cons(a(x,y,h()),l)) a(h(),h(),x) -> s(x) a(x,s(y),h()) -> a(x,y,s(h())) a(x,s(y),s(z)) -> a(x,y,a(x,s(y),z)) a(s(x),h(),z) -> a(x,z,z) Proof: DP Processor: DPs: app#(cons(x,l),k) -> app#(l,k) sum#(cons(x,cons(y,l))) -> a#(x,y,h()) sum#(cons(x,cons(y,l))) -> sum#(cons(a(x,y,h()),l)) a#(x,s(y),h()) -> a#(x,y,s(h())) a#(x,s(y),s(z)) -> a#(x,s(y),z) a#(x,s(y),s(z)) -> a#(x,y,a(x,s(y),z)) a#(s(x),h(),z) -> a#(x,z,z) TRS: app(nil(),k) -> k app(l,nil()) -> l app(cons(x,l),k) -> cons(x,app(l,k)) sum(cons(x,nil())) -> cons(x,nil()) sum(cons(x,cons(y,l))) -> sum(cons(a(x,y,h()),l)) a(h(),h(),x) -> s(x) a(x,s(y),h()) -> a(x,y,s(h())) a(x,s(y),s(z)) -> a(x,y,a(x,s(y),z)) a(s(x),h(),z) -> a(x,z,z) EDG Processor: DPs: app#(cons(x,l),k) -> app#(l,k) sum#(cons(x,cons(y,l))) -> a#(x,y,h()) sum#(cons(x,cons(y,l))) -> sum#(cons(a(x,y,h()),l)) a#(x,s(y),h()) -> a#(x,y,s(h())) a#(x,s(y),s(z)) -> a#(x,s(y),z) a#(x,s(y),s(z)) -> a#(x,y,a(x,s(y),z)) a#(s(x),h(),z) -> a#(x,z,z) TRS: app(nil(),k) -> k app(l,nil()) -> l app(cons(x,l),k) -> cons(x,app(l,k)) sum(cons(x,nil())) -> cons(x,nil()) sum(cons(x,cons(y,l))) -> sum(cons(a(x,y,h()),l)) a(h(),h(),x) -> s(x) a(x,s(y),h()) -> a(x,y,s(h())) a(x,s(y),s(z)) -> a(x,y,a(x,s(y),z)) a(s(x),h(),z) -> a(x,z,z) graph: a#(s(x),h(),z) -> a#(x,z,z) -> a#(x,s(y),h()) -> a#(x,y,s(h())) a#(s(x),h(),z) -> a#(x,z,z) -> a#(x,s(y),s(z)) -> a#(x,s(y),z) a#(s(x),h(),z) -> a#(x,z,z) -> a#(x,s(y),s(z)) -> a#(x,y,a(x,s(y),z)) a#(s(x),h(),z) -> a#(x,z,z) -> a#(s(x),h(),z) -> a#(x,z,z) a#(x,s(y),s(z)) -> a#(x,s(y),z) -> a#(x,s(y),h()) -> a#(x,y,s(h())) a#(x,s(y),s(z)) -> a#(x,s(y),z) -> a#(x,s(y),s(z)) -> a#(x,s(y),z) a#(x,s(y),s(z)) -> a#(x,s(y),z) -> a#(x,s(y),s(z)) -> a#(x,y,a(x,s(y),z)) a#(x,s(y),s(z)) -> a#(x,y,a(x,s(y),z)) -> a#(x,s(y),h()) -> a#(x,y,s(h())) a#(x,s(y),s(z)) -> a#(x,y,a(x,s(y),z)) -> a#(x,s(y),s(z)) -> a#(x,s(y),z) a#(x,s(y),s(z)) -> a#(x,y,a(x,s(y),z)) -> a#(x,s(y),s(z)) -> a#(x,y,a(x,s(y),z)) a#(x,s(y),s(z)) -> a#(x,y,a(x,s(y),z)) -> a#(s(x),h(),z) -> a#(x,z,z) a#(x,s(y),h()) -> a#(x,y,s(h())) -> a#(x,s(y),s(z)) -> a#(x,s(y),z) a#(x,s(y),h()) -> a#(x,y,s(h())) -> a#(x,s(y),s(z)) -> a#(x,y,a(x,s(y),z)) a#(x,s(y),h()) -> a#(x,y,s(h())) -> a#(s(x),h(),z) -> a#(x,z,z) sum#(cons(x,cons(y,l))) -> a#(x,y,h()) -> a#(x,s(y),h()) -> a#(x,y,s(h())) sum#(cons(x,cons(y,l))) -> a#(x,y,h()) -> a#(s(x),h(),z) -> a#(x,z,z) sum#(cons(x,cons(y,l))) -> sum#(cons(a(x,y,h()),l)) -> sum#(cons(x,cons(y,l))) -> a#(x,y,h()) sum#(cons(x,cons(y,l))) -> sum#(cons(a(x,y,h()),l)) -> sum#(cons(x,cons(y,l))) -> sum#(cons(a(x,y,h()),l)) app#(cons(x,l),k) -> app#(l,k) -> app#(cons(x,l),k) -> app#(l,k) SCC Processor: #sccs: 3 #rules: 6 #arcs: 19/49 DPs: app#(cons(x,l),k) -> app#(l,k) TRS: app(nil(),k) -> k app(l,nil()) -> l app(cons(x,l),k) -> cons(x,app(l,k)) sum(cons(x,nil())) -> cons(x,nil()) sum(cons(x,cons(y,l))) -> sum(cons(a(x,y,h()),l)) a(h(),h(),x) -> s(x) a(x,s(y),h()) -> a(x,y,s(h())) a(x,s(y),s(z)) -> a(x,y,a(x,s(y),z)) a(s(x),h(),z) -> a(x,z,z) Subterm Criterion Processor: simple projection: pi(app#) = 0 problem: DPs: TRS: app(nil(),k) -> k app(l,nil()) -> l app(cons(x,l),k) -> cons(x,app(l,k)) sum(cons(x,nil())) -> cons(x,nil()) sum(cons(x,cons(y,l))) -> sum(cons(a(x,y,h()),l)) a(h(),h(),x) -> s(x) a(x,s(y),h()) -> a(x,y,s(h())) a(x,s(y),s(z)) -> a(x,y,a(x,s(y),z)) a(s(x),h(),z) -> a(x,z,z) Qed DPs: sum#(cons(x,cons(y,l))) -> sum#(cons(a(x,y,h()),l)) TRS: app(nil(),k) -> k app(l,nil()) -> l app(cons(x,l),k) -> cons(x,app(l,k)) sum(cons(x,nil())) -> cons(x,nil()) sum(cons(x,cons(y,l))) -> sum(cons(a(x,y,h()),l)) a(h(),h(),x) -> s(x) a(x,s(y),h()) -> a(x,y,s(h())) a(x,s(y),s(z)) -> a(x,y,a(x,s(y),z)) a(s(x),h(),z) -> a(x,z,z) Matrix Interpretation Processor: dimension: 1 interpretation: [sum#](x0) = x0 + 1, [s](x0) = 0, [a](x0, x1, x2) = 0, [h] = 0, [sum](x0) = x0, [cons](x0, x1) = x1 + 1, [app](x0, x1) = x0 + x1, [nil] = 0 orientation: sum#(cons(x,cons(y,l))) = l + 3 >= l + 2 = sum#(cons(a(x,y,h()),l)) app(nil(),k) = k >= k = k app(l,nil()) = l >= l = l app(cons(x,l),k) = k + l + 1 >= k + l + 1 = cons(x,app(l,k)) sum(cons(x,nil())) = 1 >= 1 = cons(x,nil()) sum(cons(x,cons(y,l))) = l + 2 >= l + 1 = sum(cons(a(x,y,h()),l)) a(h(),h(),x) = 0 >= 0 = s(x) a(x,s(y),h()) = 0 >= 0 = a(x,y,s(h())) a(x,s(y),s(z)) = 0 >= 0 = a(x,y,a(x,s(y),z)) a(s(x),h(),z) = 0 >= 0 = a(x,z,z) problem: DPs: TRS: app(nil(),k) -> k app(l,nil()) -> l app(cons(x,l),k) -> cons(x,app(l,k)) sum(cons(x,nil())) -> cons(x,nil()) sum(cons(x,cons(y,l))) -> sum(cons(a(x,y,h()),l)) a(h(),h(),x) -> s(x) a(x,s(y),h()) -> a(x,y,s(h())) a(x,s(y),s(z)) -> a(x,y,a(x,s(y),z)) a(s(x),h(),z) -> a(x,z,z) Qed DPs: a#(s(x),h(),z) -> a#(x,z,z) a#(x,s(y),s(z)) -> a#(x,y,a(x,s(y),z)) a#(x,s(y),s(z)) -> a#(x,s(y),z) a#(x,s(y),h()) -> a#(x,y,s(h())) TRS: app(nil(),k) -> k app(l,nil()) -> l app(cons(x,l),k) -> cons(x,app(l,k)) sum(cons(x,nil())) -> cons(x,nil()) sum(cons(x,cons(y,l))) -> sum(cons(a(x,y,h()),l)) a(h(),h(),x) -> s(x) a(x,s(y),h()) -> a(x,y,s(h())) a(x,s(y),s(z)) -> a(x,y,a(x,s(y),z)) a(s(x),h(),z) -> a(x,z,z) Subterm Criterion Processor: simple projection: pi(a#) = 0 problem: DPs: a#(x,s(y),s(z)) -> a#(x,y,a(x,s(y),z)) a#(x,s(y),s(z)) -> a#(x,s(y),z) a#(x,s(y),h()) -> a#(x,y,s(h())) TRS: app(nil(),k) -> k app(l,nil()) -> l app(cons(x,l),k) -> cons(x,app(l,k)) sum(cons(x,nil())) -> cons(x,nil()) sum(cons(x,cons(y,l))) -> sum(cons(a(x,y,h()),l)) a(h(),h(),x) -> s(x) a(x,s(y),h()) -> a(x,y,s(h())) a(x,s(y),s(z)) -> a(x,y,a(x,s(y),z)) a(s(x),h(),z) -> a(x,z,z) Subterm Criterion Processor: simple projection: pi(a#) = 1 problem: DPs: a#(x,s(y),s(z)) -> a#(x,s(y),z) TRS: app(nil(),k) -> k app(l,nil()) -> l app(cons(x,l),k) -> cons(x,app(l,k)) sum(cons(x,nil())) -> cons(x,nil()) sum(cons(x,cons(y,l))) -> sum(cons(a(x,y,h()),l)) a(h(),h(),x) -> s(x) a(x,s(y),h()) -> a(x,y,s(h())) a(x,s(y),s(z)) -> a(x,y,a(x,s(y),z)) a(s(x),h(),z) -> a(x,z,z) Subterm Criterion Processor: simple projection: pi(a#) = 2 problem: DPs: TRS: app(nil(),k) -> k app(l,nil()) -> l app(cons(x,l),k) -> cons(x,app(l,k)) sum(cons(x,nil())) -> cons(x,nil()) sum(cons(x,cons(y,l))) -> sum(cons(a(x,y,h()),l)) a(h(),h(),x) -> s(x) a(x,s(y),h()) -> a(x,y,s(h())) a(x,s(y),s(z)) -> a(x,y,a(x,s(y),z)) a(s(x),h(),z) -> a(x,z,z) Qed