Operaciones sobre listas en Prolog
pertenece(X,[X|_]).
pertenece(X,[_|Cola]) :- pertenece(X,Cola).conc([],L,L).
conc([X|L1],L2,[X|L3]) :- conc(L1,L2,L3).anadir(X,L,[X|L]).
quitar(X,[X|Cola],Cola).
quitar(X,[_|Cola],[X|L]) :- quitar(X,Cola,L).insertar(X,L,[X|L]).
insertar(X,[Y|L1],[Y|L2]) :- insertar(X,L1,L2).sublist(S,L) :- conc(L1,L2,L),
conc(S,L3,L2).permutacion([],[]).
permutacion([X|L],P) :- permutacion(L,P1),
insertar(X,P1,P).
<< Home