このディレクトリの索引
#  
#  有名な先祖の定義です。(親,子)は位置をひっくり返して定義されることもあります。
#  
#  さて問題です。
#  
#  ここであなたがこの定義に対して気に入らなかったとします。すなわち、
#  「親が先祖であるなんておかしい!」
#  それでは、あなたは次の定義をどのように書き換えたらよいでしょうか。
#  

親子(波平,サザエ).
親子(波平,かつお).
親子(サザエ,たら).

先祖(X,Y) :-         % XがYの親ならば、XはYの先祖である。
        親子(X,Y).
先祖(X,Y) :-         % XがZの親であり、ZがYの先祖であるなら、XはYの先祖である。
        親子(X,Z),
        先祖(Z,Y).




%  %から後は所謂コメント。プログラムの実行には影響を与えません。