0 QTRS
↳1 DependencyPairsProof (⇔)
↳2 QDP
↳3 DependencyGraphProof (⇔)
↳4 QDP
↳5 QDPOrderProof (⇔)
↳6 QDP
↳7 PisEmptyProof (⇔)
↳8 TRUE
from(X) → cons(X, n__from(s(X)))
after(0, XS) → XS
after(s(N), cons(X, XS)) → after(N, activate(XS))
from(X) → n__from(X)
activate(n__from(X)) → from(X)
activate(X) → X
AFTER(s(N), cons(X, XS)) → AFTER(N, activate(XS))
AFTER(s(N), cons(X, XS)) → ACTIVATE(XS)
ACTIVATE(n__from(X)) → FROM(X)
from(X) → cons(X, n__from(s(X)))
after(0, XS) → XS
after(s(N), cons(X, XS)) → after(N, activate(XS))
from(X) → n__from(X)
activate(n__from(X)) → from(X)
activate(X) → X
AFTER(s(N), cons(X, XS)) → AFTER(N, activate(XS))
from(X) → cons(X, n__from(s(X)))
after(0, XS) → XS
after(s(N), cons(X, XS)) → after(N, activate(XS))
from(X) → n__from(X)
activate(n__from(X)) → from(X)
activate(X) → X
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
AFTER(s(N), cons(X, XS)) → AFTER(N, activate(XS))
AFTER1 > s1
activate1 > s1
nfrom1 > s1
AFTER1: [1]
s1: multiset
activate1: multiset
nfrom1: multiset
from(X) → cons(X, n__from(s(X)))
after(0, XS) → XS
after(s(N), cons(X, XS)) → after(N, activate(XS))
from(X) → n__from(X)
activate(n__from(X)) → from(X)
activate(X) → X