Problem: app(nil(),YS) -> YS app(cons(X,XS),YS) -> cons(X,app(XS,YS)) from(X) -> cons(X,from(s(X))) zWadr(nil(),YS) -> nil() zWadr(XS,nil()) -> nil() zWadr(cons(X,XS),cons(Y,YS)) -> cons(app(Y,cons(X,nil())),zWadr(XS,YS)) prefix(L) -> cons(nil(),zWadr(L,prefix(L))) Proof: Containment Processor: loop length: 1 terms: from(X) context: cons(X,[]) substitution: X -> s(X) Qed