Input TRS: 1: half(x) -> if(ge(x,s(s(|0|()))),x) 2: if(false(),x) -> |0|() 3: if(true(),x) -> s(half(p(p(x)))) 4: p(|0|()) -> |0|() 5: p(s(x)) -> x 6: ge(x,|0|()) -> true() 7: ge(|0|(),s(x)) -> false() 8: ge(s(x),s(y)) -> ge(x,y) 9: log(|0|()) -> |0|() 10: log(s(x)) -> s(log(half(s(x)))) Number of strict rules: 10 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #log(s(x)) -> #log(half(s(x))) #2: #log(s(x)) -> #half(s(x)) #3: #if(true(),x) -> #half(p(p(x))) #4: #if(true(),x) -> #p(p(x)) #5: #if(true(),x) -> #p(x) #6: #half(x) -> #if(ge(x,s(s(|0|()))),x) #7: #half(x) -> #ge(x,s(s(|0|()))) #8: #ge(s(x),s(y)) -> #ge(x,y) Number of SCCs: 3, DPs: 4, edges: 4 SCC { #1 } 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. |0|() weight: 0; (- (/ 1 16)) s(x1) weight: max{0, (/ 1 4) + x1_1}; (- (/ 1 2)) + x1_2 false() weight: 0; (- (/ 1 16)) #ge(x1,x2) weight: 0; 0 #log(x1) weight: max{0, (- (/ 1 16)) + x1_1}; 0 #half(x1) weight: 0; 0 #p(x1) weight: 0; 0 true() weight: (/ 5 16); (- (/ 1 16)) half(x1) weight: max{0, (- (/ 1 8)) + x1_1}; (- (/ 1 16)) p(x1) weight: max{0, (- (/ 1 8)) + x1_1}; 0 log(x1) weight: 0; 0 if(x1,x2) weight: max{0, (- (/ 1 8)) + x1_2, (- (/ 1 16)) + x1_1, (- (/ 1 8)) + x2_1}; (- (/ 1 16)) ge(x1,x2) weight: max{0, (/ 3 8) + x2_1 + x2_2 + x1_1}; (- (/ 1 16)) #if(x1,x2) weight: 0; 0 Usable rules: { 1..8 } Removed DPs: #1 Number of SCCs: 2, DPs: 3, edges: 3 SCC { #8 } Removing DPs: Order(PosReal,>,Sum)... succeeded. |0|() weight: 0 s(x1) weight: (/ 1 4) + x1 false() weight: 0 #ge(x1,x2) weight: x1 #log(x1) weight: 0 #half(x1) weight: 0 #p(x1) weight: 0 true() weight: 0 half(x1) weight: (/ 1 8) p(x1) weight: (/ 1 8) log(x1) weight: 0 if(x1,x2) weight: (/ 1 4) ge(x1,x2) weight: (/ 1 8) #if(x1,x2) 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)... QWPOpS(PosReal,>,MaxSum)... Order(PosReal,>,Sum-Sum; PosReal,≥,Sum-Sum)... Order(PosReal,>,Sum-Sum; NegReal,≥,Sum)... Order(PosReal,>,MaxSum-Sum; NegReal,≥,Sum)... succeeded. |0|() weight: 0; (- (/ 1 16)) s(x1) weight: max{0, (/ 3 16) + x1_1}; (- (/ 3 8)) + x1_2 false() weight: 0; (- (/ 1 16)) #ge(x1,x2) weight: 0; 0 #log(x1) weight: max{0, x1_1}; 0 #half(x1) weight: max{0, (/ 3 8) + x1_1}; 0 #p(x1) weight: 0; 0 true() weight: (/ 1 4); (- (/ 3 16)) half(x1) weight: max{0, (- (/ 1 8)) + x1_1}; (- (/ 1 16)) p(x1) weight: max{0, (- (/ 3 32)) + x1_1}; 0 log(x1) weight: 0; 0 if(x1,x2) weight: max{0, (- (/ 1 16)) + x1_2, (- (/ 1 16)) + x1_1, (- (/ 1 8)) + x2_1}; (- (/ 1 16)) ge(x1,x2) weight: max{0, (/ 5 16) + x2_1 + x2_2 + x1_1}; (- (/ 1 16)) #if(x1,x2) weight: max{0, (/ 3 16) + x1_1, (/ 1 8) + x2_2, (/ 3 16) + x2_1}; 0 Usable rules: { 4..8 } Removed DPs: #6 Number of SCCs: 0, DPs: 0, edges: 0 YES