/* file: /230/pl/appendl.pl */ /* append with difference lists */ adl(d(X,Y), d(Y,Z), d(X,Z)). q1(Z) :- adl(d([1, 2, 3| X], X), d([4, 5 |Y], Y), Z). q2(X) :- adl(d([1, 2, 3| X], X), d([4, 5 |Y], Y), Z). q3(Y) :- adl(d([1, 2, 3| X], X), d([4, 5 |Y], Y), Z).