Input TRS: 1: a__nats() -> cons(|0|(),incr(nats())) 2: a__pairs() -> cons(|0|(),incr(odds())) 3: a__odds() -> a__incr(a__pairs()) 4: a__incr(cons(X,XS)) -> cons(s(mark(X)),incr(XS)) 5: a__head(cons(X,XS)) -> mark(X) 6: a__tail(cons(X,XS)) -> mark(XS) 7: mark(nats()) -> a__nats() 8: mark(pairs()) -> a__pairs() 9: mark(odds()) -> a__odds() 10: mark(incr(X)) -> a__incr(mark(X)) 11: mark(head(X)) -> a__head(mark(X)) 12: mark(tail(X)) -> a__tail(mark(X)) 13: mark(|0|()) -> |0|() 14: mark(s(X)) -> s(mark(X)) 15: mark(nil()) -> nil() 16: mark(cons(X1,X2)) -> cons(mark(X1),X2) 17: a__nats() -> nats() 18: a__pairs() -> pairs() 19: a__odds() -> odds() 20: a__incr(X) -> incr(X) 21: a__head(X) -> head(X) 22: a__tail(X) -> tail(X) Number of strict rules: 22 Direct Order(PosReal,>,Poly) ... removes: 5 6 |0|() weight: 0 incr(x1) weight: x1 s(x1) weight: x1 a__incr(x1) weight: x1 pairs() weight: 0 a__nats() weight: 0 a__odds() weight: 0 tail(x1) weight: (/ 1 4) + x1 odds() weight: 0 nil() weight: 0 mark(x1) weight: x1 nats() weight: 0 head(x1) weight: (/ 1 4) + x1 cons(x1,x2) weight: x1 + x2 a__pairs() weight: 0 a__tail(x1) weight: (/ 1 4) + x1 a__head(x1) weight: (/ 1 4) + x1 Number of strict rules: 20 Direct Order(PosReal,>,Poly) ... removes: 21 22 12 11 |0|() weight: 0 incr(x1) weight: 2 * x1 s(x1) weight: x1 a__incr(x1) weight: 2 * x1 pairs() weight: 0 a__nats() weight: 0 a__odds() weight: 0 tail(x1) weight: (/ 1 4) + x1 odds() weight: 0 nil() weight: 0 mark(x1) weight: 2 * x1 nats() weight: 0 head(x1) weight: (/ 117617 4) + x1 cons(x1,x2) weight: x1 + x2 a__pairs() weight: 0 a__tail(x1) weight: (/ 3 8) + x1 a__head(x1) weight: (/ 470467 8) + x1 Number of strict rules: 16 Direct Order(PosReal,>,Poly) ... failed. Freezing ... failed. Dependency Pairs: #1: #mark(odds()) -> #a__odds() #2: #mark(s(X)) -> #mark(X) #3: #mark(nats()) -> #a__nats() #4: #mark(incr(X)) -> #a__incr(mark(X)) #5: #mark(incr(X)) -> #mark(X) #6: #mark(cons(X1,X2)) -> #mark(X1) #7: #a__odds() -> #a__incr(a__pairs()) #8: #a__odds() -> #a__pairs() #9: #mark(pairs()) -> #a__pairs() #10: #a__incr(cons(X,XS)) -> #mark(X) Number of SCCs: 1, DPs: 7, edges: 23 SCC { #1 #2 #4..7 #10 } Removing DPs: Order(PosReal,>,Sum)... Order(PosReal,>,Max)... succeeded. |0|() weight: (/ 1 8) incr(x1) weight: x1 s(x1) weight: x1 a__incr(x1) weight: x1 pairs() weight: (/ 1 2) a__nats() weight: (/ 1 2) #a__pairs() weight: 0 a__odds() weight: (/ 1 2) tail(x1) weight: 0 #mark(x1) weight: (/ 1 4) + x1 odds() weight: (/ 1 2) nil() weight: (/ 1 8) #a__nats() weight: 0 mark(x1) weight: x1 nats() weight: (/ 1 2) #a__incr(x1) weight: x1 head(x1) weight: 0 cons(x1,x2) weight: max{x2, (/ 3 8) + x1} #a__odds() weight: (/ 5 8) a__pairs() weight: (/ 1 2) a__tail(x1) weight: 0 a__head(x1) weight: 0 Usable rules: { 1..4 7..10 13..20 } Removed DPs: #1 #4 #6 #7 #10 Number of SCCs: 1, DPs: 2, edges: 4 SCC { #2 #5 } Removing DPs: Order(PosReal,>,Sum)... succeeded. |0|() weight: 0 incr(x1) weight: (/ 3 4) + x1 s(x1) weight: (/ 1 4) + x1 a__incr(x1) weight: (/ 1 2) pairs() weight: 0 a__nats() weight: 0 #a__pairs() weight: 0 a__odds() weight: 0 tail(x1) weight: 0 #mark(x1) weight: x1 odds() weight: 0 nil() weight: 0 #a__nats() weight: 0 mark(x1) weight: (/ 1 4) nats() weight: 0 #a__incr(x1) weight: 0 head(x1) weight: 0 cons(x1,x2) weight: (/ 3 4) #a__odds() weight: 0 a__pairs() weight: 0 a__tail(x1) weight: 0 a__head(x1) weight: 0 Usable rules: { } Removed DPs: #2 #5 Number of SCCs: 0, DPs: 0, edges: 0 YES