Termination w.r.t. Q of the following Term Rewriting System could not be shown:

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

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.


QTRS
  ↳ DependencyPairsProof

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

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.

Using Dependency Pairs [1,15] we result in the following initial DP problem:
Q DP problem:
The TRS P consists of the following rules:

ACTIVATE(n__inf(X)) → ACTIVATE(X)
LENGTH(cons(X, L)) → S(n__length(activate(L)))
TAKE(s(X), cons(Y, L)) → ACTIVATE(X)
LENGTH(cons(X, L)) → ACTIVATE(L)
ACTIVATE(n__take(X1, X2)) → TAKE(activate(X1), activate(X2))
TAKE(s(X), cons(Y, L)) → ACTIVATE(Y)
ACTIVATE(n__length(X)) → LENGTH(activate(X))
ACTIVATE(n__take(X1, X2)) → ACTIVATE(X1)
ACTIVATE(n__s(X)) → S(X)
EQ(n__s(X), n__s(Y)) → ACTIVATE(X)
ACTIVATE(n__inf(X)) → INF(activate(X))
EQ(n__s(X), n__s(Y)) → EQ(activate(X), activate(Y))
ACTIVATE(n__take(X1, X2)) → ACTIVATE(X2)
TAKE(s(X), cons(Y, L)) → ACTIVATE(L)
ACTIVATE(n__0) → 01
EQ(n__s(X), n__s(Y)) → ACTIVATE(Y)
ACTIVATE(n__length(X)) → ACTIVATE(X)
LENGTH(nil) → 01

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

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

↳ QTRS
  ↳ DependencyPairsProof
QDP
      ↳ DependencyGraphProof

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

ACTIVATE(n__inf(X)) → ACTIVATE(X)
LENGTH(cons(X, L)) → S(n__length(activate(L)))
TAKE(s(X), cons(Y, L)) → ACTIVATE(X)
LENGTH(cons(X, L)) → ACTIVATE(L)
ACTIVATE(n__take(X1, X2)) → TAKE(activate(X1), activate(X2))
TAKE(s(X), cons(Y, L)) → ACTIVATE(Y)
ACTIVATE(n__length(X)) → LENGTH(activate(X))
ACTIVATE(n__take(X1, X2)) → ACTIVATE(X1)
ACTIVATE(n__s(X)) → S(X)
EQ(n__s(X), n__s(Y)) → ACTIVATE(X)
ACTIVATE(n__inf(X)) → INF(activate(X))
EQ(n__s(X), n__s(Y)) → EQ(activate(X), activate(Y))
ACTIVATE(n__take(X1, X2)) → ACTIVATE(X2)
TAKE(s(X), cons(Y, L)) → ACTIVATE(L)
ACTIVATE(n__0) → 01
EQ(n__s(X), n__s(Y)) → ACTIVATE(Y)
ACTIVATE(n__length(X)) → ACTIVATE(X)
LENGTH(nil) → 01

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 2 SCCs with 7 less nodes.

↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
QDP
            ↳ QDPOrderProof
          ↳ QDP

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

ACTIVATE(n__inf(X)) → ACTIVATE(X)
TAKE(s(X), cons(Y, L)) → ACTIVATE(X)
LENGTH(cons(X, L)) → ACTIVATE(L)
TAKE(s(X), cons(Y, L)) → ACTIVATE(Y)
ACTIVATE(n__take(X1, X2)) → TAKE(activate(X1), activate(X2))
ACTIVATE(n__length(X)) → LENGTH(activate(X))
ACTIVATE(n__take(X1, X2)) → ACTIVATE(X1)
ACTIVATE(n__length(X)) → ACTIVATE(X)
ACTIVATE(n__take(X1, X2)) → ACTIVATE(X2)
TAKE(s(X), cons(Y, L)) → ACTIVATE(L)

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
We use the reduction pair processor [15].


The following pairs can be oriented strictly and are deleted.


TAKE(s(X), cons(Y, L)) → ACTIVATE(X)
TAKE(s(X), cons(Y, L)) → ACTIVATE(Y)
ACTIVATE(n__take(X1, X2)) → ACTIVATE(X1)
ACTIVATE(n__take(X1, X2)) → ACTIVATE(X2)
TAKE(s(X), cons(Y, L)) → ACTIVATE(L)
The remaining pairs can at least be oriented weakly.

ACTIVATE(n__inf(X)) → ACTIVATE(X)
LENGTH(cons(X, L)) → ACTIVATE(L)
ACTIVATE(n__take(X1, X2)) → TAKE(activate(X1), activate(X2))
ACTIVATE(n__length(X)) → LENGTH(activate(X))
ACTIVATE(n__length(X)) → ACTIVATE(X)
Used ordering: Polynomial interpretation [25,35]:

POL(LENGTH(x1)) = 1/2 + x_1   
POL(n__length(x1)) = (4)x_1   
POL(n__inf(x1)) = x_1   
POL(activate(x1)) = x_1   
POL(n__s(x1)) = (1/2)x_1   
POL(take(x1, x2)) = 1 + (4)x_1 + (2)x_2   
POL(0) = 1/4   
POL(TAKE(x1, x2)) = 3/4 + (1/2)x_1 + (1/2)x_2   
POL(cons(x1, x2)) = (1/2)x_1 + (1/2)x_2   
POL(inf(x1)) = x_1   
POL(n__0) = 1/4   
POL(n__take(x1, x2)) = 1 + (4)x_1 + (2)x_2   
POL(s(x1)) = (1/2)x_1   
POL(length(x1)) = (4)x_1   
POL(nil) = 2   
POL(ACTIVATE(x1)) = 1/2 + (1/4)x_1   
The value of delta used in the strict ordering is 1/4.
The following usable rules [17] were oriented:

activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X
length(nil) → 0
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
take(0, X) → nil
inf(X) → cons(X, n__inf(n__s(X)))
inf(X) → n__inf(X)
s(X) → n__s(X)
0n__0
length(cons(X, L)) → s(n__length(activate(L)))
activate(n__s(X)) → s(X)
activate(n__0) → 0
length(X) → n__length(X)
take(X1, X2) → n__take(X1, X2)



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
            ↳ QDPOrderProof
QDP
                ↳ DependencyGraphProof
          ↳ QDP

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

ACTIVATE(n__inf(X)) → ACTIVATE(X)
LENGTH(cons(X, L)) → ACTIVATE(L)
ACTIVATE(n__take(X1, X2)) → TAKE(activate(X1), activate(X2))
ACTIVATE(n__length(X)) → LENGTH(activate(X))
ACTIVATE(n__length(X)) → ACTIVATE(X)

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 1 SCC with 1 less node.

↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
            ↳ QDPOrderProof
              ↳ QDP
                ↳ DependencyGraphProof
QDP
                    ↳ QDPOrderProof
          ↳ QDP

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

ACTIVATE(n__inf(X)) → ACTIVATE(X)
LENGTH(cons(X, L)) → ACTIVATE(L)
ACTIVATE(n__length(X)) → LENGTH(activate(X))
ACTIVATE(n__length(X)) → ACTIVATE(X)

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
We use the reduction pair processor [15].


The following pairs can be oriented strictly and are deleted.


ACTIVATE(n__length(X)) → LENGTH(activate(X))
ACTIVATE(n__length(X)) → ACTIVATE(X)
The remaining pairs can at least be oriented weakly.

ACTIVATE(n__inf(X)) → ACTIVATE(X)
LENGTH(cons(X, L)) → ACTIVATE(L)
Used ordering: Polynomial interpretation [25]:

POL(0) = 0   
POL(ACTIVATE(x1)) = 1 + x1   
POL(LENGTH(x1)) = 1 + x1   
POL(activate(x1)) = x1   
POL(cons(x1, x2)) = x2   
POL(inf(x1)) = x1   
POL(length(x1)) = 1 + x1   
POL(n__0) = 0   
POL(n__inf(x1)) = x1   
POL(n__length(x1)) = 1 + x1   
POL(n__s(x1)) = x1   
POL(n__take(x1, x2)) = 1   
POL(nil) = 0   
POL(s(x1)) = x1   
POL(take(x1, x2)) = 1   

The following usable rules [17] were oriented:

activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X
length(nil) → 0
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
take(0, X) → nil
inf(X) → cons(X, n__inf(n__s(X)))
inf(X) → n__inf(X)
s(X) → n__s(X)
0n__0
length(cons(X, L)) → s(n__length(activate(L)))
activate(n__s(X)) → s(X)
activate(n__0) → 0
length(X) → n__length(X)
take(X1, X2) → n__take(X1, X2)



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
            ↳ QDPOrderProof
              ↳ QDP
                ↳ DependencyGraphProof
                  ↳ QDP
                    ↳ QDPOrderProof
QDP
                        ↳ DependencyGraphProof
          ↳ QDP

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

ACTIVATE(n__inf(X)) → ACTIVATE(X)
LENGTH(cons(X, L)) → ACTIVATE(L)

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 1 SCC with 1 less node.

↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
            ↳ QDPOrderProof
              ↳ QDP
                ↳ DependencyGraphProof
                  ↳ QDP
                    ↳ QDPOrderProof
                      ↳ QDP
                        ↳ DependencyGraphProof
QDP
                            ↳ UsableRulesProof
          ↳ QDP

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

ACTIVATE(n__inf(X)) → ACTIVATE(X)

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
We can use the usable rules and reduction pair processor [15] with the Ce-compatible extension of the polynomial order that maps every function symbol to the sum of its argument. Then, we can delete all non-usable rules [17] from R.

↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
            ↳ QDPOrderProof
              ↳ QDP
                ↳ DependencyGraphProof
                  ↳ QDP
                    ↳ QDPOrderProof
                      ↳ QDP
                        ↳ DependencyGraphProof
                          ↳ QDP
                            ↳ UsableRulesProof
QDP
                                ↳ QDPSizeChangeProof
          ↳ QDP

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

ACTIVATE(n__inf(X)) → ACTIVATE(X)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
QDP
            ↳ Narrowing

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

EQ(n__s(X), n__s(Y)) → EQ(activate(X), activate(Y))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule EQ(n__s(X), n__s(Y)) → EQ(activate(X), activate(Y)) at position [0] we obtained the following new rules:

EQ(n__s(x0), n__s(y1)) → EQ(x0, activate(y1))
EQ(n__s(n__take(x0, x1)), n__s(y1)) → EQ(take(activate(x0), activate(x1)), activate(y1))
EQ(n__s(n__0), n__s(y1)) → EQ(0, activate(y1))
EQ(n__s(n__length(x0)), n__s(y1)) → EQ(length(activate(x0)), activate(y1))
EQ(n__s(n__inf(x0)), n__s(y1)) → EQ(inf(activate(x0)), activate(y1))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(s(x0), activate(y1))



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
QDP
                ↳ Narrowing

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

EQ(n__s(x0), n__s(y1)) → EQ(x0, activate(y1))
EQ(n__s(n__0), n__s(y1)) → EQ(0, activate(y1))
EQ(n__s(n__length(x0)), n__s(y1)) → EQ(length(activate(x0)), activate(y1))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(s(x0), activate(y1))
EQ(n__s(n__inf(x0)), n__s(y1)) → EQ(inf(activate(x0)), activate(y1))
EQ(n__s(n__take(x0, x1)), n__s(y1)) → EQ(take(activate(x0), activate(x1)), activate(y1))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule EQ(n__s(x0), n__s(y1)) → EQ(x0, activate(y1)) at position [1] we obtained the following new rules:

EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, s(x0))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(y0), n__s(n__0)) → EQ(y0, 0)



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
QDP
                    ↳ Narrowing

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

EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, s(x0))
EQ(n__s(n__0), n__s(y1)) → EQ(0, activate(y1))
EQ(n__s(n__length(x0)), n__s(y1)) → EQ(length(activate(x0)), activate(y1))
EQ(n__s(y0), n__s(n__0)) → EQ(y0, 0)
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(n__inf(x0)), n__s(y1)) → EQ(inf(activate(x0)), activate(y1))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(s(x0), activate(y1))
EQ(n__s(n__take(x0, x1)), n__s(y1)) → EQ(take(activate(x0), activate(x1)), activate(y1))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule EQ(n__s(n__take(x0, x1)), n__s(y1)) → EQ(take(activate(x0), activate(x1)), activate(y1)) at position [1] we obtained the following new rules:

EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), s(x0))
EQ(n__s(n__take(y0, y1)), n__s(n__0)) → EQ(take(activate(y0), activate(y1)), 0)



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
QDP
                        ↳ Narrowing

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

EQ(n__s(n__length(x0)), n__s(y1)) → EQ(length(activate(x0)), activate(y1))
EQ(n__s(y0), n__s(n__0)) → EQ(y0, 0)
EQ(n__s(n__inf(x0)), n__s(y1)) → EQ(inf(activate(x0)), activate(y1))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(s(x0), activate(y1))
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, s(x0))
EQ(n__s(n__0), n__s(y1)) → EQ(0, activate(y1))
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), s(x0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(n__take(y0, y1)), n__s(n__0)) → EQ(take(activate(y0), activate(y1)), 0)
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule EQ(n__s(n__0), n__s(y1)) → EQ(0, activate(y1)) at position [0] we obtained the following new rules:

EQ(n__s(n__0), n__s(y0)) → EQ(n__0, activate(y0))



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
QDP
                            ↳ DependencyGraphProof

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

EQ(n__s(n__length(x0)), n__s(y1)) → EQ(length(activate(x0)), activate(y1))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(s(x0), activate(y1))
EQ(n__s(n__inf(x0)), n__s(y1)) → EQ(inf(activate(x0)), activate(y1))
EQ(n__s(y0), n__s(n__0)) → EQ(y0, 0)
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, s(x0))
EQ(n__s(n__0), n__s(y0)) → EQ(n__0, activate(y0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), s(x0))
EQ(n__s(n__take(y0, y1)), n__s(n__0)) → EQ(take(activate(y0), activate(y1)), 0)
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 1 SCC with 1 less node.

↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
QDP
                                ↳ Narrowing

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

EQ(n__s(n__length(x0)), n__s(y1)) → EQ(length(activate(x0)), activate(y1))
EQ(n__s(n__inf(x0)), n__s(y1)) → EQ(inf(activate(x0)), activate(y1))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(s(x0), activate(y1))
EQ(n__s(y0), n__s(n__0)) → EQ(y0, 0)
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, s(x0))
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), s(x0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(n__take(y0, y1)), n__s(n__0)) → EQ(take(activate(y0), activate(y1)), 0)
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule EQ(n__s(n__length(x0)), n__s(y1)) → EQ(length(activate(x0)), activate(y1)) at position [1] we obtained the following new rules:

EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(n__length(y0)), n__s(n__0)) → EQ(length(activate(y0)), 0)
EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), s(x0))
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
QDP
                                    ↳ Narrowing

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

EQ(n__s(y0), n__s(n__0)) → EQ(y0, 0)
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(s(x0), activate(y1))
EQ(n__s(n__inf(x0)), n__s(y1)) → EQ(inf(activate(x0)), activate(y1))
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__0)) → EQ(length(activate(y0)), 0)
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, s(x0))
EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), s(x0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), s(x0))
EQ(n__s(n__take(y0, y1)), n__s(n__0)) → EQ(take(activate(y0), activate(y1)), 0)
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule EQ(n__s(n__inf(x0)), n__s(y1)) → EQ(inf(activate(x0)), activate(y1)) at position [1] we obtained the following new rules:

EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), s(x0))
EQ(n__s(n__inf(y0)), n__s(x0)) → EQ(inf(activate(y0)), x0)
EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__0)) → EQ(inf(activate(y0)), 0)
EQ(n__s(n__inf(y0)), n__s(n__take(x0, x1))) → EQ(inf(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
QDP
                                        ↳ Narrowing

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

EQ(n__s(y0), n__s(n__0)) → EQ(y0, 0)
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(s(x0), activate(y1))
EQ(n__s(n__inf(y0)), n__s(n__0)) → EQ(inf(activate(y0)), 0)
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(n__length(y0)), n__s(n__0)) → EQ(length(activate(y0)), 0)
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, s(x0))
EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), s(x0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), s(x0))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), s(x0))
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__take(x0, x1))) → EQ(inf(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(x0)) → EQ(inf(activate(y0)), x0)
EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__0)) → EQ(take(activate(y0), activate(y1)), 0)
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule EQ(n__s(n__s(x0)), n__s(y1)) → EQ(s(x0), activate(y1)) at position [0] we obtained the following new rules:

EQ(n__s(n__s(x0)), n__s(y1)) → EQ(n__s(x0), activate(y1))



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ Narrowing
QDP
                                            ↳ Narrowing

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

EQ(n__s(n__inf(y0)), n__s(n__0)) → EQ(inf(activate(y0)), 0)
EQ(n__s(y0), n__s(n__0)) → EQ(y0, 0)
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(n__length(y0)), n__s(n__0)) → EQ(length(activate(y0)), 0)
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, s(x0))
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), s(x0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), s(x0))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), s(x0))
EQ(n__s(n__inf(y0)), n__s(n__take(x0, x1))) → EQ(inf(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(n__s(x0), activate(y1))
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(x0)) → EQ(inf(activate(y0)), x0)
EQ(n__s(n__take(y0, y1)), n__s(n__0)) → EQ(take(activate(y0), activate(y1)), 0)
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, s(x0)) at position [1] we obtained the following new rules:

EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, n__s(x0))



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ Narrowing
                                          ↳ QDP
                                            ↳ Narrowing
QDP
                                                ↳ Narrowing

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

EQ(n__s(y0), n__s(n__0)) → EQ(y0, 0)
EQ(n__s(n__inf(y0)), n__s(n__0)) → EQ(inf(activate(y0)), 0)
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(n__length(y0)), n__s(n__0)) → EQ(length(activate(y0)), 0)
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, n__s(x0))
EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), s(x0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), s(x0))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), s(x0))
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__take(x0, x1))) → EQ(inf(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(n__s(x0), activate(y1))
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(x0)) → EQ(inf(activate(y0)), x0)
EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__0)) → EQ(take(activate(y0), activate(y1)), 0)
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule EQ(n__s(y0), n__s(n__0)) → EQ(y0, 0) at position [1] we obtained the following new rules:

EQ(n__s(y0), n__s(n__0)) → EQ(y0, n__0)



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ Narrowing
                                          ↳ QDP
                                            ↳ Narrowing
                                              ↳ QDP
                                                ↳ Narrowing
QDP
                                                    ↳ DependencyGraphProof

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

EQ(n__s(n__inf(y0)), n__s(n__0)) → EQ(inf(activate(y0)), 0)
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(n__length(y0)), n__s(n__0)) → EQ(length(activate(y0)), 0)
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), s(x0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), s(x0))
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, n__s(x0))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), s(x0))
EQ(n__s(y0), n__s(n__0)) → EQ(y0, n__0)
EQ(n__s(n__inf(y0)), n__s(n__take(x0, x1))) → EQ(inf(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(n__s(x0), activate(y1))
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(x0)) → EQ(inf(activate(y0)), x0)
EQ(n__s(n__take(y0, y1)), n__s(n__0)) → EQ(take(activate(y0), activate(y1)), 0)
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 1 SCC with 1 less node.

↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ Narrowing
                                          ↳ QDP
                                            ↳ Narrowing
                                              ↳ QDP
                                                ↳ Narrowing
                                                  ↳ QDP
                                                    ↳ DependencyGraphProof
QDP
                                                        ↳ Narrowing

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

EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), s(x0))
EQ(n__s(n__inf(y0)), n__s(n__0)) → EQ(inf(activate(y0)), 0)
EQ(n__s(n__inf(y0)), n__s(n__take(x0, x1))) → EQ(inf(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(n__s(x0), activate(y1))
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(n__length(y0)), n__s(n__0)) → EQ(length(activate(y0)), 0)
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(x0)) → EQ(inf(activate(y0)), x0)
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, n__s(x0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), s(x0))
EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), s(x0))
EQ(n__s(n__take(y0, y1)), n__s(n__0)) → EQ(take(activate(y0), activate(y1)), 0)
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), s(x0)) at position [1] we obtained the following new rules:

EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), n__s(x0))



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ Narrowing
                                          ↳ QDP
                                            ↳ Narrowing
                                              ↳ QDP
                                                ↳ Narrowing
                                                  ↳ QDP
                                                    ↳ DependencyGraphProof
                                                      ↳ QDP
                                                        ↳ Narrowing
QDP
                                                            ↳ Narrowing

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

EQ(n__s(n__inf(y0)), n__s(n__0)) → EQ(inf(activate(y0)), 0)
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), n__s(x0))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(n__length(y0)), n__s(n__0)) → EQ(length(activate(y0)), 0)
EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), s(x0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, n__s(x0))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), s(x0))
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__take(x0, x1))) → EQ(inf(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(n__s(x0), activate(y1))
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(x0)) → EQ(inf(activate(y0)), x0)
EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__0)) → EQ(take(activate(y0), activate(y1)), 0)
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule EQ(n__s(n__take(y0, y1)), n__s(n__0)) → EQ(take(activate(y0), activate(y1)), 0) at position [1] we obtained the following new rules:

EQ(n__s(n__take(y0, y1)), n__s(n__0)) → EQ(take(activate(y0), activate(y1)), n__0)



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ Narrowing
                                          ↳ QDP
                                            ↳ Narrowing
                                              ↳ QDP
                                                ↳ Narrowing
                                                  ↳ QDP
                                                    ↳ DependencyGraphProof
                                                      ↳ QDP
                                                        ↳ Narrowing
                                                          ↳ QDP
                                                            ↳ Narrowing
QDP
                                                                ↳ DependencyGraphProof

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

EQ(n__s(n__inf(y0)), n__s(n__0)) → EQ(inf(activate(y0)), 0)
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), n__s(x0))
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(n__length(y0)), n__s(n__0)) → EQ(length(activate(y0)), 0)
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, n__s(x0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), s(x0))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), s(x0))
EQ(n__s(n__inf(y0)), n__s(n__take(x0, x1))) → EQ(inf(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(n__s(x0), activate(y1))
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__0)) → EQ(take(activate(y0), activate(y1)), n__0)
EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(x0)) → EQ(inf(activate(y0)), x0)
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 1 SCC with 1 less node.

↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ Narrowing
                                          ↳ QDP
                                            ↳ Narrowing
                                              ↳ QDP
                                                ↳ Narrowing
                                                  ↳ QDP
                                                    ↳ DependencyGraphProof
                                                      ↳ QDP
                                                        ↳ Narrowing
                                                          ↳ QDP
                                                            ↳ Narrowing
                                                              ↳ QDP
                                                                ↳ DependencyGraphProof
QDP
                                                                    ↳ Narrowing

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

EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), s(x0))
EQ(n__s(n__inf(y0)), n__s(n__0)) → EQ(inf(activate(y0)), 0)
EQ(n__s(n__inf(y0)), n__s(n__take(x0, x1))) → EQ(inf(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), n__s(x0))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(n__s(x0), activate(y1))
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(n__length(y0)), n__s(n__0)) → EQ(length(activate(y0)), 0)
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(x0)) → EQ(inf(activate(y0)), x0)
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, n__s(x0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), s(x0))
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule EQ(n__s(n__length(y0)), n__s(n__0)) → EQ(length(activate(y0)), 0) at position [1] we obtained the following new rules:

EQ(n__s(n__length(y0)), n__s(n__0)) → EQ(length(activate(y0)), n__0)



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ Narrowing
                                          ↳ QDP
                                            ↳ Narrowing
                                              ↳ QDP
                                                ↳ Narrowing
                                                  ↳ QDP
                                                    ↳ DependencyGraphProof
                                                      ↳ QDP
                                                        ↳ Narrowing
                                                          ↳ QDP
                                                            ↳ Narrowing
                                                              ↳ QDP
                                                                ↳ DependencyGraphProof
                                                                  ↳ QDP
                                                                    ↳ Narrowing
QDP
                                                                        ↳ DependencyGraphProof

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

EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), s(x0))
EQ(n__s(n__inf(y0)), n__s(n__0)) → EQ(inf(activate(y0)), 0)
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__take(x0, x1))) → EQ(inf(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), n__s(x0))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(n__s(x0), activate(y1))
EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(x0)) → EQ(inf(activate(y0)), x0)
EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), s(x0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, n__s(x0))
EQ(n__s(n__length(y0)), n__s(n__0)) → EQ(length(activate(y0)), n__0)
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 1 SCC with 1 less node.

↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ Narrowing
                                          ↳ QDP
                                            ↳ Narrowing
                                              ↳ QDP
                                                ↳ Narrowing
                                                  ↳ QDP
                                                    ↳ DependencyGraphProof
                                                      ↳ QDP
                                                        ↳ Narrowing
                                                          ↳ QDP
                                                            ↳ Narrowing
                                                              ↳ QDP
                                                                ↳ DependencyGraphProof
                                                                  ↳ QDP
                                                                    ↳ Narrowing
                                                                      ↳ QDP
                                                                        ↳ DependencyGraphProof
QDP
                                                                            ↳ Narrowing

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

EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), s(x0))
EQ(n__s(n__inf(y0)), n__s(n__0)) → EQ(inf(activate(y0)), 0)
EQ(n__s(n__inf(y0)), n__s(n__take(x0, x1))) → EQ(inf(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), n__s(x0))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(n__s(x0), activate(y1))
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(x0)) → EQ(inf(activate(y0)), x0)
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, n__s(x0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), s(x0))
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), s(x0)) at position [1] we obtained the following new rules:

EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), n__s(x0))



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ Narrowing
                                          ↳ QDP
                                            ↳ Narrowing
                                              ↳ QDP
                                                ↳ Narrowing
                                                  ↳ QDP
                                                    ↳ DependencyGraphProof
                                                      ↳ QDP
                                                        ↳ Narrowing
                                                          ↳ QDP
                                                            ↳ Narrowing
                                                              ↳ QDP
                                                                ↳ DependencyGraphProof
                                                                  ↳ QDP
                                                                    ↳ Narrowing
                                                                      ↳ QDP
                                                                        ↳ DependencyGraphProof
                                                                          ↳ QDP
                                                                            ↳ Narrowing
QDP
                                                                                ↳ Narrowing

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

EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), s(x0))
EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), n__s(x0))
EQ(n__s(n__inf(y0)), n__s(n__0)) → EQ(inf(activate(y0)), 0)
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__take(x0, x1))) → EQ(inf(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), n__s(x0))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(n__s(x0), activate(y1))
EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(x0)) → EQ(inf(activate(y0)), x0)
EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, n__s(x0))
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), s(x0)) at position [1] we obtained the following new rules:

EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), n__s(x0))



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ Narrowing
                                          ↳ QDP
                                            ↳ Narrowing
                                              ↳ QDP
                                                ↳ Narrowing
                                                  ↳ QDP
                                                    ↳ DependencyGraphProof
                                                      ↳ QDP
                                                        ↳ Narrowing
                                                          ↳ QDP
                                                            ↳ Narrowing
                                                              ↳ QDP
                                                                ↳ DependencyGraphProof
                                                                  ↳ QDP
                                                                    ↳ Narrowing
                                                                      ↳ QDP
                                                                        ↳ DependencyGraphProof
                                                                          ↳ QDP
                                                                            ↳ Narrowing
                                                                              ↳ QDP
                                                                                ↳ Narrowing
QDP
                                                                                    ↳ Narrowing

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

EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), n__s(x0))
EQ(n__s(n__inf(y0)), n__s(n__0)) → EQ(inf(activate(y0)), 0)
EQ(n__s(n__inf(y0)), n__s(n__take(x0, x1))) → EQ(inf(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), n__s(x0))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(n__s(x0), activate(y1))
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(x0)) → EQ(inf(activate(y0)), x0)
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, n__s(x0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), n__s(x0))
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By narrowing [15] the rule EQ(n__s(n__inf(y0)), n__s(n__0)) → EQ(inf(activate(y0)), 0) at position [1] we obtained the following new rules:

EQ(n__s(n__inf(y0)), n__s(n__0)) → EQ(inf(activate(y0)), n__0)



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ Narrowing
                                          ↳ QDP
                                            ↳ Narrowing
                                              ↳ QDP
                                                ↳ Narrowing
                                                  ↳ QDP
                                                    ↳ DependencyGraphProof
                                                      ↳ QDP
                                                        ↳ Narrowing
                                                          ↳ QDP
                                                            ↳ Narrowing
                                                              ↳ QDP
                                                                ↳ DependencyGraphProof
                                                                  ↳ QDP
                                                                    ↳ Narrowing
                                                                      ↳ QDP
                                                                        ↳ DependencyGraphProof
                                                                          ↳ QDP
                                                                            ↳ Narrowing
                                                                              ↳ QDP
                                                                                ↳ Narrowing
                                                                                  ↳ QDP
                                                                                    ↳ Narrowing
QDP
                                                                                        ↳ DependencyGraphProof

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

EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), n__s(x0))
EQ(n__s(n__inf(y0)), n__s(n__0)) → EQ(inf(activate(y0)), n__0)
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__take(x0, x1))) → EQ(inf(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), n__s(x0))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(n__s(x0), activate(y1))
EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(x0)) → EQ(inf(activate(y0)), x0)
EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, n__s(x0))
EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), n__s(x0))
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 1 SCC with 1 less node.

↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ Narrowing
                                          ↳ QDP
                                            ↳ Narrowing
                                              ↳ QDP
                                                ↳ Narrowing
                                                  ↳ QDP
                                                    ↳ DependencyGraphProof
                                                      ↳ QDP
                                                        ↳ Narrowing
                                                          ↳ QDP
                                                            ↳ Narrowing
                                                              ↳ QDP
                                                                ↳ DependencyGraphProof
                                                                  ↳ QDP
                                                                    ↳ Narrowing
                                                                      ↳ QDP
                                                                        ↳ DependencyGraphProof
                                                                          ↳ QDP
                                                                            ↳ Narrowing
                                                                              ↳ QDP
                                                                                ↳ Narrowing
                                                                                  ↳ QDP
                                                                                    ↳ Narrowing
                                                                                      ↳ QDP
                                                                                        ↳ DependencyGraphProof
QDP
                                                                                            ↳ QDPOrderProof

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

EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), n__s(x0))
EQ(n__s(n__inf(y0)), n__s(n__take(x0, x1))) → EQ(inf(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), n__s(x0))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(n__s(x0), activate(y1))
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(x0)) → EQ(inf(activate(y0)), x0)
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, n__s(x0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), n__s(x0))
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
We use the reduction pair processor [15].


The following pairs can be oriented strictly and are deleted.


EQ(n__s(n__length(y0)), n__s(n__s(x0))) → EQ(length(activate(y0)), n__s(x0))
EQ(n__s(n__inf(y0)), n__s(n__take(x0, x1))) → EQ(inf(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__inf(x0))) → EQ(take(activate(y0), activate(y1)), inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__length(x0))) → EQ(take(activate(y0), activate(y1)), length(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(n__take(x0, x1))) → EQ(take(activate(y0), activate(y1)), take(activate(x0), activate(x1)))
EQ(n__s(n__length(y0)), n__s(n__take(x0, x1))) → EQ(length(activate(y0)), take(activate(x0), activate(x1)))
EQ(n__s(n__take(y0, y1)), n__s(n__s(x0))) → EQ(take(activate(y0), activate(y1)), n__s(x0))
EQ(n__s(n__s(x0)), n__s(y1)) → EQ(n__s(x0), activate(y1))
EQ(n__s(y0), n__s(n__inf(x0))) → EQ(y0, inf(activate(x0)))
EQ(n__s(n__take(y0, y1)), n__s(x0)) → EQ(take(activate(y0), activate(y1)), x0)
EQ(n__s(n__length(y0)), n__s(x0)) → EQ(length(activate(y0)), x0)
EQ(n__s(y0), n__s(n__take(x0, x1))) → EQ(y0, take(activate(x0), activate(x1)))
EQ(n__s(n__inf(y0)), n__s(x0)) → EQ(inf(activate(y0)), x0)
EQ(n__s(y0), n__s(n__s(x0))) → EQ(y0, n__s(x0))
EQ(n__s(y0), n__s(x0)) → EQ(y0, x0)
EQ(n__s(n__inf(y0)), n__s(n__s(x0))) → EQ(inf(activate(y0)), n__s(x0))
EQ(n__s(y0), n__s(n__length(x0))) → EQ(y0, length(activate(x0)))
The remaining pairs can at least be oriented weakly.

EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))
Used ordering: Polynomial interpretation [25]:

POL(0) = 1   
POL(EQ(x1, x2)) = x1 + x2   
POL(activate(x1)) = 1 + x1   
POL(cons(x1, x2)) = 0   
POL(inf(x1)) = 1   
POL(length(x1)) = 1   
POL(n__0) = 0   
POL(n__inf(x1)) = 0   
POL(n__length(x1)) = 0   
POL(n__s(x1)) = 1 + x1   
POL(n__take(x1, x2)) = 1   
POL(nil) = 0   
POL(s(x1)) = 1 + x1   
POL(take(x1, x2)) = 1   

The following usable rules [17] were oriented:

activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X
length(nil) → 0
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
take(0, X) → nil
inf(X) → cons(X, n__inf(n__s(X)))
inf(X) → n__inf(X)
s(X) → n__s(X)
0n__0
length(cons(X, L)) → s(n__length(activate(L)))
activate(n__s(X)) → s(X)
activate(n__0) → 0
length(X) → n__length(X)
take(X1, X2) → n__take(X1, X2)



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ Narrowing
                                          ↳ QDP
                                            ↳ Narrowing
                                              ↳ QDP
                                                ↳ Narrowing
                                                  ↳ QDP
                                                    ↳ DependencyGraphProof
                                                      ↳ QDP
                                                        ↳ Narrowing
                                                          ↳ QDP
                                                            ↳ Narrowing
                                                              ↳ QDP
                                                                ↳ DependencyGraphProof
                                                                  ↳ QDP
                                                                    ↳ Narrowing
                                                                      ↳ QDP
                                                                        ↳ DependencyGraphProof
                                                                          ↳ QDP
                                                                            ↳ Narrowing
                                                                              ↳ QDP
                                                                                ↳ Narrowing
                                                                                  ↳ QDP
                                                                                    ↳ Narrowing
                                                                                      ↳ QDP
                                                                                        ↳ DependencyGraphProof
                                                                                          ↳ QDP
                                                                                            ↳ QDPOrderProof
QDP
                                                                                                ↳ QDPOrderProof

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

EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
We use the reduction pair processor [15].


The following pairs can be oriented strictly and are deleted.


EQ(n__s(n__inf(y0)), n__s(n__inf(x0))) → EQ(inf(activate(y0)), inf(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__inf(x0))) → EQ(length(activate(y0)), inf(activate(x0)))
The remaining pairs can at least be oriented weakly.

EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))
EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
Used ordering: Polynomial interpretation [25]:

POL(0) = 1   
POL(EQ(x1, x2)) = x2   
POL(activate(x1)) = 1   
POL(cons(x1, x2)) = 0   
POL(inf(x1)) = 1   
POL(length(x1)) = 1   
POL(n__0) = 0   
POL(n__inf(x1)) = 1   
POL(n__length(x1)) = 0   
POL(n__s(x1)) = 1 + x1   
POL(n__take(x1, x2)) = 0   
POL(nil) = 0   
POL(s(x1)) = 1 + x1   
POL(take(x1, x2)) = 1   

The following usable rules [17] were oriented:

activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
length(nil) → 0
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
take(0, X) → nil
inf(X) → cons(X, n__inf(n__s(X)))
inf(X) → n__inf(X)
s(X) → n__s(X)
0n__0
length(cons(X, L)) → s(n__length(activate(L)))
length(X) → n__length(X)
take(X1, X2) → n__take(X1, X2)



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ Narrowing
                                          ↳ QDP
                                            ↳ Narrowing
                                              ↳ QDP
                                                ↳ Narrowing
                                                  ↳ QDP
                                                    ↳ DependencyGraphProof
                                                      ↳ QDP
                                                        ↳ Narrowing
                                                          ↳ QDP
                                                            ↳ Narrowing
                                                              ↳ QDP
                                                                ↳ DependencyGraphProof
                                                                  ↳ QDP
                                                                    ↳ Narrowing
                                                                      ↳ QDP
                                                                        ↳ DependencyGraphProof
                                                                          ↳ QDP
                                                                            ↳ Narrowing
                                                                              ↳ QDP
                                                                                ↳ Narrowing
                                                                                  ↳ QDP
                                                                                    ↳ Narrowing
                                                                                      ↳ QDP
                                                                                        ↳ DependencyGraphProof
                                                                                          ↳ QDP
                                                                                            ↳ QDPOrderProof
                                                                                              ↳ QDP
                                                                                                ↳ QDPOrderProof
QDP
                                                                                                    ↳ QDPOrderProof

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

EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

Q is empty.
We have to consider all minimal (P,Q,R)-chains.
We use the reduction pair processor [15].


The following pairs can be oriented strictly and are deleted.


EQ(n__s(n__inf(y0)), n__s(n__length(x0))) → EQ(inf(activate(y0)), length(activate(x0)))
The remaining pairs can at least be oriented weakly.

EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))
Used ordering: Polynomial interpretation [25]:

POL(0) = 0   
POL(EQ(x1, x2)) = x1   
POL(activate(x1)) = 1   
POL(cons(x1, x2)) = 0   
POL(inf(x1)) = 1   
POL(length(x1)) = 1   
POL(n__0) = 0   
POL(n__inf(x1)) = 1   
POL(n__length(x1)) = 0   
POL(n__s(x1)) = 1 + x1   
POL(n__take(x1, x2)) = 0   
POL(nil) = 0   
POL(s(x1)) = 1 + x1   
POL(take(x1, x2)) = 0   

The following usable rules [17] were oriented:

activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
length(nil) → 0
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
take(0, X) → nil
inf(X) → cons(X, n__inf(n__s(X)))
inf(X) → n__inf(X)
s(X) → n__s(X)
0n__0
length(cons(X, L)) → s(n__length(activate(L)))
length(X) → n__length(X)
take(X1, X2) → n__take(X1, X2)



↳ QTRS
  ↳ DependencyPairsProof
    ↳ QDP
      ↳ DependencyGraphProof
        ↳ AND
          ↳ QDP
          ↳ QDP
            ↳ Narrowing
              ↳ QDP
                ↳ Narrowing
                  ↳ QDP
                    ↳ Narrowing
                      ↳ QDP
                        ↳ Narrowing
                          ↳ QDP
                            ↳ DependencyGraphProof
                              ↳ QDP
                                ↳ Narrowing
                                  ↳ QDP
                                    ↳ Narrowing
                                      ↳ QDP
                                        ↳ Narrowing
                                          ↳ QDP
                                            ↳ Narrowing
                                              ↳ QDP
                                                ↳ Narrowing
                                                  ↳ QDP
                                                    ↳ DependencyGraphProof
                                                      ↳ QDP
                                                        ↳ Narrowing
                                                          ↳ QDP
                                                            ↳ Narrowing
                                                              ↳ QDP
                                                                ↳ DependencyGraphProof
                                                                  ↳ QDP
                                                                    ↳ Narrowing
                                                                      ↳ QDP
                                                                        ↳ DependencyGraphProof
                                                                          ↳ QDP
                                                                            ↳ Narrowing
                                                                              ↳ QDP
                                                                                ↳ Narrowing
                                                                                  ↳ QDP
                                                                                    ↳ Narrowing
                                                                                      ↳ QDP
                                                                                        ↳ DependencyGraphProof
                                                                                          ↳ QDP
                                                                                            ↳ QDPOrderProof
                                                                                              ↳ QDP
                                                                                                ↳ QDPOrderProof
                                                                                                  ↳ QDP
                                                                                                    ↳ QDPOrderProof
QDP

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

EQ(n__s(n__length(y0)), n__s(n__length(x0))) → EQ(length(activate(y0)), length(activate(x0)))

The TRS R consists of the following rules:

eq(n__0, n__0) → true
eq(n__s(X), n__s(Y)) → eq(activate(X), activate(Y))
eq(X, Y) → false
inf(X) → cons(X, n__inf(n__s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(activate(Y), n__take(activate(X), activate(L)))
length(nil) → 0
length(cons(X, L)) → s(n__length(activate(L)))
0n__0
s(X) → n__s(X)
inf(X) → n__inf(X)
take(X1, X2) → n__take(X1, X2)
length(X) → n__length(X)
activate(n__0) → 0
activate(n__s(X)) → s(X)
activate(n__inf(X)) → inf(activate(X))
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__length(X)) → length(activate(X))
activate(X) → X

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