YES Input TRS: 1: a__terms(N) -> cons(recip(a__sqr(mark(N))),terms(s(N))) 2: a__sqr(0()) -> 0() 3: a__sqr(s(X)) -> s(a__add(a__sqr(mark(X)),a__dbl(mark(X)))) 4: a__dbl(0()) -> 0() 5: a__dbl(s(X)) -> s(s(a__dbl(mark(X)))) 6: a__add(0(),X) -> mark(X) 7: a__add(s(X),Y) -> s(a__add(mark(X),mark(Y))) 8: a__first(0(),X) -> nil() 9: a__first(s(X),cons(Y,Z)) -> cons(mark(Y),first(X,Z)) 10: mark(terms(X)) -> a__terms(mark(X)) 11: mark(sqr(X)) -> a__sqr(mark(X)) 12: mark(add(X1,X2)) -> a__add(mark(X1),mark(X2)) 13: mark(dbl(X)) -> a__dbl(mark(X)) 14: mark(first(X1,X2)) -> a__first(mark(X1),mark(X2)) 15: mark(cons(X1,X2)) -> cons(mark(X1),X2) 16: mark(recip(X)) -> recip(mark(X)) 17: mark(s(X)) -> s(mark(X)) 18: mark(0()) -> 0() 19: mark(nil()) -> nil() 20: a__terms(X) -> terms(X) 21: a__sqr(X) -> sqr(X) 22: a__add(X1,X2) -> add(X1,X2) 23: a__dbl(X) -> dbl(X) 24: a__first(X1,X2) -> first(X1,X2) Number of strict rules: 24 Direct POLO(bPol) ... failed. Uncurrying ... failed. Dependency Pairs: #1: #a__add(0(),X) -> #mark(X) #2: #mark(dbl(X)) -> #a__dbl(mark(X)) #3: #mark(dbl(X)) -> #mark(X) #4: #a__first(s(X),cons(Y,Z)) -> #mark(Y) #5: #mark(sqr(X)) -> #a__sqr(mark(X)) #6: #mark(sqr(X)) -> #mark(X) #7: #mark(add(X1,X2)) -> #a__add(mark(X1),mark(X2)) #8: #mark(add(X1,X2)) -> #mark(X1) #9: #mark(add(X1,X2)) -> #mark(X2) #10: #mark(first(X1,X2)) -> #a__first(mark(X1),mark(X2)) #11: #mark(first(X1,X2)) -> #mark(X1) #12: #mark(first(X1,X2)) -> #mark(X2) #13: #a__add(s(X),Y) -> #a__add(mark(X),mark(Y)) #14: #a__add(s(X),Y) -> #mark(X) #15: #a__add(s(X),Y) -> #mark(Y) #16: #mark(terms(X)) -> #a__terms(mark(X)) #17: #mark(terms(X)) -> #mark(X) #18: #a__dbl(s(X)) -> #a__dbl(mark(X)) #19: #a__dbl(s(X)) -> #mark(X) #20: #mark(s(X)) -> #mark(X) #21: #mark(recip(X)) -> #mark(X) #22: #a__sqr(s(X)) -> #a__add(a__sqr(mark(X)),a__dbl(mark(X))) #23: #a__sqr(s(X)) -> #a__sqr(mark(X)) #24: #a__sqr(s(X)) -> #mark(X) #25: #a__sqr(s(X)) -> #a__dbl(mark(X)) #26: #a__sqr(s(X)) -> #mark(X) #27: #a__terms(N) -> #a__sqr(mark(N)) #28: #a__terms(N) -> #mark(N) #29: #mark(cons(X1,X2)) -> #mark(X1) Number of SCCs: 1, DPs: 29 SCC { #1..29 } POLO(Sum)... POLO(max)... succeeded. s w: x1 #a__first w: max(x2 + 19308) recip w: x1 + 1 dbl w: x1 + 32287 #a__add w: max(x1 + 19306, x2 + 19307) a__add w: max(x1, x2 + 11799) a__dbl w: x1 + 32287 a__sqr w: x1 + 44086 #a__terms w: x1 + 63393 #mark w: x1 + 19306 0 w: 8368 nil w: 4 #a__dbl w: x1 + 19307 mark w: x1 first w: max(x1 + 1, x2 + 3) a__first w: max(x1 + 1, x2 + 3) cons w: max(x1 + 4) add w: max(x1, x2 + 11799) sqr w: x1 + 44086 a__terms w: x1 + 44091 #a__sqr w: x1 + 63392 terms w: x1 + 44091 USABLE RULES: { 1..24 } Removed DPs: #1..4 #6 #9..12 #15..17 #19 #21 #24..29 Number of SCCs: 2, DPs: 9 SCC { #18 } POLO(Sum)... POLO(max)... QLPOS... succeeded. s s: [1] p: 0 #a__first s: [2,1] p: 0 recip s: [1] p: 0 dbl s: [1] p: 1 #a__add s: [1,2] p: 0 a__add s: [2,1] p: 1 a__dbl s: [1] p: 1 a__sqr s: [1] p: 2 #a__terms s: 1 #mark s: [] p: 0 0 s: [] p: 3 nil s: [] p: 4 #a__dbl s: 1 mark s: 1 first s: [] p: 4 a__first s: [] p: 4 cons s: [] p: 0 add s: [2,1] p: 1 sqr s: [1] p: 2 a__terms s: [] p: 3 #a__sqr s: 1 terms s: [] p: 3 USABLE RULES: { 1..24 } Removed DPs: #18 Number of SCCs: 1, DPs: 8 SCC { #5 #7 #8 #13 #14 #20 #22 #23 } POLO(Sum)... POLO(max)... QLPOS... succeeded. s s: [1] p: 0 #a__first s: [2,1] p: 0 recip s: [1] p: 0 dbl s: [1] p: 1 #a__add s: 1 a__add s: [2,1] p: 1 a__dbl s: [1] p: 1 a__sqr s: [1] p: 2 #a__terms s: 1 #mark s: 1 0 s: [] p: 3 nil s: [] p: 4 #a__dbl s: [] p: 0 mark s: 1 first s: [] p: 4 a__first s: [] p: 4 cons s: [] p: 0 add s: [2,1] p: 1 sqr s: [1] p: 2 a__terms s: [] p: 3 #a__sqr s: [1] p: 2 terms s: [] p: 3 USABLE RULES: { 1..24 } Removed DPs: #7 #8 #13 #14 #20 #22 #23 Number of SCCs: 0, DPs: 0