私は関数f(a,b,c,d) = b*(a+~c) + d*(a+~b)
を持っています。ここでは*(AND)
,+(OR)
,~(NOT)
です。分配法則を使ってブール式の簡略化
、私が取得:、ba + b~c + da + d~b
を
が、答えはab + b~c + d~b
です。
da
を取り除く方法はわかりません。
私は取得するためにaを分解しようとしました:a(b+d) + b~c + d~b
、しかしそれは私をどこにもつかまえません。
私は関数f(a,b,c,d) = b*(a+~c) + d*(a+~b)
を持っています。ここでは*(AND)
,+(OR)
,~(NOT)
です。分配法則を使ってブール式の簡略化
、私が取得:、ba + b~c + da + d~b
を
が、答えはab + b~c + d~b
です。
da
を取り除く方法はわかりません。
私は取得するためにaを分解しようとしました:a(b+d) + b~c + d~b
、しかしそれは私をどこにもつかまえません。
なぜba + b~c + da + d~b = ab + b~c + d~b
そこで質問です。
理由は簡単です。da
は、左側に何も追加しません。。
それが希望した場合、da = true
とab + b~c + d~b = false
場合があるだろう。しかし、その後、da = true
、d = true
とa = true
場合。 b
も、その後true
、ab = true
であり、我々は右側に何も添加していないしている場合。 b = false
の場合は、d~b = true
のいずれかです。
ディストリビューションなどのテーブルや変換ルールを使用するのは問題ありません。しかし、なぜ2つの式が等しいのかを常に理解することをお勧めします。
プログラミングに関する質問ではないので、この質問をトピックとしてクローズすることにしました。代わりに[math.se]のような別の[se]サイトに適しています。 –
私はプログラミングやコーディングではなくブール論理に関する話題なので、この質問を議論の対象外としています。 – Pang
私はプログラミングに関してではなく、ブール論理に関する話題なので、この質問を議論の対象外とすることに投票しました。 –