YES Input TRS: 1: top(sent(x)) -> top(check(rest(x))) 2: rest(nil()) -> sent(nil()) 3: rest(cons(x,y)) -> sent(y) 4: check(sent(x)) -> sent(check(x)) 5: check(rest(x)) -> rest(check(x)) 6: check(cons(x,y)) -> cons(check(x),y) 7: check(cons(x,y)) -> cons(x,check(y)) 8: check(cons(x,y)) -> cons(x,y) Number of strict rules: 8 Direct POLO(bPol) ... removes: 3 top w: x1 check w: x1 nil w: 1 rest w: 2 * x1 + 26286 sent w: 2 * x1 + 26286 cons w: x1 + 2 * x2 + 8946 Number of strict rules: 7 Direct POLO(bPol) ... removes: 8 7 6 top w: x1 + 12212 check w: 2 * x1 nil w: 0 rest w: x1 sent w: 2 * x1 cons w: x1 + 2 * x2 + 20585 Number of strict rules: 4 Direct POLO(bPol) ... failed. Uncurrying ... failed. Dependency Pairs: #1: #check(rest(x)) -> #rest(check(x)) #2: #check(rest(x)) -> #check(x) #3: #top(sent(x)) -> #top(check(rest(x))) #4: #top(sent(x)) -> #check(rest(x)) #5: #top(sent(x)) -> #rest(x) #6: #check(sent(x)) -> #check(x) Number of SCCs: 2, DPs: 3 SCC { #3 } POLO(Sum)... POLO(max)... QLPOS... POLO(mSum)... QWPOpS(mSum)... Mat2b... succeeded. #rest w: [0;0] top w: [0;0] #check w: [0;0] #top w: [1,1;0,0] * x1 check w: [0,0;0,1] * x1 + [7629;13466] nil w: [22073;977] rest w: [1,0;1,0] * x1 + [0;32528] sent w: x1 + [0;53624] cons w: [0;0] USABLE RULES: { 2 4 5 } Removed DPs: #3 Number of SCCs: 1, DPs: 2 SCC { #2 #6 } POLO(Sum)... succeeded. #rest w: 0 top w: 0 #check w: x1 #top w: 0 check w: 1 nil w: 40651 rest w: x1 + 1 sent w: x1 + 2 cons w: 0 USABLE RULES: { } Removed DPs: #2 #6 Number of SCCs: 0, DPs: 0