
%%% tack an element at the end

tackend_dl(X-[A|Y], A, X-Y).
rev1_dl(L1-L1, L2-L2).
rev1_dl([A|X]-Y, K-L) :- rev_dl(X-Y, P-Q), tackend_dl(P-Q, A, K-L).

eq_dl(X-X, Y-Y).
eq_dl([A|X]-Y, [A|P]-Q) :- eq_dl(X-Y, P-Q).

samelen_dl(X-X,Y-Y).
samelen_dl([_|X]-Y, [_|P]-Q) :- samelen_dl(X-Y, P-Q).
