(0) Obligation:

Generalized rewrite system (where rules with free variables on rhs are allowed):
The TRS R consists of the following rules:

U12(tt) → s(length(L))
U23(tt) → cons(N)
zeroscons(0)
U11(tt) → U12(tt)
U21(tt) → U22(tt)
U22(tt) → U23(tt)
length(nil) → 0
length(cons(N)) → U11(tt)
take(0, IL) → nil
take(s(M), cons(N)) → U21(tt)