/* puzzle program */ alpinist(tony). alpinist(mike). alpinist(john). climber(X) :- alpinist(X),~skier(X). ~likes(X,rain) :- climber(X). ~likes(mike,X) :- likes(tony,X). likes(mike,X) :- ~likes(tony,X). likes(tony,rain). likes(tony,snow). ~skier(X) :- ~likes(X,snow). wanted(X) :-alpinist(X),climber(X),~skier(X). /* goal: wanted(X) */