Term Rewriting System R:
[X, Y, Z]
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)))
dbl1(0) -> 01
dbl1(s(X)) -> s1(s1(dbl1(X)))
sel1(0, cons(X, Y)) -> X
sel1(s(X), cons(Y, Z)) -> sel1(X, Z)
quote(0) -> 01
quote(s(X)) -> s1(quote(X))
quote(dbl(X)) -> dbl1(X)
quote(sel(X, Y)) -> sel1(X, Y)

Termination of R to be shown.



   R
Dependency Pair Analysis



R contains the following Dependency Pairs:

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))
DBL1(s(X)) -> DBL1(X)
SEL1(s(X), cons(Y, Z)) -> SEL1(X, Z)
QUOTE(s(X)) -> QUOTE(X)
QUOTE(dbl(X)) -> DBL1(X)
QUOTE(sel(X, Y)) -> SEL1(X, Y)

Furthermore, R contains eight SCCs.


   R
DPs
       →DP Problem 1
Polynomial Ordering
       →DP Problem 2
Polo
       →DP Problem 3
Inst
       →DP Problem 4
Remaining
       →DP Problem 5
Remaining
       →DP Problem 6
Remaining
       →DP Problem 7
Remaining
       →DP Problem 8
Remaining


Dependency Pair:

DBL(s(X)) -> DBL(X)


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)))
dbl1(0) -> 01
dbl1(s(X)) -> s1(s1(dbl1(X)))
sel1(0, cons(X, Y)) -> X
sel1(s(X), cons(Y, Z)) -> sel1(X, Z)
quote(0) -> 01
quote(s(X)) -> s1(quote(X))
quote(dbl(X)) -> dbl1(X)
quote(sel(X, Y)) -> sel1(X, Y)





The following dependency pair can be strictly oriented:

DBL(s(X)) -> DBL(X)


There are no usable rules w.r.t. to the implicit AFS that need to be oriented.

Used ordering: Polynomial ordering with Polynomial interpretation:
  POL(s(x1))=  1 + x1  
  POL(DBL(x1))=  x1  

resulting in one new DP problem.



   R
DPs
       →DP Problem 1
Polo
           →DP Problem 9
Dependency Graph
       →DP Problem 2
Polo
       →DP Problem 3
Inst
       →DP Problem 4
Remaining
       →DP Problem 5
Remaining
       →DP Problem 6
Remaining
       →DP Problem 7
Remaining
       →DP Problem 8
Remaining


Dependency Pair:


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)))
dbl1(0) -> 01
dbl1(s(X)) -> s1(s1(dbl1(X)))
sel1(0, cons(X, Y)) -> X
sel1(s(X), cons(Y, Z)) -> sel1(X, Z)
quote(0) -> 01
quote(s(X)) -> s1(quote(X))
quote(dbl(X)) -> dbl1(X)
quote(sel(X, Y)) -> sel1(X, Y)





Using the Dependency Graph resulted in no new DP problems.


   R
DPs
       →DP Problem 1
Polo
       →DP Problem 2
Polynomial Ordering
       →DP Problem 3
Inst
       →DP Problem 4
Remaining
       →DP Problem 5
Remaining
       →DP Problem 6
Remaining
       →DP Problem 7
Remaining
       →DP Problem 8
Remaining


Dependency Pair:

SEL(s(X), cons(Y, Z)) -> SEL(X, Z)


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)))
dbl1(0) -> 01
dbl1(s(X)) -> s1(s1(dbl1(X)))
sel1(0, cons(X, Y)) -> X
sel1(s(X), cons(Y, Z)) -> sel1(X, Z)
quote(0) -> 01
quote(s(X)) -> s1(quote(X))
quote(dbl(X)) -> dbl1(X)
quote(sel(X, Y)) -> sel1(X, Y)





The following dependency pair can be strictly oriented:

SEL(s(X), cons(Y, Z)) -> SEL(X, Z)


There are no usable rules w.r.t. to the implicit AFS that need to be oriented.

Used ordering: Polynomial ordering with Polynomial interpretation:
  POL(SEL(x1, x2))=  x1  
  POL(cons(x1, x2))=  0  
  POL(s(x1))=  1 + x1  

resulting in one new DP problem.



   R
DPs
       →DP Problem 1
Polo
       →DP Problem 2
Polo
           →DP Problem 10
Dependency Graph
       →DP Problem 3
Inst
       →DP Problem 4
Remaining
       →DP Problem 5
Remaining
       →DP Problem 6
Remaining
       →DP Problem 7
Remaining
       →DP Problem 8
Remaining


Dependency Pair:


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)))
dbl1(0) -> 01
dbl1(s(X)) -> s1(s1(dbl1(X)))
sel1(0, cons(X, Y)) -> X
sel1(s(X), cons(Y, Z)) -> sel1(X, Z)
quote(0) -> 01
quote(s(X)) -> s1(quote(X))
quote(dbl(X)) -> dbl1(X)
quote(sel(X, Y)) -> sel1(X, Y)





Using the Dependency Graph resulted in no new DP problems.


   R
DPs
       →DP Problem 1
Polo
       →DP Problem 2
Polo
       →DP Problem 3
Instantiation Transformation
       →DP Problem 4
Remaining
       →DP Problem 5
Remaining
       →DP Problem 6
Remaining
       →DP Problem 7
Remaining
       →DP Problem 8
Remaining


Dependency Pair:

FROM(X) -> FROM(s(X))


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)))
dbl1(0) -> 01
dbl1(s(X)) -> s1(s1(dbl1(X)))
sel1(0, cons(X, Y)) -> X
sel1(s(X), cons(Y, Z)) -> sel1(X, Z)
quote(0) -> 01
quote(s(X)) -> s1(quote(X))
quote(dbl(X)) -> dbl1(X)
quote(sel(X, Y)) -> sel1(X, Y)





On this DP problem, an Instantiation SCC transformation can be performed.
As a result of transforming the rule

FROM(X) -> FROM(s(X))
one new Dependency Pair is created:

FROM(s(X'')) -> FROM(s(s(X'')))

The transformation is resulting in one new DP problem:



   R
DPs
       →DP Problem 1
Polo
       →DP Problem 2
Polo
       →DP Problem 3
Inst
       →DP Problem 4
Remaining Obligation(s)
       →DP Problem 5
Remaining Obligation(s)
       →DP Problem 6
Remaining Obligation(s)
       →DP Problem 7
Remaining Obligation(s)
       →DP Problem 8
Remaining Obligation(s)




The following remains to be proven:


   R
DPs
       →DP Problem 1
Polo
       →DP Problem 2
Polo
       →DP Problem 3
Inst
       →DP Problem 4
Remaining Obligation(s)
       →DP Problem 5
Remaining Obligation(s)
       →DP Problem 6
Remaining Obligation(s)
       →DP Problem 7
Remaining Obligation(s)
       →DP Problem 8
Remaining Obligation(s)




The following remains to be proven:


   R
DPs
       →DP Problem 1
Polo
       →DP Problem 2
Polo
       →DP Problem 3
Inst
       →DP Problem 4
Remaining Obligation(s)
       →DP Problem 5
Remaining Obligation(s)
       →DP Problem 6
Remaining Obligation(s)
       →DP Problem 7
Remaining Obligation(s)
       →DP Problem 8
Remaining Obligation(s)




The following remains to be proven:


   R
DPs
       →DP Problem 1
Polo
       →DP Problem 2
Polo
       →DP Problem 3
Inst
       →DP Problem 4
Remaining Obligation(s)
       →DP Problem 5
Remaining Obligation(s)
       →DP Problem 6
Remaining Obligation(s)
       →DP Problem 7
Remaining Obligation(s)
       →DP Problem 8
Remaining Obligation(s)




The following remains to be proven:


   R
DPs
       →DP Problem 1
Polo
       →DP Problem 2
Polo
       →DP Problem 3
Inst
       →DP Problem 4
Remaining Obligation(s)
       →DP Problem 5
Remaining Obligation(s)
       →DP Problem 6
Remaining Obligation(s)
       →DP Problem 7
Remaining Obligation(s)
       →DP Problem 8
Remaining Obligation(s)




The following remains to be proven:


   R
DPs
       →DP Problem 1
Polo
       →DP Problem 2
Polo
       →DP Problem 3
Inst
       →DP Problem 4
Remaining Obligation(s)
       →DP Problem 5
Remaining Obligation(s)
       →DP Problem 6
Remaining Obligation(s)
       →DP Problem 7
Remaining Obligation(s)
       →DP Problem 8
Remaining Obligation(s)




The following remains to be proven:

Termination of R could not be shown.
Duration:
0:00 minutes