/*
 *
 * borrar(X,L1,L2) genera una lista L2 suprimiendo todas las apariciones de X en L1
 *
 */
 
 borrar(_,[],[]).
 
 borrar(X,[X|Cola1],Cola2):- 
 					borrar(X,Cola1,Cola2).
 					
 borrar(X,[Y|Cola1],[Y|Cola2]):- 
                    not(X = Y),
 					borrar(X,Cola1,Cola2).
 					
 					

 					
/*
 *
 * borrar_bis(X,L1,L2) genera una lista L2 suprimiendo todas las apariciones de X en L1
 * Se utiliza el corte en vez de la negación
 */
 
 borrar_bis(_,[],[]):- !.
 
 borrar_bis(X,[X|Cola1],Cola2):- !,
 					borrar_bis(X,Cola1,Cola2).
 					
 borrar_bis(X,[Y|Cola1],[Y|Cola2]):- 
       			   borrar_bis(X,Cola1,Cola2).