fork download
  1. prune(A, B) :-
  2. union(A, B, B).
  3.  
  4. union([X|Y],Z,W) :-
  5. member(X,Z),
  6. !, /* do not use next clauses */
  7. union(Y,Z,W).
  8. union([X|Y],Z,[X|W]) :- union(Y,Z,W).
  9. union([],Z,Z).
  10.  
  11.  
  12. prune([1,1,1,2],R).
  13.  
  14.  
Success #stdin #stdout 0.02s 68352KB
stdin
Standard input is empty
stdout
GNU Prolog 1.3.1
By Daniel Diaz
Copyright (C) 1999-2009 Daniel Diaz