情報数学 I

第五回 (2012年10月19日)

論理関数とその変換と単純化

Martin J. Dürst

http://www.sw.it.aoyama.ac.jp/2012/Math1/lecture5.html

AGU

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

今回の内容

宿題の採点について

5. Explain the reason behind the formula in problem 4.

「問 3 により」とか、問 3のデータと式だけを繰り返したものだけでは答えになってない。

前回のまとめ

前回の宿題

削除

 

追加: 組合わせの式の理由と順列

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)!)

Quizes: Truth Table 1/2

Overview of Logical Operations

disjunction conjunction negation
or and not
precedence low middle high
A B AB AB ¬B
F F F F T
F T T F F
T F T F
T T T T

Homework: Laws for Logical Operations

 [no longer available]

Rewriting Logical Formulæ (simplification)

(A ∨ ¬B) ∧ B = (AB) ∧ (¬BB) = (AB) ∧ T = AB

¬(A ∨ ¬B) = ¬A ∧ ¬¬B = ¬AB

Application: Proof of absorption law from other laws

A ∧ (AB) = (AF) ∧ (AB) = A ∨ F∧B = A ∨ F = A

The Duality Principle for Logical Operations

When looking at the laws of logical operations, we see the following:

If we exchange all instances of ∧ and ∨, and T and F, we get another law.

Examples:
T ∧ A = A; dual: F ∨ A = A
AB) ∧ C = C∧¬ABC; dual: ¬ABC = (C∧¬A) ∧ (BC)

This is true in general. It can be proved using the truth tables for ∧ and ∨.

This is called the duality principle.

It is very useful for remembering the laws of logical operations.

 

From a Truth Table to a Logical Formula

Assume we are given a truth table (boolean function) such as the following:

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 F
T T F T
T T T F

Can you find a logical formula corresponding to this truth table?

Is there a way to find a logical formular for every truth table (boolean function)?

 

標準形

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

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

標準形の性質:

標準形の作成

加法標準形の場合 [乗法標準形の場合は [] 内 (双対原理使用)]

  1. 真理表に結果が T [F] の行だけに注目
  2. 注目の行で A, B, C,... 全ての変数の論理積 [和] を作成
  3. その行で変数が F [T] のときだけ、変数を否定
  4. 標準形が注目した行の式 (項) の論理和 [積]

式が正しい理由:

 

標準形作成の例

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

加法標準形: ¬A∧¬B∧¬C ∨ ¬A∧¬BCA∧¬BCABC

乗法標準形: (A∨¬BC) ∧ (A∨¬B∨¬C) ∧ (¬ABC) ∧ (¬A∨¬BC)

 

論理関数の単純化の方法

二つは基本的に同じが、使う「道具」(式、図) が違う。

カルノー図表は標準形の構造 ((否定) の積の和等) を保持

違う構造でもっと単純化できる例も存在

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

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

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

注意: 複数の単純化の道で、(式の構成が) 異なる結果が可能

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

カルノー図表の例

A=F
B=F
A=T
B=F
A=T
B=T
A=F
B=T
C=F
D=F
T T F T
C=T
D=F
F T T F
C=T
D=T
F T T F
C=F
D=T
F F F T

宿題 1: 論理関数と標準形

提出: 再来週の木曜日 (11月 1日)、22:00 (厳守)、Moodle にて。形式はプレーンテキスト。ファイル名は solution5_xxxxxxxx.txt (, メモ帳など; xxxxxxxx は八桁の学籍番号)

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

 

Homework 2: True or False

On Moodle, solve the quiz Propositions: True or False

Repeat until you get all answers right!

Open from October 20 (Saturday), 08:00

Deadline: November 8 (Thursday), 20:00

注意

来週 (10月26日) は海外出張のために休講

再来週の木曜日 (11月 1日) 22:00: 宿題 1 の提出締切

再来週 (11月 2日) は青山祭のためお休み

再々来週の木曜日 (11月 8日) 20:00: 宿題 2 の締切

次の授業は 11月 9日 (金)

Glossary

simplification
簡略化
double negative
二重否定
properties of true and false
真偽の性質
duality principle
双対原理
dual
双対