home *** CD-ROM | disk | FTP | other *** search
/ Programmer Plus 2007 / Programmer-Plus-2007.iso / Programming / Borland Plateform / Turbo Prolog 2 / EXAMPL16.PRO < prev    next >
Encoding:
Prolog Source  |  1986-04-01  |  790 b   |  28 lines

  1.                /* Program 16 */
  2. domains
  3.     name,sex,interest = symbol
  4.     interests = interest*
  5.  
  6. predicates
  7.     findpairs
  8.     person(name,sex,interests)
  9.     member(interest,interests)
  10.     common_interest(interests,interests,interest)
  11. clauses
  12.     findpairs if person(Man, m, ILIST1 ) and
  13.           person( Woman, f, ILIST2 ) and
  14.           common_interest( ILIST1, ILIST2, _ ) and
  15.  
  16.           write( Man, " might like  ",Woman ) and nl and
  17.           fail.
  18.      findpairs:- write ("-----------end of the 1ist---").
  19.  
  20.      common_interest( IL1, IL2, X ) if
  21.            member(X, IL1 ) and member(X, IL2) and !.
  22.  
  23.      person(tom,m,[travel,books,baseball]).
  24.      person(mary,f,[wine,books,swimming]).
  25.  
  26.      member( X, [X|_] ).
  27.      member( X, [_|L] ) if member( X, L ).
  28.