(0) Obligation:

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

rev(ls) → r1(ls, empty)
r1(empty, a) → a
r1(cons(x, k), a) → r1(k, cons(x, a))

Q is empty.

(1) Overlay + Local Confluence (EQUIVALENT transformation)

The TRS is overlay and locally confluent. By [NOC] we can switch to innermost.

(2) Obligation:

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

rev(ls) → r1(ls, empty)
r1(empty, a) → a
r1(cons(x, k), a) → r1(k, cons(x, a))

The set Q consists of the following terms:

rev(x0)
r1(empty, x0)
r1(cons(x0, x1), x2)

(3) DependencyPairsProof (EQUIVALENT transformation)

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

(4) Obligation:

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

REV(ls) → R1(ls, empty)
R1(cons(x, k), a) → R1(k, cons(x, a))

The TRS R consists of the following rules:

rev(ls) → r1(ls, empty)
r1(empty, a) → a
r1(cons(x, k), a) → r1(k, cons(x, a))

The set Q consists of the following terms:

rev(x0)
r1(empty, x0)
r1(cons(x0, x1), x2)

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

(5) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node.

(6) Obligation:

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

R1(cons(x, k), a) → R1(k, cons(x, a))

The TRS R consists of the following rules:

rev(ls) → r1(ls, empty)
r1(empty, a) → a
r1(cons(x, k), a) → r1(k, cons(x, a))

The set Q consists of the following terms:

rev(x0)
r1(empty, x0)
r1(cons(x0, x1), x2)

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

(7) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


R1(cons(x, k), a) → R1(k, cons(x, a))
The remaining pairs can at least be oriented weakly.
Used ordering: Combined order from the following AFS and order.
R1(x1, x2)  =  R1(x1)
cons(x1, x2)  =  cons(x2)
rev(x1)  =  rev(x1)
r1(x1, x2)  =  r1(x1, x2)
empty  =  empty

Lexicographic Path Order [LPO].
Precedence:
rev1 > r12 > cons1
rev1 > empty

The following usable rules [FROCOS05] were oriented:

rev(ls) → r1(ls, empty)
r1(empty, a) → a
r1(cons(x, k), a) → r1(k, cons(x, a))

(8) Obligation:

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

rev(ls) → r1(ls, empty)
r1(empty, a) → a
r1(cons(x, k), a) → r1(k, cons(x, a))

The set Q consists of the following terms:

rev(x0)
r1(empty, x0)
r1(cons(x0, x1), x2)

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

(9) PisEmptyProof (EQUIVALENT transformation)

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

(10) TRUE