Input TRS: 1: table() -> gen(s(0())) 2: gen(x) -> if1(le(x,10()),x) 3: if1(false(),x) -> nil() 4: if1(true(),x) -> if2(x,x) 5: if2(x,y) -> if3(le(y,10()),x,y) 6: if3(true(),x,y) -> cons(entry(x,y,times(x,y)),if2(x,s(y))) 7: if3(false(),x,y) -> gen(s(x)) 8: le(0(),y) -> true() 9: le(s(x),0()) -> false() 10: le(s(x),s(y)) -> le(x,y) 11: plus(0(),y) -> y 12: plus(s(x),y) -> s(plus(x,y)) 13: times(0(),y) -> 0() 14: times(s(x),y) -> plus(y,times(x,y)) 15: 10() -> s(s(s(s(s(s(s(s(s(s(0())))))))))) Number of strict rules: 15 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #gen(x) -> #if1(le(x,10()),x) #2: #gen(x) -> #le(x,10()) #3: #gen(x) -> #10() #4: #if3(true(),x,y) -> #times(x,y) #5: #if3(true(),x,y) -> #if2(x,s(y)) #6: #plus(s(x),y) -> #plus(x,y) #7: #times(s(x),y) -> #plus(y,times(x,y)) #8: #times(s(x),y) -> #times(x,y) #9: #if3(false(),x,y) -> #gen(s(x)) #10: #le(s(x),s(y)) -> #le(x,y) #11: #if2(x,y) -> #if3(le(y,10()),x,y) #12: #if2(x,y) -> #le(y,10()) #13: #if2(x,y) -> #10() #14: #table() -> #gen(s(0())) #15: #if1(true(),x) -> #if2(x,x) Number of SCCs: 4, DPs: 8, edges: 9 SCC { #6 } Removing DPs: Order(PosReal,>,Sum)... succeeded. 10() weight: 0 le(x1,x2) weight: 0 s(x1) weight: (/ 1 2) + x1 #le(x1,x2) weight: 0 #plus(x1,x2) weight: x1 if1(x1,x2) weight: 0 false() weight: 0 true() weight: 0 #if1(x1,x2) weight: 0 table() weight: 0 #table() weight: 0 if2(x1,x2) weight: 0 entry(x1,x2,x3) weight: 0 #if3(x1,x2,x3) weight: 0 #times(x1,x2) weight: 0 0() weight: 0 times(x1,x2) weight: 0 #10() weight: 0 nil() weight: 0 #gen(x1) weight: 0 gen(x1) weight: 0 plus(x1,x2) weight: 0 if3(x1,x2,x3) weight: 0 cons(x1,x2) weight: 0 #if2(x1,x2) weight: 0 Usable rules: { } Removed DPs: #6 Number of SCCs: 3, DPs: 7, edges: 8 SCC { #8 } Removing DPs: Order(PosReal,>,Sum)... succeeded. 10() weight: 0 le(x1,x2) weight: 0 s(x1) weight: (/ 1 2) + x1 #le(x1,x2) weight: 0 #plus(x1,x2) weight: 0 if1(x1,x2) weight: 0 false() weight: 0 true() weight: 0 #if1(x1,x2) weight: 0 table() weight: 0 #table() weight: 0 if2(x1,x2) weight: 0 entry(x1,x2,x3) weight: 0 #if3(x1,x2,x3) weight: 0 #times(x1,x2) weight: x1 0() weight: 0 times(x1,x2) weight: 0 #10() weight: 0 nil() weight: 0 #gen(x1) weight: 0 gen(x1) weight: 0 plus(x1,x2) weight: 0 if3(x1,x2,x3) weight: 0 cons(x1,x2) weight: 0 #if2(x1,x2) weight: 0 Usable rules: { } Removed DPs: #8 Number of SCCs: 2, DPs: 6, edges: 7 SCC { #10 } Removing DPs: Order(PosReal,>,Sum)... succeeded. 10() weight: 0 le(x1,x2) weight: 0 s(x1) weight: (/ 1 2) + x1 #le(x1,x2) weight: x2 #plus(x1,x2) weight: 0 if1(x1,x2) weight: 0 false() weight: 0 true() weight: 0 #if1(x1,x2) weight: 0 table() weight: 0 #table() weight: 0 if2(x1,x2) weight: 0 entry(x1,x2,x3) weight: 0 #if3(x1,x2,x3) weight: 0 #times(x1,x2) weight: 0 0() weight: 0 times(x1,x2) weight: 0 #10() weight: 0 nil() weight: 0 #gen(x1) weight: 0 gen(x1) weight: 0 plus(x1,x2) weight: 0 if3(x1,x2,x3) weight: 0 cons(x1,x2) weight: 0 #if2(x1,x2) weight: 0 Usable rules: { } Removed DPs: #10 Number of SCCs: 1, DPs: 5, edges: 6 SCC { #1 #5 #9 #11 #15 } 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)... succeeded. 10() weight: (/ 51 8); (- (/ 51 8)) le(x1,x2) weight: max{0, (/ 3 8) + x2_1 + x1_2}; (- (/ 1 8)) s(x1) weight: max{0, (/ 5 8) + x1_1}; (- (/ 5 8)) + x1_2 #le(x1,x2) weight: 0; 0 #plus(x1,x2) weight: 0; 0 if1(x1,x2) weight: 0; 0 false() weight: 0; (- (/ 3 8)) true() weight: (/ 1 4); (- (/ 3 8)) #if1(x1,x2) weight: max{0, (- (/ 1 8)) + x1_1, (/ 27 4) + x2_2}; 0 table() weight: 0; 0 #table() weight: 0; 0 if2(x1,x2) weight: 0; 0 entry(x1,x2,x3) weight: 0; 0 #if3(x1,x2,x3) weight: max{0, (- (/ 55 8)) + x1_1, (/ 25 4) + x2_2}; 0 #times(x1,x2) weight: 0; 0 0() weight: (/ 1 8); (- (/ 1 8)) times(x1,x2) weight: 0; 0 #10() weight: 0; 0 nil() weight: 0; 0 #gen(x1) weight: max{0, (/ 27 4) + x1_2}; 0 gen(x1) weight: 0; 0 plus(x1,x2) weight: 0; 0 if3(x1,x2,x3) weight: 0; 0 cons(x1,x2) weight: 0; 0 #if2(x1,x2) weight: max{0, (/ 25 4) + x1_2}; 0 Usable rules: { 8..10 15 } Removed DPs: #15 Number of SCCs: 1, DPs: 2, edges: 2 SCC { #5 #11 } 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)... succeeded. 10() weight: (/ 5 8); 0 le(x1,x2) weight: max{0, (/ 3 16) + x2_1 + x1_2}; 0 s(x1) weight: max{0, (/ 1 16) + x1_1}; (- (/ 1 16)) + x1_2 #le(x1,x2) weight: 0; 0 #plus(x1,x2) weight: 0; 0 if1(x1,x2) weight: 0; 0 false() weight: 0; (- (/ 1 8)) true() weight: (/ 3 16); 0 #if1(x1,x2) weight: 0; 0 table() weight: 0; 0 #table() weight: 0; 0 if2(x1,x2) weight: 0; 0 entry(x1,x2,x3) weight: 0; 0 #if3(x1,x2,x3) weight: max{0, (- (/ 1 16)) + x1_1, (/ 3 4) + x3_2}; 0 #times(x1,x2) weight: 0; 0 0() weight: 0; 0 times(x1,x2) weight: 0; 0 #10() weight: 0; 0 nil() weight: 0; 0 #gen(x1) weight: 0; 0 gen(x1) weight: 0; 0 plus(x1,x2) weight: 0; 0 if3(x1,x2,x3) weight: 0; 0 cons(x1,x2) weight: 0; 0 #if2(x1,x2) weight: max{0, (/ 1 16) + x1_2, (/ 3 4) + x2_2}; 0 Usable rules: { 8..10 15 } Removed DPs: #5 Number of SCCs: 0, DPs: 0, edges: 0 YES