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
↳17 QDP
↳18 QDPOrderProof (⇔)
↳19 QDP
↳20 PisEmptyProof (⇔)
↳21 TRUE
f(X) → cons(X, n__f(n__g(X)))
g(0) → s(0)
g(s(X)) → s(s(g(X)))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, activate(Z))
f(X) → n__f(X)
g(X) → n__g(X)
activate(n__f(X)) → f(activate(X))
activate(n__g(X)) → g(activate(X))
activate(X) → X
G(s(X)) → G(X)
SEL(s(X), cons(Y, Z)) → SEL(X, activate(Z))
SEL(s(X), cons(Y, Z)) → ACTIVATE(Z)
ACTIVATE(n__f(X)) → F(activate(X))
ACTIVATE(n__f(X)) → ACTIVATE(X)
ACTIVATE(n__g(X)) → G(activate(X))
ACTIVATE(n__g(X)) → ACTIVATE(X)
f(X) → cons(X, n__f(n__g(X)))
g(0) → s(0)
g(s(X)) → s(s(g(X)))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, activate(Z))
f(X) → n__f(X)
g(X) → n__g(X)
activate(n__f(X)) → f(activate(X))
activate(n__g(X)) → g(activate(X))
activate(X) → X
G(s(X)) → G(X)
f(X) → cons(X, n__f(n__g(X)))
g(0) → s(0)
g(s(X)) → s(s(g(X)))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, activate(Z))
f(X) → n__f(X)
g(X) → n__g(X)
activate(n__f(X)) → f(activate(X))
activate(n__g(X)) → g(activate(X))
activate(X) → X
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
G(s(X)) → G(X)
trivial
s1: [1]
f(X) → cons(X, n__f(n__g(X)))
g(0) → s(0)
g(s(X)) → s(s(g(X)))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, activate(Z))
f(X) → n__f(X)
g(X) → n__g(X)
activate(n__f(X)) → f(activate(X))
activate(n__g(X)) → g(activate(X))
activate(X) → X
ACTIVATE(n__g(X)) → ACTIVATE(X)
ACTIVATE(n__f(X)) → ACTIVATE(X)
f(X) → cons(X, n__f(n__g(X)))
g(0) → s(0)
g(s(X)) → s(s(g(X)))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, activate(Z))
f(X) → n__f(X)
g(X) → n__g(X)
activate(n__f(X)) → f(activate(X))
activate(n__g(X)) → g(activate(X))
activate(X) → X
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
ACTIVATE(n__g(X)) → ACTIVATE(X)
ng1 > ACTIVATE1
ng1: [1]
ACTIVATE1: [1]
ACTIVATE(n__f(X)) → ACTIVATE(X)
f(X) → cons(X, n__f(n__g(X)))
g(0) → s(0)
g(s(X)) → s(s(g(X)))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, activate(Z))
f(X) → n__f(X)
g(X) → n__g(X)
activate(n__f(X)) → f(activate(X))
activate(n__g(X)) → g(activate(X))
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)
trivial
nf1: [1]
f(X) → cons(X, n__f(n__g(X)))
g(0) → s(0)
g(s(X)) → s(s(g(X)))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, activate(Z))
f(X) → n__f(X)
g(X) → n__g(X)
activate(n__f(X)) → f(activate(X))
activate(n__g(X)) → g(activate(X))
activate(X) → X
SEL(s(X), cons(Y, Z)) → SEL(X, activate(Z))
f(X) → cons(X, n__f(n__g(X)))
g(0) → s(0)
g(s(X)) → s(s(g(X)))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, activate(Z))
f(X) → n__f(X)
g(X) → n__g(X)
activate(n__f(X)) → f(activate(X))
activate(n__g(X)) → g(activate(X))
activate(X) → X
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
SEL(s(X), cons(Y, Z)) → SEL(X, activate(Z))
activate > cons2
g > s1 > SEL1 > cons2
g > ng1 > cons2
0 > s1 > SEL1 > cons2
cons2: [1,2]
ng1: [1]
g: []
activate: []
s1: [1]
SEL1: [1]
0: []
f(X) → cons(X, n__f(n__g(X)))
g(0) → s(0)
g(s(X)) → s(s(g(X)))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, activate(Z))
f(X) → n__f(X)
g(X) → n__g(X)
activate(n__f(X)) → f(activate(X))
activate(n__g(X)) → g(activate(X))
activate(X) → X