opera(D) :- not home(D).
home(D) :- not opera(D).
home(monday).

?- opera(D).

#pred opera(D) :: 'Bob goes to the opera on @(D:day)'.
#pred not home(D) :: 'Bob does not stay at home on @(D)'.

#show opera/1, not home/1.