MAYBE Problem: nats() -> cons(0(),n__incr(nats())) pairs() -> cons(0(),n__incr(odds())) odds() -> incr(pairs()) incr(cons(X,XS)) -> cons(s(X),n__incr(activate(XS))) head(cons(X,XS)) -> X tail(cons(X,XS)) -> activate(XS) incr(X) -> n__incr(X) activate(n__incr(X)) -> incr(X) activate(X) -> X Proof: DP Processor: DPs: nats#() -> nats#() pairs#() -> odds#() odds#() -> pairs#() odds#() -> incr#(pairs()) incr#(cons(X,XS)) -> activate#(XS) tail#(cons(X,XS)) -> activate#(XS) activate#(n__incr(X)) -> incr#(X) TRS: nats() -> cons(0(),n__incr(nats())) pairs() -> cons(0(),n__incr(odds())) odds() -> incr(pairs()) incr(cons(X,XS)) -> cons(s(X),n__incr(activate(XS))) head(cons(X,XS)) -> X tail(cons(X,XS)) -> activate(XS) incr(X) -> n__incr(X) activate(n__incr(X)) -> incr(X) activate(X) -> X Usable Rule Processor: DPs: nats#() -> nats#() pairs#() -> odds#() odds#() -> pairs#() odds#() -> incr#(pairs()) incr#(cons(X,XS)) -> activate#(XS) tail#(cons(X,XS)) -> activate#(XS) activate#(n__incr(X)) -> incr#(X) TRS: pairs() -> cons(0(),n__incr(odds())) odds() -> incr(pairs()) incr(cons(X,XS)) -> cons(s(X),n__incr(activate(XS))) incr(X) -> n__incr(X) activate(n__incr(X)) -> incr(X) activate(X) -> X CDG Processor: DPs: nats#() -> nats#() pairs#() -> odds#() odds#() -> pairs#() odds#() -> incr#(pairs()) incr#(cons(X,XS)) -> activate#(XS) tail#(cons(X,XS)) -> activate#(XS) activate#(n__incr(X)) -> incr#(X) TRS: pairs() -> cons(0(),n__incr(odds())) odds() -> incr(pairs()) incr(cons(X,XS)) -> cons(s(X),n__incr(activate(XS))) incr(X) -> n__incr(X) activate(n__incr(X)) -> incr(X) activate(X) -> X graph: tail#(cons(X,XS)) -> activate#(XS) -> activate#(n__incr(X)) -> incr#(X) activate#(n__incr(X)) -> incr#(X) -> incr#(cons(X,XS)) -> activate#(XS) incr#(cons(X,XS)) -> activate#(XS) -> activate#(n__incr(X)) -> incr#(X) odds#() -> incr#(pairs()) -> incr#(cons(X,XS)) -> activate#(XS) odds#() -> pairs#() -> pairs#() -> odds#() pairs#() -> odds#() -> odds#() -> pairs#() pairs#() -> odds#() -> odds#() -> incr#(pairs()) nats#() -> nats#() -> nats#() -> nats#() Restore Modifier: DPs: nats#() -> nats#() pairs#() -> odds#() odds#() -> pairs#() odds#() -> incr#(pairs()) incr#(cons(X,XS)) -> activate#(XS) tail#(cons(X,XS)) -> activate#(XS) activate#(n__incr(X)) -> incr#(X) TRS: nats() -> cons(0(),n__incr(nats())) pairs() -> cons(0(),n__incr(odds())) odds() -> incr(pairs()) incr(cons(X,XS)) -> cons(s(X),n__incr(activate(XS))) head(cons(X,XS)) -> X tail(cons(X,XS)) -> activate(XS) incr(X) -> n__incr(X) activate(n__incr(X)) -> incr(X) activate(X) -> X SCC Processor: #sccs: 3 #rules: 5 #arcs: 8/49 DPs: nats#() -> nats#() TRS: nats() -> cons(0(),n__incr(nats())) pairs() -> cons(0(),n__incr(odds())) odds() -> incr(pairs()) incr(cons(X,XS)) -> cons(s(X),n__incr(activate(XS))) head(cons(X,XS)) -> X tail(cons(X,XS)) -> activate(XS) incr(X) -> n__incr(X) activate(n__incr(X)) -> incr(X) activate(X) -> X Open DPs: odds#() -> pairs#() pairs#() -> odds#() TRS: nats() -> cons(0(),n__incr(nats())) pairs() -> cons(0(),n__incr(odds())) odds() -> incr(pairs()) incr(cons(X,XS)) -> cons(s(X),n__incr(activate(XS))) head(cons(X,XS)) -> X tail(cons(X,XS)) -> activate(XS) incr(X) -> n__incr(X) activate(n__incr(X)) -> incr(X) activate(X) -> X Open DPs: activate#(n__incr(X)) -> incr#(X) incr#(cons(X,XS)) -> activate#(XS) TRS: nats() -> cons(0(),n__incr(nats())) pairs() -> cons(0(),n__incr(odds())) odds() -> incr(pairs()) incr(cons(X,XS)) -> cons(s(X),n__incr(activate(XS))) head(cons(X,XS)) -> X tail(cons(X,XS)) -> activate(XS) incr(X) -> n__incr(X) activate(n__incr(X)) -> incr(X) activate(X) -> X Open