MAYBE TRS: { nats() -> cons(0(), n__incr(n__nats())), nats() -> n__nats(), pairs() -> cons(0(), n__incr(n__odds())), incr(X) -> n__incr(X), incr(cons(X, XS)) -> cons(s(X), n__incr(activate(XS))), odds() -> n__odds(), odds() -> incr(pairs()), activate(X) -> X, activate(n__incr(X)) -> incr(activate(X)), activate(n__nats()) -> nats(), activate(n__odds()) -> odds(), head(cons(X, XS)) -> X, tail(cons(X, XS)) -> activate(XS)} RUF: Strict: { nats() -> cons(0(), n__incr(n__nats())), nats() -> n__nats(), pairs() -> cons(0(), n__incr(n__odds())), incr(X) -> n__incr(X), incr(cons(X, XS)) -> cons(s(X), n__incr(activate(XS))), odds() -> n__odds(), odds() -> incr(pairs()), activate(X) -> X, activate(n__incr(X)) -> incr(activate(X)), activate(n__nats()) -> nats(), activate(n__odds()) -> odds()} Weak: {} DP: Strict: { incr#(cons(X, XS)) -> activate#(XS), odds#() -> pairs#(), odds#() -> incr#(pairs()), activate#(n__incr(X)) -> incr#(activate(X)), activate#(n__incr(X)) -> activate#(X), activate#(n__nats()) -> nats#(), activate#(n__odds()) -> odds#()} Weak: { nats() -> cons(0(), n__incr(n__nats())), nats() -> n__nats(), pairs() -> cons(0(), n__incr(n__odds())), incr(X) -> n__incr(X), incr(cons(X, XS)) -> cons(s(X), n__incr(activate(XS))), odds() -> n__odds(), odds() -> incr(pairs()), activate(X) -> X, activate(n__incr(X)) -> incr(activate(X)), activate(n__nats()) -> nats(), activate(n__odds()) -> odds()} EDG: {(odds#() -> incr#(pairs()), incr#(cons(X, XS)) -> activate#(XS)) (activate#(n__odds()) -> odds#(), odds#() -> incr#(pairs())) (activate#(n__odds()) -> odds#(), odds#() -> pairs#()) (activate#(n__incr(X)) -> incr#(activate(X)), incr#(cons(X, XS)) -> activate#(XS)) (activate#(n__incr(X)) -> activate#(X), activate#(n__incr(X)) -> incr#(activate(X))) (activate#(n__incr(X)) -> activate#(X), activate#(n__incr(X)) -> activate#(X)) (activate#(n__incr(X)) -> activate#(X), activate#(n__nats()) -> nats#()) (activate#(n__incr(X)) -> activate#(X), activate#(n__odds()) -> odds#()) (incr#(cons(X, XS)) -> activate#(XS), activate#(n__incr(X)) -> incr#(activate(X))) (incr#(cons(X, XS)) -> activate#(XS), activate#(n__incr(X)) -> activate#(X)) (incr#(cons(X, XS)) -> activate#(XS), activate#(n__nats()) -> nats#()) (incr#(cons(X, XS)) -> activate#(XS), activate#(n__odds()) -> odds#())} SCCS: Scc: { incr#(cons(X, XS)) -> activate#(XS), odds#() -> incr#(pairs()), activate#(n__incr(X)) -> incr#(activate(X)), activate#(n__incr(X)) -> activate#(X), activate#(n__odds()) -> odds#()} SCC: Strict: { incr#(cons(X, XS)) -> activate#(XS), odds#() -> incr#(pairs()), activate#(n__incr(X)) -> incr#(activate(X)), activate#(n__incr(X)) -> activate#(X), activate#(n__odds()) -> odds#()} Weak: { nats() -> cons(0(), n__incr(n__nats())), nats() -> n__nats(), pairs() -> cons(0(), n__incr(n__odds())), incr(X) -> n__incr(X), incr(cons(X, XS)) -> cons(s(X), n__incr(activate(XS))), odds() -> n__odds(), odds() -> incr(pairs()), activate(X) -> X, activate(n__incr(X)) -> incr(activate(X)), activate(n__nats()) -> nats(), activate(n__odds()) -> odds()} Fail