plus(X,Y,Z):-Z is X + Y. first([],[]). first([A],A). first([X|_],X). last([],[]). last([A],A). last([_|T],L):-last(T,L). len([],0). len([A],1). len([_|T],L):-len(T,L1),plus(L1,1,L). member([A],A). member([A|_],A). member([_|T],A):-member(T,A). even(0). even(X):-even(Y),X is Y+2,write(Y),write(X). elen([A,B]). elen([A,B|C]):-elen(C). %elen(L):-len(L,A),even(A). ?-elen([1,2]).