白田秀彰の「インターネットの法と慣習」 第26回 法律とプログラミング
から引用して、Prolog のおもしろいそして適切とおもわれる使い方をご紹介します。

ttp://hotwired.goo.ne.jp/original/shirata/060228/
-----------------------------------------------------------
Prologを使った学生寮の規則の単純化の例がとても印象に残っている。私が覚えている限りではこうだ。

(1) 古くから続く学生寮には複雑な規則集がある。たくさんの条件分岐や例外規則が含まれていてとてもわかりにくい。

(2) そこで、その複雑な規則集をPrologのホーン節(真偽判定のみが記述された単純な文)に置き換えて表現する。

(3) 実行させれば、当然のように矛盾が存在するのでエラーが出る。

(4) Prolog化された規則集をデバッグし、さらに実行が効率的になるようにソース・コードの整理を進める。

(5) Prolog的観点からみてキレイに整理された規則集を、Prologのソース・コードから再び自然言語に翻訳しなおす。

(6) すっきりキレイにわかりやすくなった規則集のできあがり。
-----------------------------------------------------------