(0) Obligation:

Q restricted rewrite system:
The TRS R consists of the following rules:

t(N) → cs(r(q(N)), nt(ns(N)))
q(0) → 0
q(s(X)) → s(p(q(X), d(X)))
d(0) → 0
d(s(X)) → s(s(d(X)))
p(0, X) → X
p(X, 0) → X
p(s(X), s(Y)) → s(s(p(X, Y)))
f(0, X) → nil
f(s(X), cs(Y, Z)) → cs(Y, nf(X, a(Z)))
t(X) → nt(X)
s(X) → ns(X)
f(X1, X2) → nf(X1, X2)
a(nt(X)) → t(a(X))
a(ns(X)) → s(a(X))
a(nf(X1, X2)) → f(a(X1), a(X2))
a(X) → X

Q is empty.

(1) DependencyPairsProof (EQUIVALENT transformation)

Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem.

(2) Obligation:

Q DP problem:
The TRS P consists of the following rules:

T(N) → Q(N)
Q(s(X)) → S(p(q(X), d(X)))
Q(s(X)) → P(q(X), d(X))
Q(s(X)) → Q(X)
Q(s(X)) → D(X)
D(s(X)) → S(s(d(X)))
D(s(X)) → S(d(X))
D(s(X)) → D(X)
P(s(X), s(Y)) → S(s(p(X, Y)))
P(s(X), s(Y)) → S(p(X, Y))
P(s(X), s(Y)) → P(X, Y)
F(s(X), cs(Y, Z)) → A(Z)
A(nt(X)) → T(a(X))
A(nt(X)) → A(X)
A(ns(X)) → S(a(X))
A(ns(X)) → A(X)
A(nf(X1, X2)) → F(a(X1), a(X2))
A(nf(X1, X2)) → A(X1)
A(nf(X1, X2)) → A(X2)

The TRS R consists of the following rules:

t(N) → cs(r(q(N)), nt(ns(N)))
q(0) → 0
q(s(X)) → s(p(q(X), d(X)))
d(0) → 0
d(s(X)) → s(s(d(X)))
p(0, X) → X
p(X, 0) → X
p(s(X), s(Y)) → s(s(p(X, Y)))
f(0, X) → nil
f(s(X), cs(Y, Z)) → cs(Y, nf(X, a(Z)))
t(X) → nt(X)
s(X) → ns(X)
f(X1, X2) → nf(X1, X2)
a(nt(X)) → t(a(X))
a(ns(X)) → s(a(X))
a(nf(X1, X2)) → f(a(X1), a(X2))
a(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(3) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 4 SCCs with 10 less nodes.

(4) Complex Obligation (AND)

(5) Obligation:

Q DP problem:
The TRS P consists of the following rules:

P(s(X), s(Y)) → P(X, Y)

The TRS R consists of the following rules:

t(N) → cs(r(q(N)), nt(ns(N)))
q(0) → 0
q(s(X)) → s(p(q(X), d(X)))
d(0) → 0
d(s(X)) → s(s(d(X)))
p(0, X) → X
p(X, 0) → X
p(s(X), s(Y)) → s(s(p(X, Y)))
f(0, X) → nil
f(s(X), cs(Y, Z)) → cs(Y, nf(X, a(Z)))
t(X) → nt(X)
s(X) → ns(X)
f(X1, X2) → nf(X1, X2)
a(nt(X)) → t(a(X))
a(ns(X)) → s(a(X))
a(nf(X1, X2)) → f(a(X1), a(X2))
a(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(6) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


P(s(X), s(Y)) → P(X, Y)
The remaining pairs can at least be oriented weakly.
Used ordering: Combined order from the following AFS and order.
P(x1, x2)  =  P(x1, x2)
s(x1)  =  s(x1)
t(x1)  =  t
cs(x1, x2)  =  cs
r(x1)  =  r(x1)
q(x1)  =  q(x1)
nt(x1)  =  nt
ns(x1)  =  ns(x1)
0  =  0
p(x1, x2)  =  p(x1, x2)
d(x1)  =  d(x1)
f(x1, x2)  =  f
nil  =  nil
nf(x1, x2)  =  nf
a(x1)  =  a(x1)

Recursive path order with status [RPO].
Quasi-Precedence:
r1 > [t, cs, nt, 0, f, nil, nf]
[q1, d1] > p2 > [s1, ns1, a1] > P2 > [t, cs, nt, 0, f, nil, nf]

Status:
P2: multiset
s1: multiset
t: []
cs: []
r1: multiset
q1: [1]
nt: []
ns1: multiset
0: multiset
p2: multiset
d1: [1]
f: []
nil: multiset
nf: []
a1: multiset


The following usable rules [FROCOS05] were oriented:

t(N) → cs(r(q(N)), nt(ns(N)))
q(0) → 0
q(s(X)) → s(p(q(X), d(X)))
d(0) → 0
d(s(X)) → s(s(d(X)))
p(0, X) → X
p(X, 0) → X
p(s(X), s(Y)) → s(s(p(X, Y)))
f(0, X) → nil
f(s(X), cs(Y, Z)) → cs(Y, nf(X, a(Z)))
t(X) → nt(X)
s(X) → ns(X)
f(X1, X2) → nf(X1, X2)
a(nt(X)) → t(a(X))
a(ns(X)) → s(a(X))
a(nf(X1, X2)) → f(a(X1), a(X2))
a(X) → X

(7) Obligation:

Q DP problem:
P is empty.
The TRS R consists of the following rules:

t(N) → cs(r(q(N)), nt(ns(N)))
q(0) → 0
q(s(X)) → s(p(q(X), d(X)))
d(0) → 0
d(s(X)) → s(s(d(X)))
p(0, X) → X
p(X, 0) → X
p(s(X), s(Y)) → s(s(p(X, Y)))
f(0, X) → nil
f(s(X), cs(Y, Z)) → cs(Y, nf(X, a(Z)))
t(X) → nt(X)
s(X) → ns(X)
f(X1, X2) → nf(X1, X2)
a(nt(X)) → t(a(X))
a(ns(X)) → s(a(X))
a(nf(X1, X2)) → f(a(X1), a(X2))
a(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(8) PisEmptyProof (EQUIVALENT transformation)

The TRS P is empty. Hence, there is no (P,Q,R) chain.

(9) TRUE

(10) Obligation:

Q DP problem:
The TRS P consists of the following rules:

D(s(X)) → D(X)

The TRS R consists of the following rules:

t(N) → cs(r(q(N)), nt(ns(N)))
q(0) → 0
q(s(X)) → s(p(q(X), d(X)))
d(0) → 0
d(s(X)) → s(s(d(X)))
p(0, X) → X
p(X, 0) → X
p(s(X), s(Y)) → s(s(p(X, Y)))
f(0, X) → nil
f(s(X), cs(Y, Z)) → cs(Y, nf(X, a(Z)))
t(X) → nt(X)
s(X) → ns(X)
f(X1, X2) → nf(X1, X2)
a(nt(X)) → t(a(X))
a(ns(X)) → s(a(X))
a(nf(X1, X2)) → f(a(X1), a(X2))
a(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(11) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


D(s(X)) → D(X)
The remaining pairs can at least be oriented weakly.
Used ordering: Combined order from the following AFS and order.
D(x1)  =  D(x1)
s(x1)  =  s(x1)
t(x1)  =  t(x1)
cs(x1, x2)  =  cs
r(x1)  =  x1
q(x1)  =  q(x1)
nt(x1)  =  nt(x1)
ns(x1)  =  ns(x1)
0  =  0
p(x1, x2)  =  p(x1, x2)
d(x1)  =  d(x1)
f(x1, x2)  =  x1
nil  =  nil
nf(x1, x2)  =  x1
a(x1)  =  a(x1)

Recursive path order with status [RPO].
Quasi-Precedence:
D1 > [cs, nt1]
q1 > p2 > [s1, ns1, a1] > t1 > [cs, nt1]
q1 > d1 > [s1, ns1, a1] > t1 > [cs, nt1]
q1 > d1 > [0, nil] > [cs, nt1]

Status:
D1: multiset
s1: multiset
t1: [1]
cs: multiset
q1: [1]
nt1: multiset
ns1: multiset
0: multiset
p2: multiset
d1: [1]
nil: multiset
a1: multiset


The following usable rules [FROCOS05] were oriented:

t(N) → cs(r(q(N)), nt(ns(N)))
q(0) → 0
q(s(X)) → s(p(q(X), d(X)))
d(0) → 0
d(s(X)) → s(s(d(X)))
p(0, X) → X
p(X, 0) → X
p(s(X), s(Y)) → s(s(p(X, Y)))
f(0, X) → nil
f(s(X), cs(Y, Z)) → cs(Y, nf(X, a(Z)))
t(X) → nt(X)
s(X) → ns(X)
f(X1, X2) → nf(X1, X2)
a(nt(X)) → t(a(X))
a(ns(X)) → s(a(X))
a(nf(X1, X2)) → f(a(X1), a(X2))
a(X) → X

(12) Obligation:

Q DP problem:
P is empty.
The TRS R consists of the following rules:

t(N) → cs(r(q(N)), nt(ns(N)))
q(0) → 0
q(s(X)) → s(p(q(X), d(X)))
d(0) → 0
d(s(X)) → s(s(d(X)))
p(0, X) → X
p(X, 0) → X
p(s(X), s(Y)) → s(s(p(X, Y)))
f(0, X) → nil
f(s(X), cs(Y, Z)) → cs(Y, nf(X, a(Z)))
t(X) → nt(X)
s(X) → ns(X)
f(X1, X2) → nf(X1, X2)
a(nt(X)) → t(a(X))
a(ns(X)) → s(a(X))
a(nf(X1, X2)) → f(a(X1), a(X2))
a(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(13) PisEmptyProof (EQUIVALENT transformation)

The TRS P is empty. Hence, there is no (P,Q,R) chain.

(14) TRUE

(15) Obligation:

Q DP problem:
The TRS P consists of the following rules:

Q(s(X)) → Q(X)

The TRS R consists of the following rules:

t(N) → cs(r(q(N)), nt(ns(N)))
q(0) → 0
q(s(X)) → s(p(q(X), d(X)))
d(0) → 0
d(s(X)) → s(s(d(X)))
p(0, X) → X
p(X, 0) → X
p(s(X), s(Y)) → s(s(p(X, Y)))
f(0, X) → nil
f(s(X), cs(Y, Z)) → cs(Y, nf(X, a(Z)))
t(X) → nt(X)
s(X) → ns(X)
f(X1, X2) → nf(X1, X2)
a(nt(X)) → t(a(X))
a(ns(X)) → s(a(X))
a(nf(X1, X2)) → f(a(X1), a(X2))
a(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(16) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


Q(s(X)) → Q(X)
The remaining pairs can at least be oriented weakly.
Used ordering: Combined order from the following AFS and order.
Q(x1)  =  Q(x1)
s(x1)  =  s(x1)
t(x1)  =  t(x1)
cs(x1, x2)  =  cs
r(x1)  =  x1
q(x1)  =  q(x1)
nt(x1)  =  nt(x1)
ns(x1)  =  ns(x1)
0  =  0
p(x1, x2)  =  p(x1, x2)
d(x1)  =  d(x1)
f(x1, x2)  =  x1
nil  =  nil
nf(x1, x2)  =  x1
a(x1)  =  a(x1)

Recursive path order with status [RPO].
Quasi-Precedence:
Q1 > [cs, nt1]
q1 > p2 > [s1, ns1, a1] > t1 > [cs, nt1]
q1 > d1 > [s1, ns1, a1] > t1 > [cs, nt1]
q1 > d1 > [0, nil] > [cs, nt1]

Status:
Q1: multiset
s1: multiset
t1: [1]
cs: multiset
q1: [1]
nt1: multiset
ns1: multiset
0: multiset
p2: multiset
d1: [1]
nil: multiset
a1: multiset


The following usable rules [FROCOS05] were oriented:

t(N) → cs(r(q(N)), nt(ns(N)))
q(0) → 0
q(s(X)) → s(p(q(X), d(X)))
d(0) → 0
d(s(X)) → s(s(d(X)))
p(0, X) → X
p(X, 0) → X
p(s(X), s(Y)) → s(s(p(X, Y)))
f(0, X) → nil
f(s(X), cs(Y, Z)) → cs(Y, nf(X, a(Z)))
t(X) → nt(X)
s(X) → ns(X)
f(X1, X2) → nf(X1, X2)
a(nt(X)) → t(a(X))
a(ns(X)) → s(a(X))
a(nf(X1, X2)) → f(a(X1), a(X2))
a(X) → X

(17) Obligation:

Q DP problem:
P is empty.
The TRS R consists of the following rules:

t(N) → cs(r(q(N)), nt(ns(N)))
q(0) → 0
q(s(X)) → s(p(q(X), d(X)))
d(0) → 0
d(s(X)) → s(s(d(X)))
p(0, X) → X
p(X, 0) → X
p(s(X), s(Y)) → s(s(p(X, Y)))
f(0, X) → nil
f(s(X), cs(Y, Z)) → cs(Y, nf(X, a(Z)))
t(X) → nt(X)
s(X) → ns(X)
f(X1, X2) → nf(X1, X2)
a(nt(X)) → t(a(X))
a(ns(X)) → s(a(X))
a(nf(X1, X2)) → f(a(X1), a(X2))
a(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(18) PisEmptyProof (EQUIVALENT transformation)

The TRS P is empty. Hence, there is no (P,Q,R) chain.

(19) TRUE

(20) Obligation:

Q DP problem:
The TRS P consists of the following rules:

A(nt(X)) → A(X)
A(ns(X)) → A(X)
A(nf(X1, X2)) → F(a(X1), a(X2))
F(s(X), cs(Y, Z)) → A(Z)
A(nf(X1, X2)) → A(X1)
A(nf(X1, X2)) → A(X2)

The TRS R consists of the following rules:

t(N) → cs(r(q(N)), nt(ns(N)))
q(0) → 0
q(s(X)) → s(p(q(X), d(X)))
d(0) → 0
d(s(X)) → s(s(d(X)))
p(0, X) → X
p(X, 0) → X
p(s(X), s(Y)) → s(s(p(X, Y)))
f(0, X) → nil
f(s(X), cs(Y, Z)) → cs(Y, nf(X, a(Z)))
t(X) → nt(X)
s(X) → ns(X)
f(X1, X2) → nf(X1, X2)
a(nt(X)) → t(a(X))
a(ns(X)) → s(a(X))
a(nf(X1, X2)) → f(a(X1), a(X2))
a(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.