(VAR L IL M N X1 X2 X) (RULES zeros -> cons(0,n__zeros) U11(tt,L) -> U12(tt,activate(L)) U12(tt,L) -> s(length(activate(L))) U21(tt,IL,M,N) -> U22(tt,activate(IL),activate(M),activate(N)) U22(tt,IL,M,N) -> U23(tt,activate(IL),activate(M),activate(N)) U23(tt,IL,M,N) -> cons(activate(N),n__take(activate(M),activate(IL))) length(nil) -> 0 length(cons(N,L)) -> U11(tt,activate(L)) take(0,IL) -> nil take(s(M),cons(N,IL)) -> U21(tt,activate(IL),M,N) zeros -> n__zeros take(X1,X2) -> n__take(X1,X2) activate(n__zeros) -> zeros activate(n__take(X1,X2)) -> take(X1,X2) activate(X) -> X )