/* from Warren's paper in Machine Intelligence 10 */ attractive(edinburgh). attractive(paris). attractive(san_francisco). have_property([], P). have_property([X|L], P) :- P(X), have_property(L, P).