Я думаю, что проблема в том, что пункты предиката listensToMusic / 1 разделены.
следующий код возвращает для меня yes:
listensToMusic(mia).
listensToMusic(yolanda) :- happy(yolanda).
happy(yolanda).
playsAirGuitar(mia) :- listensToMusic(mia).
playsAirGuitar(yolanda) :- listensToMusic(yolanda).
вы должны получить предупреждение как
warning: discontiguous predicate listensToMusic/1 - clause ignored