Prolog

仕事が一段落付いたので昨日の続きでPrologを眺める。Prologの三段論法までは理解したがカットはまだ。まずカットを理解していないので昨日のTiny Prolog in Pythonが、本当にそういう実装でいいのかどうかがよくわからない。Prologを知らないPythonistaの目からすると割と変な書き方になっている気がする。
とりあえずIntroduction to Prolog (in Japanese)を読む。

        • -

Prologでmother(X, Y) :- female(X), child(Y, X).とfather(X, Y) :- male(X), child(Y, X).の二つのルールがある場合、一つ目のルールのXと二つ目のルールのXは別物でなければいけないと思うんだがTiny Prolog in Pythonの実装だといちいち人間が判断して別のVarインスタンスを作らなければいけない気がする。