(0) Obligation:
Q restricted rewrite system:
The TRS R consists of the following rules:
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
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:
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
The set Q consists of the following terms:
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
(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:
DBL(s(X)) → DBL(X)
DBLS(cons(X, Y)) → DBL(X)
DBLS(cons(X, Y)) → DBLS(Y)
SEL(s(X), cons(Y, Z)) → SEL(X, Z)
INDX(cons(X, Y), Z) → SEL(X, Z)
INDX(cons(X, Y), Z) → INDX(Y, Z)
FROM(X) → FROM(s(X))
The TRS R consists of the following rules:
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
The set Q consists of the following terms:
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
We have to consider all minimal (P,Q,R)-chains.
(5) DependencyGraphProof (EQUIVALENT transformation)
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 5 SCCs with 2 less nodes.
(6) Complex Obligation (AND)
(7) Obligation:
Q DP problem:
The TRS P consists of the following rules:
FROM(X) → FROM(s(X))
The TRS R consists of the following rules:
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
The set Q consists of the following terms:
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
We have to consider all minimal (P,Q,R)-chains.
(8) Obligation:
Q DP problem:
The TRS P consists of the following rules:
SEL(s(X), cons(Y, Z)) → SEL(X, Z)
The TRS R consists of the following rules:
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
The set Q consists of the following terms:
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
We have to consider all minimal (P,Q,R)-chains.
(9) Obligation:
Q DP problem:
The TRS P consists of the following rules:
INDX(cons(X, Y), Z) → INDX(Y, Z)
The TRS R consists of the following rules:
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
The set Q consists of the following terms:
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
We have to consider all minimal (P,Q,R)-chains.
(10) Obligation:
Q DP problem:
The TRS P consists of the following rules:
DBL(s(X)) → DBL(X)
The TRS R consists of the following rules:
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
The set Q consists of the following terms:
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
We have to consider all minimal (P,Q,R)-chains.
(11) Obligation:
Q DP problem:
The TRS P consists of the following rules:
DBLS(cons(X, Y)) → DBLS(Y)
The TRS R consists of the following rules:
dbl(0) → 0
dbl(s(X)) → s(s(dbl(X)))
dbls(nil) → nil
dbls(cons(X, Y)) → cons(dbl(X), dbls(Y))
sel(0, cons(X, Y)) → X
sel(s(X), cons(Y, Z)) → sel(X, Z)
indx(nil, X) → nil
indx(cons(X, Y), Z) → cons(sel(X, Z), indx(Y, Z))
from(X) → cons(X, from(s(X)))
The set Q consists of the following terms:
dbl(0)
dbl(s(x0))
dbls(nil)
dbls(cons(x0, x1))
sel(0, cons(x0, x1))
sel(s(x0), cons(x1, x2))
indx(nil, x0)
indx(cons(x0, x1), x2)
from(x0)
We have to consider all minimal (P,Q,R)-chains.