Problem: from(X) -> cons(X,n__from(s(X))) length(n__nil()) -> 0() length(n__cons(X,Y)) -> s(length1(activate(Y))) length1(X) -> length(activate(X)) from(X) -> n__from(X) nil() -> n__nil() cons(X1,X2) -> n__cons(X1,X2) activate(n__from(X)) -> from(X) activate(n__nil()) -> nil() activate(n__cons(X1,X2)) -> cons(X1,X2) activate(X) -> X Proof: Unfolding Processor: loop length: 6 terms: length(n__cons(X,n__from(x41887))) s(length1(activate(n__from(x41887)))) s(length(activate(activate(n__from(x41887))))) s(length(activate(n__from(x41887)))) s(length(from(x41887))) s(length(cons(x41887,n__from(s(x41887))))) context: s([]) substitution: X -> x41887 x41887 -> s(x41887) Qed