(0) Obligation:

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

U11(tt) → s(length(L))
U31(tt) → cons(N)
and(tt) → X
zeroscons(0)
U21(tt) → nil
isNattt
isNatisNatList
isNatisNat
isNatIListisNatList
isNatIListtt
isNatIListand(isNat)
isNatListtt
isNatListand(isNat)
length(nil) → 0
length(cons(N)) → U11(and(isNatList))
take(0, IL) → U21(isNatIList)
take(s(M), cons(N)) → U31(and(isNatIList))