Input TRS: 1: min(0(),y) -> 0() 2: min(s(x),0()) -> 0() 3: min(s(x),s(y)) -> min(x,y) 4: len(nil()) -> 0() 5: len(cons(x,xs)) -> s(len(xs)) 6: sum(x,0()) -> x 7: sum(x,s(y)) -> s(sum(x,y)) 8: le(0(),x) -> true() 9: le(s(x),0()) -> false() 10: le(s(x),s(y)) -> le(x,y) 11: take(0(),cons(y,ys)) -> y 12: take(s(x),cons(y,ys)) -> take(x,ys) 13: addList(x,y) -> if(le(0(),min(len(x),len(y))),0(),x,y,nil()) 14: if(false(),c,x,y,z) -> z 15: if(true(),c,xs,ys,z) -> if(le(s(c),min(len(xs),len(ys))),s(c),xs,ys,cons(sum(take(c,xs),take(c,ys)),z)) Number of strict rules: 15 Direct Order(PosReal,>,Poly) ... failed. Freezing le 1: min(0(),y) -> 0() 2: min(s(x),0()) -> 0() 3: min(s(x),s(y)) -> min(x,y) 4: len(nil()) -> 0() 5: len(cons(x,xs)) -> s(len(xs)) 6: sum(x,0()) -> x 7: sum(x,s(y)) -> s(sum(x,y)) 8: le❆1_0(x) -> true() 9: le❆1_s(x,0()) -> false() 10: le❆1_s(x,s(y)) -> le(x,y) 11: take(0(),cons(y,ys)) -> y 12: take(s(x),cons(y,ys)) -> take(x,ys) 13: addList(x,y) -> if(le❆1_0(min(len(x),len(y))),0(),x,y,nil()) 14: if(false(),c,x,y,z) -> z 15: if(true(),c,xs,ys,z) -> if(le❆1_s(c,min(len(xs),len(ys))),s(c),xs,ys,cons(sum(take(c,xs),take(c,ys)),z)) 16: le(0(),_1) ->= le❆1_0(_1) 17: le(s(_1),_2) ->= le❆1_s(_1,_2) Number of strict rules: 15 Direct Order(PosReal,>,Poly) ... failed. Dependency Pairs: #1: #addList(x,y) -> #if(le❆1_0(min(len(x),len(y))),0(),x,y,nil()) #2: #addList(x,y) -> #le❆1_0(min(len(x),len(y))) #3: #addList(x,y) -> #min(len(x),len(y)) #4: #addList(x,y) -> #len(x) #5: #addList(x,y) -> #len(y) #6: #take(s(x),cons(y,ys)) -> #take(x,ys) #7: #sum(x,s(y)) -> #sum(x,y) #8: #le❆1_s(x,s(y)) -> #le(x,y) #9: #len(cons(x,xs)) -> #len(xs) #10: #le(s(_1),_2) ->? #le❆1_s(_1,_2) #11: #le(0(),_1) ->? #le❆1_0(_1) #12: #min(s(x),s(y)) -> #min(x,y) #13: #if(true(),c,xs,ys,z) -> #if(le❆1_s(c,min(len(xs),len(ys))),s(c),xs,ys,cons(sum(take(c,xs),take(c,ys)),z)) #14: #if(true(),c,xs,ys,z) -> #le❆1_s(c,min(len(xs),len(ys))) #15: #if(true(),c,xs,ys,z) -> #min(len(xs),len(ys)) #16: #if(true(),c,xs,ys,z) -> #len(xs) #17: #if(true(),c,xs,ys,z) -> #len(ys) #18: #if(true(),c,xs,ys,z) -> #sum(take(c,xs),take(c,ys)) #19: #if(true(),c,xs,ys,z) -> #take(c,xs) #20: #if(true(),c,xs,ys,z) -> #take(c,ys) Number of SCCs: 5, DPs: 6, edges: 6 SCC { #9 } Removing DPs: Order(PosReal,>,Sum)... succeeded. le(x1,x2) weight: 0 #len(x1) weight: x1 s(x1) weight: 0 #le(x1,x2) weight: 0 #take(x1,x2) weight: 0 take(x1,x2) weight: 0 false() weight: 0 #min(x1,x2) weight: 0 addList(x1,x2) weight: 0 true() weight: 0 #le❆1_0(x1) weight: 0 le❆1_s(x1,x2) weight: 0 sum(x1,x2) weight: 0 0() weight: 0 if(x1,x2,x3,x4,x5) weight: 0 nil() weight: 0 #le❆1_s(x1,x2) weight: 0 min(x1,x2) weight: 0 cons(x1,x2) weight: (/ 1 2) + x2 #if(x1,x2,x3,x4,x5) weight: 0 le❆1_0(x1) weight: 0 #sum(x1,x2) weight: 0 #addList(x1,x2) weight: 0 len(x1) weight: 0 Usable rules: { } Removed DPs: #9 Number of SCCs: 4, DPs: 5, edges: 5 SCC { #7 } Removing DPs: Order(PosReal,>,Sum)... succeeded. le(x1,x2) weight: 0 #len(x1) weight: 0 s(x1) weight: (/ 1 2) + x1 #le(x1,x2) weight: 0 #take(x1,x2) weight: 0 take(x1,x2) weight: 0 false() weight: 0 #min(x1,x2) weight: 0 addList(x1,x2) weight: 0 true() weight: 0 #le❆1_0(x1) weight: 0 le❆1_s(x1,x2) weight: 0 sum(x1,x2) weight: 0 0() weight: 0 if(x1,x2,x3,x4,x5) weight: 0 nil() weight: 0 #le❆1_s(x1,x2) weight: 0 min(x1,x2) weight: 0 cons(x1,x2) weight: (/ 1 2) #if(x1,x2,x3,x4,x5) weight: 0 le❆1_0(x1) weight: 0 #sum(x1,x2) weight: x2 #addList(x1,x2) weight: 0 len(x1) weight: 0 Usable rules: { } Removed DPs: #7 Number of SCCs: 3, DPs: 4, edges: 4 SCC { #12 } Removing DPs: Order(PosReal,>,Sum)... succeeded. le(x1,x2) weight: 0 #len(x1) weight: 0 s(x1) weight: (/ 1 2) + x1 #le(x1,x2) weight: 0 #take(x1,x2) weight: 0 take(x1,x2) weight: 0 false() weight: 0 #min(x1,x2) weight: x2 addList(x1,x2) weight: 0 true() weight: 0 #le❆1_0(x1) weight: 0 le❆1_s(x1,x2) weight: 0 sum(x1,x2) weight: 0 0() weight: 0 if(x1,x2,x3,x4,x5) weight: 0 nil() weight: 0 #le❆1_s(x1,x2) weight: 0 min(x1,x2) weight: 0 cons(x1,x2) weight: (/ 1 2) #if(x1,x2,x3,x4,x5) weight: 0 le❆1_0(x1) weight: 0 #sum(x1,x2) weight: 0 #addList(x1,x2) weight: 0 len(x1) weight: 0 Usable rules: { } Removed DPs: #12 Number of SCCs: 2, DPs: 3, edges: 3 SCC { #6 } Removing DPs: Order(PosReal,>,Sum)... succeeded. le(x1,x2) weight: 0 #len(x1) weight: 0 s(x1) weight: (/ 1 2) #le(x1,x2) weight: 0 #take(x1,x2) weight: x2 take(x1,x2) weight: 0 false() weight: 0 #min(x1,x2) weight: 0 addList(x1,x2) weight: 0 true() weight: 0 #le❆1_0(x1) weight: 0 le❆1_s(x1,x2) weight: 0 sum(x1,x2) weight: 0 0() weight: 0 if(x1,x2,x3,x4,x5) weight: 0 nil() weight: 0 #le❆1_s(x1,x2) weight: 0 min(x1,x2) weight: 0 cons(x1,x2) weight: (/ 1 2) + x2 #if(x1,x2,x3,x4,x5) weight: 0 le❆1_0(x1) weight: 0 #sum(x1,x2) weight: 0 #addList(x1,x2) weight: 0 len(x1) weight: 0 Usable rules: { } Removed DPs: #6 Number of SCCs: 1, DPs: 2, edges: 2 SCC { #8 #10 } Removing DPs: Order(PosReal,>,Sum)... succeeded. le(x1,x2) weight: 0 #len(x1) weight: 0 s(x1) weight: (/ 1 2) + x1 #le(x1,x2) weight: x1 #take(x1,x2) weight: 0 take(x1,x2) weight: 0 false() weight: 0 #min(x1,x2) weight: 0 addList(x1,x2) weight: 0 true() weight: 0 #le❆1_0(x1) weight: 0 le❆1_s(x1,x2) weight: 0 sum(x1,x2) weight: 0 0() weight: 0 if(x1,x2,x3,x4,x5) weight: 0 nil() weight: 0 #le❆1_s(x1,x2) weight: (/ 1 4) + x1 min(x1,x2) weight: 0 cons(x1,x2) weight: (/ 1 4) #if(x1,x2,x3,x4,x5) weight: 0 le❆1_0(x1) weight: 0 #sum(x1,x2) weight: 0 #addList(x1,x2) weight: 0 len(x1) weight: 0 Usable rules: { } Removed DPs: #8 #10 Number of SCCs: 0, DPs: 0, edges: 0 YES