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 contains the following Dependency Pairs: FROM(X) -> FROM(s(X)) QUOTE(sel(X, Y)) -> SEL1(X, Y) QUOTE(s(X)) -> QUOTE(X) QUOTE(dbl(X)) -> DBL1(X) SEL(s(X), cons(Y, Z)) -> SEL(X, Z) SEL1(s(X), cons(Y, Z)) -> SEL1(X, Z) INDX(cons(X, Y), Z) -> SEL(X, Z) INDX(cons(X, Y), Z) -> INDX(Y, Z) DBLS(cons(X, Y)) -> DBL(X) DBLS(cons(X, Y)) -> DBLS(Y) DBL(s(X)) -> DBL(X) DBL1(s(X)) -> DBL1(X) Furthermore, R contains eight SCCs. SCC1: FROM(X) -> FROM(s(X)) Removing rules from R by ordering and analyzing Dependency Pairs, Usable Rules, and Usable Equations. This is possible by using the following (C_E-compatible) Polynomial ordering. Polynomial interpretation: POL(s(x_1)) = x_1 POL(FROM(x_1)) = 1 + x_1 No Dependency Pairs can be deleted. The following rules of R can be deleted: from(X) -> cons(X, from(s(X))) quote(sel(X, Y)) -> sel1(X, Y) quote(0) -> 01 quote(s(X)) -> s1(quote(X)) quote(dbl(X)) -> dbl1(X) sel(0, cons(X, Y)) -> X sel(s(X), cons(Y, Z)) -> sel(X, Z) sel1(0, cons(X, Y)) -> X sel1(s(X), cons(Y, Z)) -> sel1(X, Z) indx(nil, X) -> nil indx(cons(X, Y), Z) -> cons(sel(X, Z), indx(Y, Z)) dbls(cons(X, Y)) -> cons(dbl(X), dbls(Y)) dbls(nil) -> nil dbl(0) -> 0 dbl(s(X)) -> s(s(dbl(X))) dbl1(s(X)) -> s1(s1(dbl1(X))) dbl1(0) -> 01 This transformation is resulting in one new subcycle: SCC1.MRR1: FROM(X) -> FROM(s(X)) Applying the non-overlappingness check to the DPs. The transformation is resulting in one subcycle: SCC1.MRR1.NOC1: FROM(X) -> FROM(s(X)) Found an infinite P-chain over R: P = FROM(X) -> FROM(s(X)) R = [] s = FROM(X) evaluates to t = FROM(s(X)) Thus, s starts an infinite reduction as s matches t. Non-Termination of R could be shown. Duration: 0.832 seconds.