情報数学 I

第四回: 論理関数とその変換と単純化

Martin J. Dürst

duerst@it.aoyama.ac.jp

O 棟 529号室

http://www.sw.it.aoyama.ac.jp/2006/Math1/lecture4.html

AGU

© 2005 Martin J. Dürst 青山学院大学

先週の宿題 (追加)

パスカルの三角形の一ヶ所の直接の計算の証明

[都合により削除]

組合わせの式の理由と順列

nCm = n!/m!·(n-m)! を直感的に分かろう!

順列 (permutation): n の違うものから m 個を順番を配慮して選択するのはなん通り?

nPm = n·(n-1)·(n-2)·...·(n-m+2)·(n-m+1) = ∏ni=n-m+1 i = n!/(n-m)!

nCmnPm から計算ができる: 要素が同じが順番が違う数で割る

nCm = nPm / mPm = n!/(n-m)! / m!/(m-m)! = n!/m!(n-m)!

先週の宿題: 論理演算の復習

論理和 論理積 論理不定
又は かつ でない
conjunction disjunction negation
or and not
優先度
A B AB AB ¬B
F F F F T
F T T F F
T F T F
T T T T

先週の宿題

(提出不要)

論理演算の性質についてしらべる。

ヒント:

命題論理の性質

[都合により削除]

論理演算の双対原理

(duality principle)

論理演算の性質を調べてみると、ある性質で「∧」と「∨」、それに「T」と「F」を入れ代えると結果も性質として成り立つ。

これは一般に成り立つ。∧ と ∨ の真理表で確かめて証明が可能。

これを双対原理という。性質を覚えるために役に立つ。

性質を使った式の変更 (簡略化)

(A ∨ ¬B) ∧ B

真理表から論理式へ

次の真理表 (論理関数) を考える:

A B C ?
F F F F
F F T T
F T F F
F T T T
T F F T
T F T T
T T F F
T T T F

この真理表に相当する論理関数を論理式で表しなさい。

標準形

加法標準形 (選言標準形、disjunctive normal form): 変数の (否定の) 積の和

乗法標準形 (連言標準形、conjunctive normal form): 変数の (否定の) 和の積

標準形の性質:

標準形作成

(加法標準形の場合; 乗法標準形は双対原理を使って同等)

得られる式はなぜ正しいのか:

標準形作成の例

A B C ? 加法標準形の項
F F F T ¬A ∧ ¬B ∧ ¬C
F F T T ¬A ∧ ¬BC
F T F F -
F T T F -
T F F F -
T F T T A ∧ ¬BC
T T F F -
T T T T ABC

全体の結果: ABCA∧¬BC ∨ ¬A∧¬BC ∨ ¬A∧¬B∧¬C

論理関数の単純化の方法

三つは基本的に同じことをやるが、使う「道具」(式、図、表) が違う。

下の二つの方法は標準形の構造 ((否定) の積の和等) を保つ。違う構造でもっと単純にできる例もある。

論理関数の単純化: 式の操作

例: ABCA∧¬BCAC∧ (B ∨ ¬B) ⇒ AC

以前のスライドの式全体: ABCA∧¬BC ∨ ¬A∧¬BC ∨ ¬A∧¬B∧¬CAC ∨ ¬A∧¬B

注意: 複数の単純化の道で、複数の結果がありうる。複数をやってみるが、混乱しないように注意。

論理関数の単純化: カルノー図表

カルノー図表の例

 

 

 

今週の宿題

提出: 再来週の土曜日 (11月 4日)、22:00 (厳守)、Moodle にて。形式はプレーンテキスト。ファイルめーは solution4.txt (, メモ帳など)

第一問:
第二問:
四つの変数 (例: A, B, C, D) の論理関数を一つ、サイコロ等を使って作ってください。
その論理関数の二つの標準形と一つ以上の単純化を計算しなさい。