トップページに戻る
次のブール代数パズルへ
前のブール代数パズルへ
3-2 OverLaps述語
ブール代数パズル
到着時間 <= 出発時間
と
公演開始 <= 公演終了
が成立しているとして、
以下の条件式を、同値変形によって、簡略化させる
公演開始 >= 到着時間
AND 公演開始 <= 出発時間
OR 公演終了 >= 到着時間
AND 公演終了 <= 出発時間
OR 公演開始 <= 到着時間
AND 公演終了 >= 出発時間
解答
公演開始 >= 到着時間 をA
公演開始 <= 出発時間 をB
公演終了 >= 到着時間 をC
公演終了 <= 出発時間 をD
公演開始 <= 到着時間 をE
公演終了 >= 出発時間 をF
とおくと
公演開始 >= 到着時間
AND 公演開始 <= 出発時間
OR 公演終了 >= 到着時間
AND 公演終了 <= 出発時間
OR 公演開始 <= 到着時間
AND 公演終了 >= 出発時間
はこう置けます。
A*B + C*D + E*F
到着時間 <= 出発時間 と
公演開始 <= 公演終了 より
以下の命題が成立
A⇒C ... 1
D⇒B ... 2
E⇒B ... 3
F⇒C ... 4
Aが偽⇒E ... 5
Bが偽⇒F ... 6
Cが偽⇒D ... 7
Dが偽⇒F ... 8
Eが偽⇒A ... 9
Fが偽⇒D ...10
A*B + C*D + E*F
= A*C*B + C*D*B + E*B*F*C
= B*C*(A + D + E*F)
E*Fが偽ならば、命題9と命題10より
AとDの、少なくとも1つが真
よって
A + D + E*F=1
よって
B*C*(A + D + E*F) = B*C
すなわち
公演開始 >= 到着時間
AND 公演開始 <= 出発時間
OR 公演終了 >= 到着時間
AND 公演終了 <= 出発時間
OR 公演開始 <= 到着時間
AND 公演終了 >= 出発時間
と
公演開始 <= 出発時間
AND 公演終了 >= 到着時間
は同値である
■■■■■■■■■■■■■■■■■■■■■■■■■■■■
A⇒C ... 1
D⇒B ... 2
E⇒B ... 3
F⇒C ... 4
A*B + C*D + E*F
= A*C*B + C*D*B + E*B*F*C
この変形は、
2-2 命題が成立した状態での、論理積
を使ってます