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