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