問題4.64 – SICP(計算機プログラムの構造と解釈)その237
2009年08月06日
問題4.64
;; 元の outranked-by 規則 (assert! (rule (outranked-by ?staff-person ?boss) (or (supervisor ?staff-person ?boss) (and (supervisor ?staff-person ?middle-maneger) (outranked-by ?middle-maneger ?boss))))) ;; Louis Reasoner の再入力した outranked-by 規則 (assert! (rule (outranked-by ?staff-person ?boss) (or (supervisor ?staff-person ?boss) (and (outranked-by ?middle-maneger ?boss) (supervisor ?staff-person ?middle-maneger)))))
and
による2つの質問の組み合わせの順序が入れ替わっている。
Louis Reasoner の版では質問 (outranked-by (Bitdiddle Ben) ?who)
によって、?staff-person
が (Bitdiddle Ben)
に束縛され ?who
は ?boss
に束縛しなければならないと規定するフレームが出来上がる。
このフレームに対して (outranked-by ?middle-maneger ?boss)
は ?middle-maneger
?boss
とも未束縛のまま再帰的に呼び出され続けるために無限ループに陥る。
計算機プログラムの構造と解釈
posted with amazlet at 08.11.07
ジェラルド・ジェイ サスマン ジュリー サスマン ハロルド エイブルソン
ピアソンエデュケーション
売り上げランキング: 6542
ピアソンエデュケーション
売り上げランキング: 6542