ネットで以下の問題を見つけたのでSWI-PrologのCLPFDライブラリで解いてみた 問題:水泳大会 水泳大会で、この4人が1位から4位を獲得しました(同順位はありません)。 スタート前の予想は下のとおりで、3人が当たり、1人が外れました。 誰が何位だったのでしょう? ことり「私は1位」 なる 「私はすずより上位」 すず 「私は1位か2位」 あゆ 「私は1位か2位」 プログラム: :-use_module(library(clpfd)). solve_girl_order:- GirlOrderLst = [KotoriOrder,NaruOrder,SuzuOrder,AyuOrder], GirlOrderLst ins 1..4, all_different(GirlOrderLst), HatugenFlgLst = [KotoriHatugenFlg,NaruHatugenFl