YES Problem 1: (VAR v_NonEmpty:S k:S l:S x:S y:S z:S) (RULES +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ) Problem 1: Dependency Pairs Processor: -> Pairs: +#(+(x:S,y:S),z:S) -> +#(x:S,+(y:S,z:S)) +#(+(x:S,y:S),z:S) -> +#(y:S,z:S) +#(s(x:S),s(y:S)) -> +#(x:S,y:S) +#(s(x:S),s(y:S)) -> S(+(x:S,y:S)) +#(s(x:S),s(y:S)) -> S(s(+(x:S,y:S))) A(s(l:S),h,h,z:S) -> A(l:S,z:S,h,z:S) A(h,h,h,x:S) -> S(x:S) A(l:S,s(x:S),h,z:S) -> A(l:S,x:S,z:S,z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,s(y:S),z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) A(l:S,x:S,s(y:S),h) -> A(l:S,x:S,y:S,s(h)) A(l:S,x:S,s(y:S),h) -> S(h) APP(cons(x:S,l:S),k:S) -> APP(l:S,k:S) SUM(cons(x:S,cons(y:S,l:S))) -> A(x:S,y:S,h,h) SUM(cons(x:S,cons(y:S,l:S))) -> SUM(cons(a(x:S,y:S,h,h),l:S)) -> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) Problem 1: SCC Processor: -> Pairs: +#(+(x:S,y:S),z:S) -> +#(x:S,+(y:S,z:S)) +#(+(x:S,y:S),z:S) -> +#(y:S,z:S) +#(s(x:S),s(y:S)) -> +#(x:S,y:S) +#(s(x:S),s(y:S)) -> S(+(x:S,y:S)) +#(s(x:S),s(y:S)) -> S(s(+(x:S,y:S))) A(s(l:S),h,h,z:S) -> A(l:S,z:S,h,z:S) A(h,h,h,x:S) -> S(x:S) A(l:S,s(x:S),h,z:S) -> A(l:S,x:S,z:S,z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,s(y:S),z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) A(l:S,x:S,s(y:S),h) -> A(l:S,x:S,y:S,s(h)) A(l:S,x:S,s(y:S),h) -> S(h) APP(cons(x:S,l:S),k:S) -> APP(l:S,k:S) SUM(cons(x:S,cons(y:S,l:S))) -> A(x:S,y:S,h,h) SUM(cons(x:S,cons(y:S,l:S))) -> SUM(cons(a(x:S,y:S,h,h),l:S)) -> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: APP(cons(x:S,l:S),k:S) -> APP(l:S,k:S) ->->-> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->->Cycle: ->->-> Pairs: A(s(l:S),h,h,z:S) -> A(l:S,z:S,h,z:S) A(l:S,s(x:S),h,z:S) -> A(l:S,x:S,z:S,z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,s(y:S),z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) A(l:S,x:S,s(y:S),h) -> A(l:S,x:S,y:S,s(h)) ->->-> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->->Cycle: ->->-> Pairs: SUM(cons(x:S,cons(y:S,l:S))) -> SUM(cons(a(x:S,y:S,h,h),l:S)) ->->-> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->->Cycle: ->->-> Pairs: +#(+(x:S,y:S),z:S) -> +#(x:S,+(y:S,z:S)) +#(+(x:S,y:S),z:S) -> +#(y:S,z:S) +#(s(x:S),s(y:S)) -> +#(x:S,y:S) ->->-> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) The problem is decomposed in 4 subproblems. Problem 1.1: Subterm Processor: -> Pairs: APP(cons(x:S,l:S),k:S) -> APP(l:S,k:S) -> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->Projection: pi(APP) = 1 Problem 1.1: SCC Processor: -> Pairs: Empty -> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.2: Subterm Processor: -> Pairs: A(s(l:S),h,h,z:S) -> A(l:S,z:S,h,z:S) A(l:S,s(x:S),h,z:S) -> A(l:S,x:S,z:S,z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,s(y:S),z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) A(l:S,x:S,s(y:S),h) -> A(l:S,x:S,y:S,s(h)) -> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->Projection: pi(A) = 1 Problem 1.2: SCC Processor: -> Pairs: A(l:S,s(x:S),h,z:S) -> A(l:S,x:S,z:S,z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,s(y:S),z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) A(l:S,x:S,s(y:S),h) -> A(l:S,x:S,y:S,s(h)) -> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: A(l:S,s(x:S),h,z:S) -> A(l:S,x:S,z:S,z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,s(y:S),z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) A(l:S,x:S,s(y:S),h) -> A(l:S,x:S,y:S,s(h)) ->->-> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) Problem 1.2: Subterm Processor: -> Pairs: A(l:S,s(x:S),h,z:S) -> A(l:S,x:S,z:S,z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,s(y:S),z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) A(l:S,x:S,s(y:S),h) -> A(l:S,x:S,y:S,s(h)) -> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->Projection: pi(A) = 2 Problem 1.2: SCC Processor: -> Pairs: A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,s(y:S),z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) A(l:S,x:S,s(y:S),h) -> A(l:S,x:S,y:S,s(h)) -> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,s(y:S),z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) A(l:S,x:S,s(y:S),h) -> A(l:S,x:S,y:S,s(h)) ->->-> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) Problem 1.2: Subterm Processor: -> Pairs: A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,s(y:S),z:S) A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) A(l:S,x:S,s(y:S),h) -> A(l:S,x:S,y:S,s(h)) -> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->Projection: pi(A) = 3 Problem 1.2: SCC Processor: -> Pairs: A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,s(y:S),z:S) -> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,s(y:S),z:S) ->->-> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) Problem 1.2: Subterm Processor: -> Pairs: A(l:S,x:S,s(y:S),s(z:S)) -> A(l:S,x:S,s(y:S),z:S) -> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->Projection: pi(A) = 4 Problem 1.2: SCC Processor: -> Pairs: Empty -> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.3: Reduction Pair Processor: -> Pairs: SUM(cons(x:S,cons(y:S,l:S))) -> SUM(cons(a(x:S,y:S,h,h),l:S)) -> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) -> Usable rules: a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) s(h) -> 1 ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [a](X1,X2,X3,X4) = 2.X4 [s](X) = 2.X [1] = 0 [cons](X1,X2) = X1 + X2 + 2 [h] = 0 [SUM](X) = X Problem 1.3: SCC Processor: -> Pairs: Empty -> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->Strongly Connected Components: There is no strongly connected component The problem is finite. Problem 1.4: Subterm Processor: -> Pairs: +#(+(x:S,y:S),z:S) -> +#(x:S,+(y:S,z:S)) +#(+(x:S,y:S),z:S) -> +#(y:S,z:S) +#(s(x:S),s(y:S)) -> +#(x:S,y:S) -> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->Projection: pi(+#) = 1 Problem 1.4: SCC Processor: -> Pairs: Empty -> Rules: +(+(x:S,y:S),z:S) -> +(x:S,+(y:S,z:S)) +(s(x:S),s(y:S)) -> s(s(+(x:S,y:S))) +(h,x:S) -> x:S +(x:S,h) -> x:S a(s(l:S),h,h,z:S) -> a(l:S,z:S,h,z:S) a(h,h,h,x:S) -> s(x:S) a(l:S,s(x:S),h,z:S) -> a(l:S,x:S,z:S,z:S) a(l:S,x:S,s(y:S),s(z:S)) -> a(l:S,x:S,y:S,a(l:S,x:S,s(y:S),z:S)) a(l:S,x:S,s(y:S),h) -> a(l:S,x:S,y:S,s(h)) app(cons(x:S,l:S),k:S) -> cons(x:S,app(l:S,k:S)) app(nil,k:S) -> k:S app(l:S,nil) -> l:S s(h) -> 1 sum(cons(x:S,cons(y:S,l:S))) -> sum(cons(a(x:S,y:S,h,h),l:S)) sum(cons(x:S,nil)) -> cons(x:S,nil) ->Strongly Connected Components: There is no strongly connected component The problem is finite.