Input TRS: 1: nonZero(0()) -> false() 2: nonZero(s(x)) -> true() 3: p(0()) -> 0() 4: p(s(x)) -> x 5: id_inc(x) -> x 6: id_inc(x) -> s(x) 7: random(x) -> rand(x,0()) 8: rand(x,y) -> if(nonZero(x),x,y) 9: if(false(),x,y) -> y 10: if(true(),x,y) -> rand(p(x),id_inc(y)) Number of strict rules: 10 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #random(x) -> #rand(x,0()) #2: #if(true(),x,y) -> #rand(p(x),id_inc(y)) #3: #if(true(),x,y) -> #p(x) #4: #if(true(),x,y) -> #id_inc(y) #5: #rand(x,y) -> #if(nonZero(x),x,y) #6: #rand(x,y) -> #nonZero(x) Number of SCCs: 1, DPs: 2, edges: 2 SCC { #2 #5 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... QLPOpS... Order(PosReal,>,MaxSum)... succeeded. s(x1) weight: max{0, (/ 3 8) + x1} #rand(x1,x2) weight: max{0, (/ 1 4) + x1} nonZero(x1) weight: max{0, (/ 1 4) + x1} false() weight: (/ 1 4) #p(x1) weight: 0 true() weight: (/ 3 8) #nonZero(x1) weight: 0 rand(x1,x2) weight: 0 #id_inc(x1) weight: 0 p(x1) weight: max{0, (- (/ 3 8)) + x1} 0() weight: 0 if(x1,x2,x3) weight: 0 random(x1) weight: 0 #random(x1) weight: 0 id_inc(x1) weight: (max (- (/ 1 8)) 0) #if(x1,x2,x3) weight: max{0, (- (/ 1 8)) + x1, (/ 1 8) + x2} Usable rules: { 1..4 } Removed DPs: #5 Number of SCCs: 0, DPs: 0, edges: 0 YES