% ========================================================================== % $Id: list_intersection.pl,v 1.1 2014/01/21 04:50:36 jlang Exp $ % CSI2120 example Code for lecture 5 % ========================================================================== % (C)opyright: % % Jochen Lang % EECS, University of Ottawa % 800 King Edward Ave. % Ottawa, On., K1N 6N5 % Canada. % http://www.eecs.uottawa.ca/~jlang % % Creator: jlang (Jochen Lang) based on Clocksin & Mellish % Email: jlang@eecs.uottawa.ca % ========================================================================== % $Log: list_intersection.pl,v $ % Revision 1.1 2014/01/21 04:50:36 jlang % Added further list processing for lecture 5. % % ========================================================================== intersectList( [], _, [] ). intersectList( [ X | Xs ], Ys, Zs ) :- \+member( X, Ys), intersectList( Xs, Ys, Zs ). intersectList( [ X | Xs ], Ys, [ X | Zs ] ) :- member( X, Ys ), intersectList( Xs, Ys, Zs ).