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 QDPOrderProof (⇔)
↳14 QDP
↳15 PisEmptyProof (⇔)
↳16 TRUE
f(0) → cons(0, n__f(n__s(n__0)))
f(s(0)) → f(p(s(0)))
p(s(0)) → 0
f(X) → n__f(X)
s(X) → n__s(X)
0 → n__0
activate(n__f(X)) → f(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__0) → 0
activate(X) → X
F(s(0)) → F(p(s(0)))
F(s(0)) → P(s(0))
ACTIVATE(n__f(X)) → F(activate(X))
ACTIVATE(n__f(X)) → ACTIVATE(X)
ACTIVATE(n__s(X)) → S(activate(X))
ACTIVATE(n__s(X)) → ACTIVATE(X)
ACTIVATE(n__0) → 01
f(0) → cons(0, n__f(n__s(n__0)))
f(s(0)) → f(p(s(0)))
p(s(0)) → 0
f(X) → n__f(X)
s(X) → n__s(X)
0 → n__0
activate(n__f(X)) → f(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__0) → 0
activate(X) → X
F(s(0)) → F(p(s(0)))
f(0) → cons(0, n__f(n__s(n__0)))
f(s(0)) → f(p(s(0)))
p(s(0)) → 0
f(X) → n__f(X)
s(X) → n__s(X)
0 → n__0
activate(n__f(X)) → f(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__0) → 0
activate(X) → X
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
F(s(0)) → F(p(s(0)))
[f, activate1] > [F1, s1, 0, p] > cons > [nf, ns1]
[f, activate1] > [F1, s1, 0, p] > n0 > [nf, ns1]
F1: multiset
s1: multiset
0: multiset
p: multiset
f: multiset
cons: multiset
nf: multiset
ns1: multiset
n0: multiset
activate1: multiset
f(0) → cons(0, n__f(n__s(n__0)))
f(s(0)) → f(p(s(0)))
p(s(0)) → 0
f(X) → n__f(X)
s(X) → n__s(X)
0 → n__0
activate(n__f(X)) → f(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__0) → 0
activate(X) → X
f(0) → cons(0, n__f(n__s(n__0)))
f(s(0)) → f(p(s(0)))
p(s(0)) → 0
f(X) → n__f(X)
s(X) → n__s(X)
0 → n__0
activate(n__f(X)) → f(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__0) → 0
activate(X) → X
ACTIVATE(n__s(X)) → ACTIVATE(X)
ACTIVATE(n__f(X)) → ACTIVATE(X)
f(0) → cons(0, n__f(n__s(n__0)))
f(s(0)) → f(p(s(0)))
p(s(0)) → 0
f(X) → n__f(X)
s(X) → n__s(X)
0 → n__0
activate(n__f(X)) → f(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__0) → 0
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)
ACTIVATE1 > [ns1, s1]
[0, activate1] > cons > [ns1, s1]
[0, activate1] > n0 > [ns1, s1]
ACTIVATE1: multiset
ns1: multiset
0: multiset
cons: []
n0: multiset
s1: multiset
activate1: multiset
f(0) → cons(0, n__f(n__s(n__0)))
f(s(0)) → f(p(s(0)))
p(s(0)) → 0
f(X) → n__f(X)
s(X) → n__s(X)
0 → n__0
activate(n__f(X)) → f(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__0) → 0
activate(X) → X
ACTIVATE(n__f(X)) → ACTIVATE(X)
f(0) → cons(0, n__f(n__s(n__0)))
f(s(0)) → f(p(s(0)))
p(s(0)) → 0
f(X) → n__f(X)
s(X) → n__s(X)
0 → n__0
activate(n__f(X)) → f(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__0) → 0
activate(X) → X
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACTIVATE(n__f(X)) → ACTIVATE(X)
activate1 > [f1, 0] > cons > [nf1, ns1, s1]
activate1 > [f1, 0] > n0 > [nf1, ns1, s1]
nf1: multiset
f1: multiset
0: multiset
cons: multiset
ns1: multiset
n0: multiset
s1: multiset
activate1: multiset
f(0) → cons(0, n__f(n__s(n__0)))
f(s(0)) → f(p(s(0)))
p(s(0)) → 0
f(X) → n__f(X)
s(X) → n__s(X)
0 → n__0
activate(n__f(X)) → f(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__0) → 0
activate(X) → X
f(0) → cons(0, n__f(n__s(n__0)))
f(s(0)) → f(p(s(0)))
p(s(0)) → 0
f(X) → n__f(X)
s(X) → n__s(X)
0 → n__0
activate(n__f(X)) → f(activate(X))
activate(n__s(X)) → s(activate(X))
activate(n__0) → 0
activate(X) → X