reverse([],X,X). reverse([X|Y],Z,U) :- reverse(Y,Z,[X|U]).