情報数学 I

第五回 (2013年11月 8日)

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

Martin J. Dürst

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

AGU

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

今回の内容

前回のまとめ

10月17日提出の宿題の返却

Homework: Quizes

Homework: Proof of Formula for Combinations

[本年度のために削除]

Combinations and Permutations

Let's understand nCm = n!/ (m!·(n-m)!) directly!

Permutations: Different ways of ordering n different items

Number of permutations: n!

nCm is the number of permutations of n items (n!)
divided by the number of permutations of the excluded items ((n-m)!)
divided by the number of permutations of the selected items (m!)

k-Permutation (or sequence without repetition): number of differently ordered k items taken from n different items.

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

 

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

Hint: Compare with laws for set operations; use truth tables to verify

  1. Idempotent laws: AA = A, A ∨ A = A
  2. Commutative laws: AB = BA, AB = BA
  3. Associative laws: (AB) ∧ C = A ∧ (BC), (AB) ∨ C = A ∨ (BC)
  4. Distributive laws: (AB) ∧ C = ACBC,
    ABC = (AC) ∧ (BC)
  5. Absorption laws: A ∧ (AB) = A, AAB = A
  6. Double negative: ¬¬A = A
  7. Law of excluded middle: A ∨ ¬A = T
  8. Law of (non)contradiction: A ∧ ¬A = F
  9. Properties of true and false: T ∧ A = A, T ∨ A = T, F ∧ A = F, F ∨ A = A
  10. De Morgan's laws: ¬(AB) = ¬A ∨ ¬B, ¬(AB) = ¬A ∧ ¬B

 

Rewriting Logical Formulæ (simplification)

(A ∨ ¬B) ∧ B = AB¬BB = (AB) ∨ F = 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 formula 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

宿題: 論理関数と標準形

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

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

 

Glossary

permutation
置換
k-permutation
順列
simplification
簡略化
double negative
二重否定
properties of true and false
真偽の性質
duality principle
双対原理
dual
双対