Input TRS: 1: while(true(),s(s(s(i)))) -> while(gt(s(s(s(i))),s(0())),f(s(s(s(i))))) 2: f(i) -> if(neq(i,s(s(0()))),i) 3: gt(s(x),s(y)) -> gt(x,y) 4: gt(s(x),0()) -> true() 5: gt(0(),0()) -> false() 6: gt(0(),s(y)) -> false() 7: if(true(),i) -> plus(i,s(0())) 8: if(false(),i) -> i 9: neq(s(x),s(y)) -> neq(x,y) 10: neq(0(),0()) -> false() 11: neq(0(),s(y)) -> true() 12: neq(s(x),0()) -> true() 13: plus(s(x),y) -> plus(x,s(y)) 14: plus(0(),y) -> y Number of strict rules: 14 Direct Order(PosReal,>,Poly) ... failed. Freezing gt 1: while(true(),s(s(s(i)))) -> while(gt❆1_s(s(s(i)),s(0())),f(s(s(s(i))))) 2: f(i) -> if(neq(i,s(s(0()))),i) 3: gt❆1_s(x,s(y)) -> gt(x,y) 4: gt❆1_s(x,0()) -> true() 5: gt❆1_0(0()) -> false() 6: gt❆1_0(s(y)) -> false() 7: if(true(),i) -> plus(i,s(0())) 8: if(false(),i) -> i 9: neq(s(x),s(y)) -> neq(x,y) 10: neq(0(),0()) -> false() 11: neq(0(),s(y)) -> true() 12: neq(s(x),0()) -> true() 13: plus(s(x),y) -> plus(x,s(y)) 14: plus(0(),y) -> y 15: gt(0(),_1) ->= gt❆1_0(_1) 16: gt(s(_1),_2) ->= gt❆1_s(_1,_2) Number of strict rules: 14 Direct Order(PosReal,>,Poly) ... failed. Dependency Pairs: #1: #f(i) -> #if(neq(i,s(s(0()))),i) #2: #f(i) -> #neq(i,s(s(0()))) #3: #plus(s(x),y) -> #plus(x,s(y)) #4: #neq(s(x),s(y)) -> #neq(x,y) #5: #if(true(),i) -> #plus(i,s(0())) #6: #gt(s(_1),_2) ->? #gt❆1_s(_1,_2) #7: #gt❆1_s(x,s(y)) -> #gt(x,y) #8: #while(true(),s(s(s(i)))) -> #while(gt❆1_s(s(s(i)),s(0())),f(s(s(s(i))))) #9: #while(true(),s(s(s(i)))) -> #gt❆1_s(s(s(i)),s(0())) #10: #while(true(),s(s(s(i)))) -> #f(s(s(s(i)))) #11: #gt(0(),_1) ->? #gt❆1_0(_1) Number of SCCs: 4, DPs: 5, edges: 5 SCC { #4 } Removing DPs: Order(PosReal,>,Sum)... succeeded. neq(x1,x2) weight: 0 s(x1) weight: (/ 1 2) + x1 gt❆1_0(x1) weight: 0 gt(x1,x2) weight: 0 #plus(x1,x2) weight: 0 false() weight: 0 #while(x1,x2) weight: 0 true() weight: 0 f(x1) weight: 0 0() weight: 0 if(x1,x2) weight: 0 while(x1,x2) weight: 0 #neq(x1,x2) weight: x2 #gt❆1_0(x1) weight: 0 #gt(x1,x2) weight: 0 #f(x1) weight: 0 #gt❆1_s(x1,x2) weight: 0 plus(x1,x2) weight: 0 #if(x1,x2) weight: 0 gt❆1_s(x1,x2) weight: 0 Usable rules: { } Removed DPs: #4 Number of SCCs: 3, DPs: 4, edges: 4 SCC { #3 } Removing DPs: Order(PosReal,>,Sum)... succeeded. neq(x1,x2) weight: 0 s(x1) weight: (/ 1 2) + x1 gt❆1_0(x1) weight: 0 gt(x1,x2) weight: 0 #plus(x1,x2) weight: x1 false() weight: 0 #while(x1,x2) weight: 0 true() weight: 0 f(x1) weight: 0 0() weight: 0 if(x1,x2) weight: 0 while(x1,x2) weight: 0 #neq(x1,x2) weight: 0 #gt❆1_0(x1) weight: 0 #gt(x1,x2) weight: 0 #f(x1) weight: 0 #gt❆1_s(x1,x2) weight: 0 plus(x1,x2) weight: 0 #if(x1,x2) weight: 0 gt❆1_s(x1,x2) weight: 0 Usable rules: { } Removed DPs: #3 Number of SCCs: 2, DPs: 3, edges: 3 SCC { #6 #7 } Removing DPs: Order(PosReal,>,Sum)... succeeded. neq(x1,x2) weight: 0 s(x1) weight: (/ 1 2) + x1 gt❆1_0(x1) weight: 0 gt(x1,x2) weight: 0 #plus(x1,x2) weight: 0 false() weight: 0 #while(x1,x2) weight: 0 true() weight: 0 f(x1) weight: 0 0() weight: 0 if(x1,x2) weight: 0 while(x1,x2) weight: 0 #neq(x1,x2) weight: 0 #gt❆1_0(x1) weight: 0 #gt(x1,x2) weight: (/ 1 4) + x2 #f(x1) weight: 0 #gt❆1_s(x1,x2) weight: x2 plus(x1,x2) weight: 0 #if(x1,x2) weight: 0 gt❆1_s(x1,x2) weight: 0 Usable rules: { } Removed DPs: #6 #7 Number of SCCs: 1, DPs: 1, edges: 1 SCC { #8 } 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