0 QTRS
↳1 DependencyPairsProof (⇔)
↳2 QDP
↳3 DependencyGraphProof (⇔)
↳4 AND
↳5 QDP
↳6 QDPOrderProof (⇔)
↳7 QDP
↳8 PisEmptyProof (⇔)
↳9 TRUE
↳10 QDP
↳11 QDPOrderProof (⇔)
↳12 QDP
↳13 PisEmptyProof (⇔)
↳14 TRUE
↳15 QDP
↳16 QDPOrderProof (⇔)
↳17 QDP
↳18 DependencyGraphProof (⇔)
↳19 QDP
↳20 QDPOrderProof (⇔)
↳21 QDP
↳22 PisEmptyProof (⇔)
↳23 TRUE
↳24 QDP
↳25 QDPOrderProof (⇔)
↳26 QDP
↳27 PisEmptyProof (⇔)
↳28 TRUE
from(X) → cons(X, n__from(n__s(X)))
sel(0, cons(X, XS)) → X
sel(s(N), cons(X, XS)) → sel(N, activate(XS))
minus(X, 0) → 0
minus(s(X), s(Y)) → minus(X, Y)
quot(0, s(Y)) → 0
quot(s(X), s(Y)) → s(quot(minus(X, Y), s(Y)))
zWquot(XS, nil) → nil
zWquot(nil, XS) → nil
zWquot(cons(X, XS), cons(Y, YS)) → cons(quot(X, Y), n__zWquot(activate(XS), activate(YS)))
from(X) → n__from(X)
s(X) → n__s(X)
zWquot(X1, X2) → n__zWquot(X1, X2)
activate(n__from(X)) → from(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__zWquot(X1, X2)) → zWquot(activate(X1), activate(X2))
activate(X) → X
SEL(s(N), cons(X, XS)) → SEL(N, activate(XS))
SEL(s(N), cons(X, XS)) → ACTIVATE(XS)
MINUS(s(X), s(Y)) → MINUS(X, Y)
QUOT(s(X), s(Y)) → S(quot(minus(X, Y), s(Y)))
QUOT(s(X), s(Y)) → QUOT(minus(X, Y), s(Y))
QUOT(s(X), s(Y)) → MINUS(X, Y)
ZWQUOT(cons(X, XS), cons(Y, YS)) → QUOT(X, Y)
ZWQUOT(cons(X, XS), cons(Y, YS)) → ACTIVATE(XS)
ZWQUOT(cons(X, XS), cons(Y, YS)) → ACTIVATE(YS)
ACTIVATE(n__from(X)) → FROM(activate(X))
ACTIVATE(n__from(X)) → ACTIVATE(X)
ACTIVATE(n__s(X)) → S(activate(X))
ACTIVATE(n__s(X)) → ACTIVATE(X)
ACTIVATE(n__zWquot(X1, X2)) → ZWQUOT(activate(X1), activate(X2))
ACTIVATE(n__zWquot(X1, X2)) → ACTIVATE(X1)
ACTIVATE(n__zWquot(X1, X2)) → ACTIVATE(X2)
from(X) → cons(X, n__from(n__s(X)))
sel(0, cons(X, XS)) → X
sel(s(N), cons(X, XS)) → sel(N, activate(XS))
minus(X, 0) → 0
minus(s(X), s(Y)) → minus(X, Y)
quot(0, s(Y)) → 0
quot(s(X), s(Y)) → s(quot(minus(X, Y), s(Y)))
zWquot(XS, nil) → nil
zWquot(nil, XS) → nil
zWquot(cons(X, XS), cons(Y, YS)) → cons(quot(X, Y), n__zWquot(activate(XS), activate(YS)))
from(X) → n__from(X)
s(X) → n__s(X)
zWquot(X1, X2) → n__zWquot(X1, X2)
activate(n__from(X)) → from(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__zWquot(X1, X2)) → zWquot(activate(X1), activate(X2))
activate(X) → X
MINUS(s(X), s(Y)) → MINUS(X, Y)
from(X) → cons(X, n__from(n__s(X)))
sel(0, cons(X, XS)) → X
sel(s(N), cons(X, XS)) → sel(N, activate(XS))
minus(X, 0) → 0
minus(s(X), s(Y)) → minus(X, Y)
quot(0, s(Y)) → 0
quot(s(X), s(Y)) → s(quot(minus(X, Y), s(Y)))
zWquot(XS, nil) → nil
zWquot(nil, XS) → nil
zWquot(cons(X, XS), cons(Y, YS)) → cons(quot(X, Y), n__zWquot(activate(XS), activate(YS)))
from(X) → n__from(X)
s(X) → n__s(X)
zWquot(X1, X2) → n__zWquot(X1, X2)
activate(n__from(X)) → from(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__zWquot(X1, X2)) → zWquot(activate(X1), activate(X2))
activate(X) → X
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
MINUS(s(X), s(Y)) → MINUS(X, Y)
s1 > MINUS1
from(X) → cons(X, n__from(n__s(X)))
sel(0, cons(X, XS)) → X
sel(s(N), cons(X, XS)) → sel(N, activate(XS))
minus(X, 0) → 0
minus(s(X), s(Y)) → minus(X, Y)
quot(0, s(Y)) → 0
quot(s(X), s(Y)) → s(quot(minus(X, Y), s(Y)))
zWquot(XS, nil) → nil
zWquot(nil, XS) → nil
zWquot(cons(X, XS), cons(Y, YS)) → cons(quot(X, Y), n__zWquot(activate(XS), activate(YS)))
from(X) → n__from(X)
s(X) → n__s(X)
zWquot(X1, X2) → n__zWquot(X1, X2)
activate(n__from(X)) → from(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__zWquot(X1, X2)) → zWquot(activate(X1), activate(X2))
activate(X) → X
QUOT(s(X), s(Y)) → QUOT(minus(X, Y), s(Y))
from(X) → cons(X, n__from(n__s(X)))
sel(0, cons(X, XS)) → X
sel(s(N), cons(X, XS)) → sel(N, activate(XS))
minus(X, 0) → 0
minus(s(X), s(Y)) → minus(X, Y)
quot(0, s(Y)) → 0
quot(s(X), s(Y)) → s(quot(minus(X, Y), s(Y)))
zWquot(XS, nil) → nil
zWquot(nil, XS) → nil
zWquot(cons(X, XS), cons(Y, YS)) → cons(quot(X, Y), n__zWquot(activate(XS), activate(YS)))
from(X) → n__from(X)
s(X) → n__s(X)
zWquot(X1, X2) → n__zWquot(X1, X2)
activate(n__from(X)) → from(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__zWquot(X1, X2)) → zWquot(activate(X1), activate(X2))
activate(X) → X
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
QUOT(s(X), s(Y)) → QUOT(minus(X, Y), s(Y))
[QUOT1, s1, 0]
minus(X, 0) → 0
minus(s(X), s(Y)) → minus(X, Y)
from(X) → cons(X, n__from(n__s(X)))
sel(0, cons(X, XS)) → X
sel(s(N), cons(X, XS)) → sel(N, activate(XS))
minus(X, 0) → 0
minus(s(X), s(Y)) → minus(X, Y)
quot(0, s(Y)) → 0
quot(s(X), s(Y)) → s(quot(minus(X, Y), s(Y)))
zWquot(XS, nil) → nil
zWquot(nil, XS) → nil
zWquot(cons(X, XS), cons(Y, YS)) → cons(quot(X, Y), n__zWquot(activate(XS), activate(YS)))
from(X) → n__from(X)
s(X) → n__s(X)
zWquot(X1, X2) → n__zWquot(X1, X2)
activate(n__from(X)) → from(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__zWquot(X1, X2)) → zWquot(activate(X1), activate(X2))
activate(X) → X
ZWQUOT(cons(X, XS), cons(Y, YS)) → ACTIVATE(XS)
ACTIVATE(n__from(X)) → ACTIVATE(X)
ACTIVATE(n__s(X)) → ACTIVATE(X)
ACTIVATE(n__zWquot(X1, X2)) → ZWQUOT(activate(X1), activate(X2))
ZWQUOT(cons(X, XS), cons(Y, YS)) → ACTIVATE(YS)
ACTIVATE(n__zWquot(X1, X2)) → ACTIVATE(X1)
ACTIVATE(n__zWquot(X1, X2)) → ACTIVATE(X2)
from(X) → cons(X, n__from(n__s(X)))
sel(0, cons(X, XS)) → X
sel(s(N), cons(X, XS)) → sel(N, activate(XS))
minus(X, 0) → 0
minus(s(X), s(Y)) → minus(X, Y)
quot(0, s(Y)) → 0
quot(s(X), s(Y)) → s(quot(minus(X, Y), s(Y)))
zWquot(XS, nil) → nil
zWquot(nil, XS) → nil
zWquot(cons(X, XS), cons(Y, YS)) → cons(quot(X, Y), n__zWquot(activate(XS), activate(YS)))
from(X) → n__from(X)
s(X) → n__s(X)
zWquot(X1, X2) → n__zWquot(X1, X2)
activate(n__from(X)) → from(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__zWquot(X1, X2)) → zWquot(activate(X1), activate(X2))
activate(X) → X
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ZWQUOT(cons(X, XS), cons(Y, YS)) → ACTIVATE(XS)
ACTIVATE(n__from(X)) → ACTIVATE(X)
ZWQUOT(cons(X, XS), cons(Y, YS)) → ACTIVATE(YS)
ACTIVATE(n__zWquot(X1, X2)) → ACTIVATE(X1)
ACTIVATE(n__zWquot(X1, X2)) → ACTIVATE(X2)
[ZWQUOT2, nfrom1, nzWquot2, from1, zWquot2, nil, quot1, 0, minus]
activate(n__from(X)) → from(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__zWquot(X1, X2)) → zWquot(activate(X1), activate(X2))
activate(X) → X
s(X) → n__s(X)
from(X) → cons(X, n__from(n__s(X)))
from(X) → n__from(X)
zWquot(XS, nil) → nil
zWquot(nil, XS) → nil
zWquot(X1, X2) → n__zWquot(X1, X2)
zWquot(cons(X, XS), cons(Y, YS)) → cons(quot(X, Y), n__zWquot(activate(XS), activate(YS)))
ACTIVATE(n__s(X)) → ACTIVATE(X)
ACTIVATE(n__zWquot(X1, X2)) → ZWQUOT(activate(X1), activate(X2))
from(X) → cons(X, n__from(n__s(X)))
sel(0, cons(X, XS)) → X
sel(s(N), cons(X, XS)) → sel(N, activate(XS))
minus(X, 0) → 0
minus(s(X), s(Y)) → minus(X, Y)
quot(0, s(Y)) → 0
quot(s(X), s(Y)) → s(quot(minus(X, Y), s(Y)))
zWquot(XS, nil) → nil
zWquot(nil, XS) → nil
zWquot(cons(X, XS), cons(Y, YS)) → cons(quot(X, Y), n__zWquot(activate(XS), activate(YS)))
from(X) → n__from(X)
s(X) → n__s(X)
zWquot(X1, X2) → n__zWquot(X1, X2)
activate(n__from(X)) → from(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__zWquot(X1, X2)) → zWquot(activate(X1), activate(X2))
activate(X) → X
ACTIVATE(n__s(X)) → ACTIVATE(X)
from(X) → cons(X, n__from(n__s(X)))
sel(0, cons(X, XS)) → X
sel(s(N), cons(X, XS)) → sel(N, activate(XS))
minus(X, 0) → 0
minus(s(X), s(Y)) → minus(X, Y)
quot(0, s(Y)) → 0
quot(s(X), s(Y)) → s(quot(minus(X, Y), s(Y)))
zWquot(XS, nil) → nil
zWquot(nil, XS) → nil
zWquot(cons(X, XS), cons(Y, YS)) → cons(quot(X, Y), n__zWquot(activate(XS), activate(YS)))
from(X) → n__from(X)
s(X) → n__s(X)
zWquot(X1, X2) → n__zWquot(X1, X2)
activate(n__from(X)) → from(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__zWquot(X1, X2)) → zWquot(activate(X1), activate(X2))
activate(X) → X
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACTIVATE(n__s(X)) → ACTIVATE(X)
trivial
from(X) → cons(X, n__from(n__s(X)))
sel(0, cons(X, XS)) → X
sel(s(N), cons(X, XS)) → sel(N, activate(XS))
minus(X, 0) → 0
minus(s(X), s(Y)) → minus(X, Y)
quot(0, s(Y)) → 0
quot(s(X), s(Y)) → s(quot(minus(X, Y), s(Y)))
zWquot(XS, nil) → nil
zWquot(nil, XS) → nil
zWquot(cons(X, XS), cons(Y, YS)) → cons(quot(X, Y), n__zWquot(activate(XS), activate(YS)))
from(X) → n__from(X)
s(X) → n__s(X)
zWquot(X1, X2) → n__zWquot(X1, X2)
activate(n__from(X)) → from(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__zWquot(X1, X2)) → zWquot(activate(X1), activate(X2))
activate(X) → X
SEL(s(N), cons(X, XS)) → SEL(N, activate(XS))
from(X) → cons(X, n__from(n__s(X)))
sel(0, cons(X, XS)) → X
sel(s(N), cons(X, XS)) → sel(N, activate(XS))
minus(X, 0) → 0
minus(s(X), s(Y)) → minus(X, Y)
quot(0, s(Y)) → 0
quot(s(X), s(Y)) → s(quot(minus(X, Y), s(Y)))
zWquot(XS, nil) → nil
zWquot(nil, XS) → nil
zWquot(cons(X, XS), cons(Y, YS)) → cons(quot(X, Y), n__zWquot(activate(XS), activate(YS)))
from(X) → n__from(X)
s(X) → n__s(X)
zWquot(X1, X2) → n__zWquot(X1, X2)
activate(n__from(X)) → from(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__zWquot(X1, X2)) → zWquot(activate(X1), activate(X2))
activate(X) → X
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
SEL(s(N), cons(X, XS)) → SEL(N, activate(XS))
SEL1 > [cons2, activate, nfrom1, from1, ns1, nzWquot1, nil, quot, 0, minus]
s1 > [cons2, activate, nfrom1, from1, ns1, nzWquot1, nil, quot, 0, minus]
zWquot2 > [cons2, activate, nfrom1, from1, ns1, nzWquot1, nil, quot, 0, minus]
from(X) → cons(X, n__from(n__s(X)))
sel(0, cons(X, XS)) → X
sel(s(N), cons(X, XS)) → sel(N, activate(XS))
minus(X, 0) → 0
minus(s(X), s(Y)) → minus(X, Y)
quot(0, s(Y)) → 0
quot(s(X), s(Y)) → s(quot(minus(X, Y), s(Y)))
zWquot(XS, nil) → nil
zWquot(nil, XS) → nil
zWquot(cons(X, XS), cons(Y, YS)) → cons(quot(X, Y), n__zWquot(activate(XS), activate(YS)))
from(X) → n__from(X)
s(X) → n__s(X)
zWquot(X1, X2) → n__zWquot(X1, X2)
activate(n__from(X)) → from(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__zWquot(X1, X2)) → zWquot(activate(X1), activate(X2))
activate(X) → X