YES Input TRS: 1: active(2nd(cons1(X,cons(Y,Z)))) -> mark(Y) 2: active(2nd(cons(X,X1))) -> mark(2nd(cons1(X,X1))) 3: active(from(X)) -> mark(cons(X,from(s(X)))) 4: active(2nd(X)) -> 2nd(active(X)) 5: active(cons(X1,X2)) -> cons(active(X1),X2) 6: active(from(X)) -> from(active(X)) 7: active(s(X)) -> s(active(X)) 8: active(cons1(X1,X2)) -> cons1(active(X1),X2) 9: active(cons1(X1,X2)) -> cons1(X1,active(X2)) 10: 2nd(mark(X)) -> mark(2nd(X)) 11: cons(mark(X1),X2) -> mark(cons(X1,X2)) 12: from(mark(X)) -> mark(from(X)) 13: s(mark(X)) -> mark(s(X)) 14: cons1(mark(X1),X2) -> mark(cons1(X1,X2)) 15: cons1(X1,mark(X2)) -> mark(cons1(X1,X2)) 16: proper(2nd(X)) -> 2nd(proper(X)) 17: proper(cons(X1,X2)) -> cons(proper(X1),proper(X2)) 18: proper(from(X)) -> from(proper(X)) 19: proper(s(X)) -> s(proper(X)) 20: proper(cons1(X1,X2)) -> cons1(proper(X1),proper(X2)) 21: 2nd(ok(X)) -> ok(2nd(X)) 22: cons(ok(X1),ok(X2)) -> ok(cons(X1,X2)) 23: from(ok(X)) -> ok(from(X)) 24: s(ok(X)) -> ok(s(X)) 25: cons1(ok(X1),ok(X2)) -> ok(cons1(X1,X2)) 26: top(mark(X)) -> top(proper(X)) 27: top(ok(X)) -> top(active(X)) Number of strict rules: 27 Direct POLO(bPol) ... removes: 4 15 8 1 3 21 26 27 22 5 10 25 14 9 2 s w: x1 top w: x1 2nd w: 2 * x1 + 24327 cons1 w: 2 * x1 + 2 * x2 + 24327 proper w: x1 ok w: 2 * x1 + 24328 from w: x1 mark w: x1 + 1 active w: 2 * x1 + 24326 cons w: x1 + x2 + 24324 Number of strict rules: 12 Direct POLO(bPol) ... removes: 12 23 11 6 s w: x1 top w: x1 + 6167 2nd w: 2 * x1 + 3 cons1 w: 2 * x1 + 2 * x2 + 3 proper w: x1 ok w: 2 * x1 + 5 from w: 2 * x1 + 4 mark w: x1 + 1 active w: 2 * x1 + 3 cons w: 2 * x1 + x2 + 3 Number of strict rules: 8 Direct POLO(bPol) ... failed. Uncurrying ... failed. Dependency Pairs: #1: #s(mark(X)) -> #s(X) #2: #s(ok(X)) -> #s(X) #3: #proper(cons1(X1,X2)) -> #proper(X1) #4: #proper(cons1(X1,X2)) -> #proper(X2) #5: #active(s(X)) -> #s(active(X)) #6: #active(s(X)) -> #active(X) #7: #proper(cons(X1,X2)) -> #proper(X1) #8: #proper(cons(X1,X2)) -> #proper(X2) #9: #proper(s(X)) -> #s(proper(X)) #10: #proper(s(X)) -> #proper(X) #11: #proper(2nd(X)) -> #proper(X) #12: #proper(from(X)) -> #proper(X) Number of SCCs: 3, DPs: 10 SCC { #6 } POLO(Sum)... succeeded. s w: x1 + 1 top w: 0 2nd w: 0 cons1 w: 0 proper w: 0 ok w: 0 from w: 0 #s w: 0 mark w: 0 #proper w: 0 active w: 0 cons w: 0 #active w: x1 USABLE RULES: { } Removed DPs: #6 Number of SCCs: 2, DPs: 9 SCC { #1 #2 } POLO(Sum)... succeeded. s w: 1 top w: 0 2nd w: 0 cons1 w: 0 proper w: 0 ok w: x1 + 1 from w: 0 #s w: x1 mark w: x1 + 1 #proper w: 0 active w: 0 cons w: 0 #active w: 0 USABLE RULES: { } Removed DPs: #1 #2 Number of SCCs: 1, DPs: 7 SCC { #3 #4 #7 #8 #10..12 } POLO(Sum)... succeeded. s w: x1 + 1 top w: 0 2nd w: x1 + 1 cons1 w: x1 + x2 + 1 proper w: 0 ok w: 1 from w: x1 + 1 #s w: 0 mark w: 1 #proper w: x1 active w: 0 cons w: x1 + x2 + 1 #active w: 0 USABLE RULES: { } Removed DPs: #3 #4 #7 #8 #10..12 Number of SCCs: 0, DPs: 0