Term Rewriting System R:
[X, XS, N]
from(X) -> cons(X, from(s(X)))
head(cons(X, XS)) -> X
2nd(cons(X, XS)) -> head(XS)
take(0, XS) -> nil
take(s(N), cons(X, XS)) -> cons(X, take(N, XS))
sel(0, cons(X, XS)) -> X
sel(s(N), cons(X, XS)) -> sel(N, XS)
Termination of R to be shown.
R
↳Overlay and local confluence Check
The TRS is overlay and locally confluent (all critical pairs are trivially joinable).Hence, we can switch to innermost.
R
↳OC
→TRS2
↳Dependency Pair Analysis
R contains the following Dependency Pairs:
FROM(X) -> FROM(s(X))
2ND(cons(X, XS)) -> HEAD(XS)
TAKE(s(N), cons(X, XS)) -> TAKE(N, XS)
SEL(s(N), cons(X, XS)) -> SEL(N, XS)
Furthermore, R contains three SCCs.
R
↳OC
→TRS2
↳DPs
→DP Problem 1
↳Usable Rules (Innermost)
Dependency Pair:
FROM(X) -> FROM(s(X))
Rules:
from(X) -> cons(X, from(s(X)))
head(cons(X, XS)) -> X
2nd(cons(X, XS)) -> head(XS)
take(0, XS) -> nil
take(s(N), cons(X, XS)) -> cons(X, take(N, XS))
sel(0, cons(X, XS)) -> X
sel(s(N), cons(X, XS)) -> sel(N, XS)
Strategy:
innermost
As we are in the innermost case, we can delete all 7 non-usable-rules.
R
↳OC
→TRS2
↳DPs
→DP Problem 1
↳UsableRules
...
→DP Problem 4
↳Non Termination
Dependency Pair:
FROM(X) -> FROM(s(X))
Rule:
none
Strategy:
innermost
Found an infinite P-chain over R:
P =
FROM(X) -> FROM(s(X))
R = none
s = FROM(X)
evaluates to t =FROM(s(X))
Thus, s starts an infinite chain as s matches t.
Non-Termination of R could be shown.
Duration:
0:02 minutes