NOTE: You should do this homework on your own, not with the help of others in the class or outside the class. You may ask for clarification of questions from the TA or instructor.
PURPOSE: The purpose of this homework is to examine some of the issues and concepts in logic programming.
?- reverse([a,b,c,d],W).
where append is defined as on page 636 of your textbook, and reverse is defined by the rules:
reverse ([],[]).
reverse([A|X],Z) :- reverse(X,Y), append(Y,[A],Z).