Input TRS: 1: half(0()) -> 0() 2: half(s(0())) -> 0() 3: half(s(s(x))) -> s(half(x)) 4: lastbit(0()) -> 0() 5: lastbit(s(0())) -> s(0()) 6: lastbit(s(s(x))) -> lastbit(x) 7: zero(0()) -> true() 8: zero(s(x)) -> false() 9: conv(x) -> conviter(x,cons(0(),nil())) 10: conviter(x,l) -> if(zero(x),x,l) 11: if(true(),x,l) -> l 12: if(false(),x,l) -> conviter(half(x),cons(lastbit(x),l)) Number of strict rules: 12 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #lastbit(s(s(x))) -> #lastbit(x) #2: #conv(x) -> #conviter(x,cons(0(),nil())) #3: #if(false(),x,l) -> #conviter(half(x),cons(lastbit(x),l)) #4: #if(false(),x,l) -> #half(x) #5: #if(false(),x,l) -> #lastbit(x) #6: #conviter(x,l) -> #if(zero(x),x,l) #7: #conviter(x,l) -> #zero(x) #8: #half(s(s(x))) -> #half(x) Number of SCCs: 3, DPs: 4, edges: 4 SCC { #1 } Removing DPs: Order(PosReal,>,Sum)... succeeded. zero(x1) weight: 0 conv(x1) weight: 0 s(x1) weight: (/ 1 4) + x1 #conv(x1) weight: 0 false() weight: 0 #half(x1) weight: 0 #lastbit(x1) weight: x1 true() weight: 0 half(x1) weight: 0 lastbit(x1) weight: 0 #conviter(x1,x2) weight: 0 0() weight: 0 if(x1,x2,x3) weight: 0 conviter(x1,x2) weight: 0 nil() weight: 0 cons(x1,x2) weight: 0 #if(x1,x2,x3) weight: 0 #zero(x1) weight: 0 Usable rules: { } Removed DPs: #1 Number of SCCs: 2, DPs: 3, edges: 3 SCC { #8 } Removing DPs: Order(PosReal,>,Sum)... succeeded. zero(x1) weight: 0 conv(x1) weight: 0 s(x1) weight: (/ 1 4) + x1 #conv(x1) weight: 0 false() weight: 0 #half(x1) weight: x1 #lastbit(x1) weight: 0 true() weight: 0 half(x1) weight: 0 lastbit(x1) weight: 0 #conviter(x1,x2) weight: 0 0() weight: 0 if(x1,x2,x3) weight: 0 conviter(x1,x2) weight: 0 nil() weight: 0 cons(x1,x2) weight: 0 #if(x1,x2,x3) weight: 0 #zero(x1) weight: 0 Usable rules: { } Removed DPs: #8 Number of SCCs: 1, DPs: 2, edges: 2 SCC { #3 #6 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... QLPOpS... Order(PosReal,>,MaxSum)... succeeded. zero(x1) weight: max{0, (- (/ 1 8)) + x1} conv(x1) weight: 0 s(x1) weight: max{0, (/ 5 8) + x1} #conv(x1) weight: 0 false() weight: (/ 1 8) #half(x1) weight: 0 #lastbit(x1) weight: 0 true() weight: 0 half(x1) weight: max{0, (- (/ 1 2)) + x1} lastbit(x1) weight: (max (/ 5 8) 0) #conviter(x1,x2) weight: max{0, (/ 3 8) + x1, (/ 1 8) + x2} 0() weight: 0 if(x1,x2,x3) weight: 0 conviter(x1,x2) weight: 0 nil() weight: 0 cons(x1,x2) weight: max{0, (- (/ 7 8)) + x1} #if(x1,x2,x3) weight: max{0, (/ 3 8) + x1, (/ 3 8) + x2} #zero(x1) weight: 0 Usable rules: { 1..8 } Removed DPs: #3 Number of SCCs: 0, DPs: 0, edges: 0 YES