ここで行き詰まった? AI で解決しよう
Electrical · real student question

ブール式 S = A.B.C + A.B.C を簡単にせよ。ここでドットは AND、プラスは OR を表す。

Question

次のブール式を簡単にせよ。

S=A⋅B⋅C+A⋅B⋅CS=A\cdot B\cdot C+A\cdot B\cdot C

ここで ⋅\cdot は AND、++ は OR を表す。

Step-by-step solution

  1. 演算子を算術ではなく論理として読む。 ブール代数では ⋅\cdot が AND、++ が OR である。ここではどの変数にも否定が付いていない(どの文字にも上線がない)ので、2 つの積項は同一であり、どちらも同じ最小項 A⋅B⋅CA\cdot B\cdot C である。

  2. 当てはまる法則を見きわめる。 OR についてべき等則は

    X+X=XX+X=X

    と述べる。OR は「少なくとも 1 つが真か」を問うものなので、同じ問いを 2 回しても何も加わらないからである。取りうる 2 つの値でも確かめられる。0+0=00+0=0、1+1=11+1=1 である。

  3. X = A.B.C として適用する。

    S=A⋅B⋅C+A⋅B⋅C=A⋅B⋅CS=A\cdot B\cdot C+A\cdot B\cdot C=A\cdot B\cdot C

  4. 答えが変わってしまう通常の代数と対比する。 算術では x+x=2xx+x=2x である。ブール代数に 22 は存在しない——値は 00 と 11 だけであり、1+1=11+1=1 であって 22 ではない。ここで 2ABC2ABC と書くのは意味をなさない。

  5. 真理値表で検証する。 (A,B,C)(A,B,C) の 8 通りをすべて数え上げると、式 A ⁣⋅ ⁣B ⁣⋅ ⁣C+A ⁣⋅ ⁣B ⁣⋅ ⁣CA\!\cdot\!B\!\cdot\!C+A\!\cdot\!B\!\cdot\!C はどの行でも A ⁣⋅ ⁣B ⁣⋅ ⁣CA\!\cdot\!B\!\cdot\!C に等しい ✓——出力が 11 になるのは A=B=C=1A=B=C=1 のときだけで、残りの 7 行では 00 である。

  6. 実務上の意味を押さえる。 回路にすると、簡単化しない形では 3 入力の AND ゲートを 2 つ用意して OR ゲートに入れることになるが、簡単化した形では AND ゲートが 1 つで済み、OR ゲートは不要である。重複した最小項を見つけることはゲート数削減の最初の一手であり、同時に、その重複はもとの式の書き写しの誤りを隠していることも多いので、作る前に確認する価値がある。

Answer

S=A⋅B⋅CS=A\cdot B\cdot C

Need to solve a different problem like this? Open the solver →