Input TRS: 1: f(0()) -> true() 2: f(1()) -> false() 3: f(s(x)) -> f(x) 4: if(true(),s(x),s(y)) -> s(x) 5: if(false(),s(x),s(y)) -> s(y) 6: g(x,c(y)) -> c(g(x,y)) 7: g(x,c(y)) -> g(x,if(f(x),c(g(s(x),y)),c(y))) 8: rand(x) ->= x 9: rand(x) ->= rand(s(x)) Number of strict rules: 7 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #g(x,c(y)) -> #g(x,y) #2: #g(x,c(y)) -> #g(x,if(f(x),c(g(s(x),y)),c(y))) #3: #g(x,c(y)) -> #if(f(x),c(g(s(x),y)),c(y)) #4: #g(x,c(y)) -> #f(x) #5: #g(x,c(y)) -> #g(s(x),y) #6: #f(s(x)) -> #f(x) Number of SCCs: 2, DPs: 3, edges: 5 SCC { #6 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... QLPOpS... Order(PosReal,>,MaxSum)... QWPOpS(PosReal,>,MaxSum)... succeeded. 1() weight: 0 status: [] precedence above: s(x1) weight: x1 status: [x1] precedence above: false c true f false() weight: 0 status: [] precedence above: c(x1) weight: x1 status: [] precedence above: false true f true() weight: 0 status: [] precedence above: f(x1) weight: 0 status: [] precedence above: false true rand(x1) weight: (/ 1 8) + x1 status: [] precedence above: 0() weight: 0 status: [] precedence above: if(x1,x2,x3) weight: max{0, (/ 1 4) + x3, (/ 1 4) + x2} status: [x3] precedence above: s false c true f g #f(x1) weight: x1 status: [x1] precedence above: #g(x1,x2) weight: (/ 1 8) + x2 + x1 status: [x1,x2] precedence above: #if(x1,x2,x3) weight: (/ 1 8) + x3 + x2 status: [x2,x3] precedence above: g(x1,x2) weight: max{0, (/ 1 8) + x1} status: [] precedence above: s false c true f Removed DPs: #6 Number of SCCs: 1, DPs: 2, edges: 4 SCC { #1 #5 } Removing DPs: Order(PosReal,>,Sum)... succeeded. 1() weight: 0 s(x1) weight: 0 false() weight: 0 c(x1) weight: (/ 1 4) + x1 true() weight: 0 f(x1) weight: (/ 1 4) rand(x1) weight: x1 0() weight: 0 if(x1,x2,x3) weight: (/ 1 4) #f(x1) weight: 0 #g(x1,x2) weight: x2 #if(x1,x2,x3) weight: 0 g(x1,x2) weight: (/ 1 4) + x2 Removed DPs: #1 #5 Number of SCCs: 0, DPs: 0, edges: 0 YES