Consider the TRS R consisting of the rewrite rules
1: 2nd(cons(X,n__cons(Y,Z))) -> activate(Y)
2: from(X) -> cons(X,n__from(n__s(X)))
3: cons(X1,X2) -> n__cons(X1,X2)
4: from(X) -> n__from(X)
5: s(X) -> n__s(X)
6: activate(n__cons(X1,X2)) -> cons(activate(X1),X2)
7: activate(n__from(X)) -> from(activate(X))
8: activate(n__s(X)) -> s(activate(X))
9: activate(X) -> X
There are 8 dependency pairs:
10: 2nd#(cons(X,n__cons(Y,Z))) -> ACTIVATE(Y)
11: FROM(X) -> CONS(X,n__from(n__s(X)))
12: ACTIVATE(n__cons(X1,X2)) -> CONS(activate(X1),X2)
13: ACTIVATE(n__cons(X1,X2)) -> ACTIVATE(X1)
14: ACTIVATE(n__from(X)) -> FROM(activate(X))
15: ACTIVATE(n__from(X)) -> ACTIVATE(X)
16: ACTIVATE(n__s(X)) -> S(activate(X))
17: ACTIVATE(n__s(X)) -> ACTIVATE(X)
The approximated dependency graph contains one SCC:
{13,15,17}.
- Consider the SCC {13,15,17}.
There are no usable rules.
By taking the polynomial interpretation
[ACTIVATE](x) = [n__from](x) = [n__s](x) = x + 1
and [n__cons](x,y) = x + y + 1,
the rules in {13,15,17}
are strictly decreasing.
Hence the TRS is terminating.