%% eo(a,[[a,1],[a,2],[b,1]],O). eo(E,EAO,O) :- eo1(E,EAO,[],O). eo1(_,[],O,O). eo1(E,[[E,O]|EAOS],O1,O2) :- append(O1,[O],O3), eo1(E,EAOS,O3,O2). eo1(E,[[E1,_]|EAOS],O1,O2) :- not(E=E1), eo1(E,EAOS,O1,O2).