So I'm a beginner at Prolog and I wanted to solve the riddle from this website https://www.ahapuzzles.com/logic/logic-puzzles/cats-in-spring/ in prolog.
So I tried to write this and queried findcat(F,M,A,K) but it returned false. What have I done wrong?
malecat(batman).
malecat(jake).
malecat(dibii).
femalecat(spot).
femalecat(ruby).
femalecat(starbuck).
activity(sleep).
activity(ball).
activity(laser).
kitten(1).
kitten(2).
kitten(3).
findcat(Female,Male,Activity,Kittens) :-
length(Cats, 3),
member((A,batman,ball,_), Cats), A \= starbuck,
member((_,dibii,laser,_), Cats),
member((ruby,_,sleep,_), Cats),
member((starbuck,_,_,3), Cats),
member((_,batman,_,1), Cats),
member((W,_,_,_), cats),
member((_,X,_,_), cats),
member((_,_,Y,_), cats),
member((_,_,_,Z), cats),
femalecat(W),
malecat(X),
activity(Y),
kitten(Z),
member((Female,Male,Activity,Kittens), Cats).