Transcript 第5回

論理回路
第5回
http://www.fit.ac.jp/~matsuki/LCA.html
今日の内容
• 前回の復習
• ブール代数
– 公理(P1 – P5)
– 定理(T1 – T5)
– 定理(T6 – T10)
ブール代数
• 公理:
2つの定数0と1に関する論理積,論理和,
否定などの演算の基礎法則
• 定理:
公理をもとに導かれる法則(公理を
使って証明する必要がある)
ブール代数(公理P1~P5)
• P1 (a):
(b):
• P2 (a):
(b):
• P3 (a):
(b):
• P4 (a):
(b):
• P5 (a):
(b):
もしA≠0ならば,A=1
もしA≠1ならば,A=0
0・0=0
1+1=1
1・1=1
0+0=0
0・1=0・1=0
1+0=0+1=1
(a)と(b)は双対の
1=0
関係にある
0=1
ブール代数(定理T1~T5)
• T1 (a):
(b):
• T2 (a):
(b):
• T3 (a):
(b):
• T4 (a):
(b):
• T5 (a):
(b):
A・B = B・A
交換律
A+B=B+A
(AB)C = A(BC)
(A + B) + C = A + (B + C) 結合律
(A + B)(A + C) = A + BC
分配律
AB + AC = A(B + C)
A・0 = 0
A+1=1
(a)と(b)は双対の
A・1 = A
関係にある
A+0=A
ブール代数(定理T6~T10)
• T6 (a): A・A = 0
補元律
(b): A + A = 1
• T7 (a): A・A = A
べき等律
(b): A + A = A
• T8 (a): A(A + B) = A
吸収律
(b): A + AB = A
二重否定
• T9 : (A) = A
• T10 (a): (A・B) = A + B
ド・モルガンの定理
(b): (A + B) = A・B
ブール代数(定理T10’)
• T10’ (a): (A・B・C・…) = A + B + C + …
(b): (A + B + C + …) = A・B・C・…
多変数のド・モルガンの定理
練習問題【定理T3 (a)の証明】
問) 定理T3(a)が成り立つことを真理値表を用いて証
明しなさい。
解) 変数A,B,Cによる真理値すべての組み合わせで、
T3(a)の左辺と右辺が同じであることを示せば良い。
T3(a)の右辺
A+B
A+C
(A+B)(A+C)
B・C
A + BC
000
0
0
0
0
0
001
0
1
0
0
0
…
…
…
…
…
…
ABC
T3(a)の左辺
111
1
1
1
1
1
練習問題【定理T3 (a)の証明】
ABC
T3(a)の左辺
T3(a)の右辺
A+B
A+C
(A+B)(A+C)
B・C
A + BC
000
0
0
0
0
0
001
0
1
0
0
0
010
1
0
0
0
0
011
1
1
1
1
1
100
1
1
1
0
1
101
1
1
1
0
1
110
1
1
1
0
1
111
1
1
1
1
1
上記表より、すべてのA,B,Cの組み合わせにおいて、(A+B)(A+C)とA+BCが等し
いことを確認した。よって、定理T3(a)は成り立つ。
ド・モルガンの定理
(A・B)=A+B
双対性
• 練習問題:次の論理関数の否定を計算せよ
f( x, y, z ) = ( x + y )( x + z )
f( x, y, z ) = ( x + y )( x + z )
= ?
双対性
• 練習問題:次の論理関数の否定を計算せよ
f( x, y, z ) = ( x + y )( x + z )
f( x, y, z ) = ( x + y )( x + z )
=(x+y)+(x+z)
= x・y + x・z
= x・y + x・z
ド・モルガン
の定理
ド・モルガン
の定理
関数 f を否定すること = 各変数 x, y, x, z を否定し,
論理積と論理和を入れ替える
双対性
• T11 定数0,1を含む論理関数の恒等式は,
0と1,+と・を同時に入れ替えても成立する
0 ⇔
1 ⇔
+ ⇔
・ ⇔
1
0
・
+
双対性
• 練習:次の恒等式に双対な恒等式を求めよ.
(1) ( x + y ) y = x y
(2) x + y + x y = 1
標準形
以下の真理値表による論理関数 f を求める
ABC
f ( A, B, C )
000
1
001
0
010
1
011
1
100
0
101
1
110
0
111
0
f ( A, B, C ) = ??
標準形(主加法標準形)
最小項(minimal term):
すべての変数が真または偽の形で含まれて
いる論理積項(論理的な最小区分を表す)
B
③
①
⑦
⑤
A
⑧
⑥
④
②
C
① ABC
⑤ ABC
② ABC
⑥ ABC
③ ABC
⑦ ABC
④ ABC
⑧ ABC
標準形(主加法標準形)
1. fが1の行に着目
2. 入力変数が0ならば否定,1ならばそのまま
にして最小項を取る
3. すべての最小項の論理和を求める⇒fとなる
ABC
f ( A, B, C )
最小項
000
1
ABC
001
0
010
1
ABC
011
1
ABC
100
0
101
1
110
0
111
0
ABC
標準形(主加法標準形)
1. fが1の行に着目
2. 入力変数が0ならば否定,1ならばそのままにし
て最小項を取る
3. すべての最小項の論理和を求める⇒fとなる
ABC
f ( A, B, C )
最小項
000
1
ABC
001
0
010
1
ABC
011
1
ABC
100
0
101
1
110
0
111
0
ABC
A = 0, B = 1, C = 1の時
ABC = 0・1・1 = 1
標準形(主加法標準形)
ABC
f ( A, B, C )
最小項
000
1
ABC
001
0
010
1
ABC
011
1
ABC
100
0
101
1
110
0
111
0
ABC
f( A, B, C ) =
ABC + ABC + ABC + ABC
標準形(主乗法標準形)
最大項(maximal term):
すべての変数が真または偽の形で含まれて
いる論理和項(論理的な最大区分を表す)
B
A
C
① A+B+C
⑤ A+B+C
② A+B+C
⑥ A+B+C
③ A+B+C
⑦ A+B+C
④ A+B+C
⑧ A+B+C
標準形(主乗法標準形)
1. fが0の行に着目
2. 入力変数が0ならば否定,1ならばそのまま
にして最大項を取る
3. すべての最大項の論理積を求める⇒fとなる
最大項
ABC
f ( A, B, C )
000
1
001
0
010
1
011
1
100
0
101
1
110
0
A+B+C
111
0
A+B+C
A+B+C
A+B+C
標準形(主乗法標準形)
1. fが0の行に着目
2. 入力変数が0ならばそのまま,1ならば否定にし
て最小項を取る
3. すべての最大項の論理積を求める⇒fとなる
最大項
ABC
f ( A, B, C )
000
1
001
0
010
1
011
1
100
0
101
1
110
0
A+B+C
111
0
A+B+C
A+B+C
A+B+C
A=0, B=0, C=1の時
A+B+C = 0+0+1 = 0
標準形(主乗法標準形)
最大項
ABC
f ( A, B, C )
000
1
001
0
010
1
011
1
100
0
101
1
110
0
A+B+C
111
0
A+B+C
A+B+C
A+B+C
f( A, B, C ) =
( A+B+C )( A+B+C )( A+B+C )( A+B+C )
注意事項
• 講義に関する質問・課題提出など:
[email protected]
• メールについて
件名は,学籍番号+半角スペース+氏名
(例)S09F2099 松木裕二
本文にも短いカバーレター(説明)をつける
課題はWordなどで作り,添付ファイルとして送る