Input TRS: 1: nthtail(n,l) -> cond(ge(n,length(l)),n,l) 2: cond(true(),n,l) -> l 3: cond(false(),n,l) -> tail(nthtail(s(n),l)) 4: tail(nil()) -> nil() 5: tail(cons(x,l)) -> l 6: length(nil()) -> 0() 7: length(cons(x,l)) -> s(length(l)) 8: ge(u,0()) -> true() 9: ge(0(),s(v)) -> false() 10: ge(s(u),s(v)) -> ge(u,v) Number of strict rules: 10 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #length(cons(x,l)) -> #length(l) #2: #ge(s(u),s(v)) -> #ge(u,v) #3: #cond(false(),n,l) -> #tail(nthtail(s(n),l)) #4: #cond(false(),n,l) -> #nthtail(s(n),l) #5: #nthtail(n,l) -> #cond(ge(n,length(l)),n,l) #6: #nthtail(n,l) -> #ge(n,length(l)) #7: #nthtail(n,l) -> #length(l) Number of SCCs: 3, DPs: 4, edges: 4 SCC { #1 } Removing DPs: Order(PosReal,>,Sum)... succeeded. s(x1) weight: 0 #nthtail(x1,x2) weight: 0 nthtail(x1,x2) weight: 0 false() weight: 0 #ge(x1,x2) weight: 0 true() weight: 0 tail(x1) weight: 0 #cond(x1,x2,x3) weight: 0 0() weight: 0 ge(x1,x2) weight: 0 nil() weight: 0 #tail(x1) weight: 0 cons(x1,x2) weight: (/ 1 2) + x2 length(x1) weight: 0 #length(x1) weight: x1 cond(x1,x2,x3) weight: 0 Usable rules: { } Removed DPs: #1 Number of SCCs: 2, DPs: 3, edges: 3 SCC { #2 } Removing DPs: Order(PosReal,>,Sum)... succeeded. s(x1) weight: (/ 1 2) + x1 #nthtail(x1,x2) weight: 0 nthtail(x1,x2) weight: 0 false() weight: 0 #ge(x1,x2) weight: x2 true() weight: 0 tail(x1) weight: 0 #cond(x1,x2,x3) weight: 0 0() weight: 0 ge(x1,x2) weight: 0 nil() weight: 0 #tail(x1) weight: 0 cons(x1,x2) weight: (/ 1 2) length(x1) weight: 0 #length(x1) weight: 0 cond(x1,x2,x3) weight: 0 Usable rules: { } Removed DPs: #2 Number of SCCs: 1, DPs: 2, edges: 2 SCC { #4 #5 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... QLPOpS... Order(PosReal,>,MaxSum)... QWPOpS(PosReal,>,MaxSum)... Order(PosReal,>,Sum-Sum; PosReal,≥,Sum-Sum)... Order(PosReal,>,Sum-Sum; NegReal,≥,Sum)... Order(PosReal,>,MaxSum-Sum; NegReal,≥,Sum)... failed. Removing edges: failed. Finding a loop... failed. MAYBE