仕様を以下に示します。
(truth-table formula) --> truth-table
式は次のとおりです。
- 真理値、つまり、またはのいずれ
#t
か#f
- 変数すなわち
p, q, r, ...
(not formula)
(and formula1 formula2)
(or formula1 formula2)
真理値表は行のセットです。行にはバインディング(I t)
が含まれます。ここI
で、真理の代入、つまりバインディングのセットです(p t)
。I
でなければなりません:
- 一貫性のある
- 完了
t
は評価関数 によって生成されますV(formula, I)
。V
と定義されている:
V(t,I) = t
V(p,I) = t
バインディング(p t)
用I
V((not formula), I) = (not (V (formula I)))
V((and formula1 formula2), I) = (and V(formula1 I) V(formula2 I))
V(( or formula1 formula2), I) = (or V(formula1 I) V( formula2 I))
Scheme で真理値表を実装するには、どのような手順に従う必要がありますか? 数式内にサブ数式が存在する場合があることに注意してください。