Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Kengo KinoshitaTohoku University
論理関数表現のトリニティ(三位一体)
38
論理回路 真理値表
論理式
先週やった
既にやった
今週やること○真理値表から論理式 - シャノンの展開定理 - 積和標準形 - 和積標準形
Kengo KinoshitaTohoku University
準備編シャノンの展開定理
39
[証明]
右辺
左辺
の時
1 の時も同様
意味n変数論理関数がn-1変数論理関数と論理変数の論理演算で書ける
繰り返し適用するとどうなるだろうか?
Kengo KinoshitaTohoku University
リテラル表記と積和標準形リテラル
40
肯定リテラル
否定リテラル
リテラルの積を積項あるいは単に項と呼ぶ
リテラルの表記を用いると
を繰り返し適用して
と書ける!(証明は数学的帰納法による(省略))
Kengo KinoshitaTohoku University
困ったときの具体例
n = 2 の時
41
どこかで見たこと無いですか?x1 x2 f
0 0 0
0 1 1
1 0 1
1 1 0
とすると
なる
XORですね
Kengo KinoshitaTohoku University
やってみよう具体例
42
x1 x2 x3 f
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 1
1 1 1 1
n = 3 の時
結局、真理値表で1の所に対応する最小項を+でつなぐだけ形式的に書くと
を最小項と呼ぶ
Kengo KinoshitaTohoku University
積和標準形の例2
n = 2 でORの場合
43
x1 x2 f
0 0 0
0 1 1
1 0 1
1 1 1
となので
OR?
積和標準形 ≠ 最簡形
Kengo KinoshitaTohoku University
和積標準形Shannonの展開定理の和のバージョン
44
(繰り返し適用して)
x1 x2 f
0 0 0
0 1 1
1 0 1
1 1 1
例)
f = x1+ x2
[参考] 積和標準形を二重否定して、ド・モルガン則を使って変形すると和積標準形が得られる
注)0 + x = x, 1 + x = 1
Kengo KinoshitaTohoku University
やってみよう具体例
45
x1 x2 x3 f
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 1
1 1 1 1
n = 3 の時
結局、真理値表で0の所に対応する最大項をANDでつなぐ積和とは肯定・否定リテラルの選択が逆な点に注意積和:1 → 肯定(1・x = x)和積:0 → 肯定(0 + x = x)
Kengo KinoshitaTohoku University
練習問題3変数多数決関数M(x,y,z)の積和標準形と和積標準形を書きなさい
3変数パリティ関数の積和標準形と和積標準形を書きなさい
46
x y z M
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
x y z P
0 0 0 0
0 0 1 1
0 1 0 1
0 1 1 0
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 1
Kengo KinoshitaTohoku University
論理式の簡単化の準備1:論理式の大小関係お約束: 0 < 1
定義:
48
と言う
補題1x y x+y
0 0 0
0 1 1
1 0 1
1 1 1
(3)の証明x y xy
0 0 0
0 1 0
1 0 0
1 1 1
(4)の証明
≦
≦
≦
≦
≧
≧
≧
≧
Kengo KinoshitaTohoku University
論理関数の大小関係論理式の大小関係と同様に、以下のように定義する
49
x y z M x+y
0 0 0 0 0
0 0 1 0 0
0 1 0 0 1
0 1 1 1 1
1 0 0 0 1
1 0 1 1 1
1 1 0 1 1
1 1 1 1 1
例:
≦≦≦≦≦≦≦≦
Kengo KinoshitaTohoku University
関数の大小関係の調べ方
50
x y z g f
0 0 0 0 0
0 0 1 0 0
0 1 0 0 1
0 1 1 1 1
1 0 0 0 1
1 0 1 1 1
1 1 0 1 1
1 1 1 1 1
真理値表を書けば良い
順に黒板で説明1, 3, 4は自明ですよね?
5は2を使って証明
そこで命題3.4(1)
(2)
(3)
(4)(5)
2の証明:でも面倒....抽象的式だと無理
一応5も証明:
重要!
大小関係は3.4(2)で調べる!!直感的には(1).bが分かりやすい
a-fは同値