Propositional Logic, Normal Forms

(命題論理、標準形)

Discrete Mathematics I

4th lecture, October 14, 2021

https://www.sw.it.aoyama.ac.jp/2022/Math1/lecture4.html

Martin J. Dürst

AGU

© 2005-22 Martin J. Dürst Aoyama Gakuin University

 

Today's Schedule

 

Seating

Summary of Last Lecture

 

Overview of Logical Operations

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

 

Last Week's Homework

  1. Solve the quiz Homework: Propositions: True or False
  2. Solve the quiz Homework: Truth Table 1
  3. Solve the quiz Homework: Truth Table 2
  4. Use highschool texts or the Web to research about other laws for logical operations.

 

List of Laws for Logical Operations

  1. Idempotent laws: A∧A = A,   A∨A = A
  2. Commutative laws: A∧B = B∧ A,   A∨B = B∨A
  3. Associative laws: (A∧B) ∧ C = A ∧ (B∧C),   (A∨B) ∨ C = A ∨  (B∨C)
  4. Distributive laws: A ∧ (B∨C) =  A∧B ∨ A∧C,
    A ∨ B∧C =  (A∨B) ∧ (A∨C)
  5. Absorption laws: A ∧ (A∨B) = A,   A ∨ A∧B = 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: ¬(A∧B) = ¬A∨¬B,
    ¬(A∨B) = ¬A∧¬B

 

Questions about the Laws

Rewriting Logical Formulæ (Simplification)

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

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

Application: Proof of absorption law from other laws

A ∧ (A ∨ B) = (A∨F) ∧ (A∨B)   = 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.
(We may have to adjust parentheses.)

This is true in general. If an equation is true, its dual is also true. This 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.

Examples:
The dual of T ∧ A = A is: F ∨ A = A  
The dual of (¬A∨B) ∧ C = C∧¬A ∨ B∧C is: ¬A∧B ∨ C = (C∨¬A) ∧ (B∨C)  

 

From a Truth Table to a Logical Formula

Assume we are given a Boolean function as a truth table, for example:

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 for this truth table?

Is there a way to find a logical formula for every Boolean function (truth table)?

 

Two Normal Forms

The easiest way to create a logical formula for a Boolean function is to use a normal form.

There are two normal forms:

Disjunctive normal form (DNF):
Disjunction of conjunctions (of negations) of variables
Example: A∧¬B ∨ ¬A∧B
Conjunctive normal form (CNF):
Conjunction of disjunctions (of negations) of variables
Example: (A∨B) ∧ (¬A∨¬B)

 

Construction of Normal Forms

For disjunctive normal form [conjunctive normal form is given in [], based on the duality principle]

  1. Look only at the rows in the truth table where the result is T [F]
  2. For each of these rows, construct the conjunction [disjunction] of all the variables (A, B, C,...)
  3. If the variable's value in a row is F [T], then add a negation to this variable in this row
  4. Construct the disjunction [conjunction] of all the formulæ created

Example of Normal Forms

A B C ? Disjunctive Normal Form Conjunctive Normal Form
F F F T ¬A ∧ ¬B ∧ ¬C  
F F T T ¬A ∧ ¬B ∧ C  
F T F F - A ∨ ¬B ∨ C  
F T T F - A ∨ ¬B ∨ ¬C  
T F F F - ¬A ∨ B ∨ C  
T F T T A ∧ ¬B ∧ C  
T T F F - ¬A ∨ ¬B ∨ C  
T T T T A ∧ B ∧ C  

DNF: ¬A∧¬B∧¬C ∨ ¬A∧¬B∧C ∨ A∧¬B∧C ∨ A∧B∧C  

CNF: (A∨¬B∨C) ∧ (A∨¬B∨¬C) ∧ (¬A∨B∨C) ∧ (¬A∨¬B∨C)  

 

Example of Normal Forms

A B C ? Disjunctive Normal Form Conjunctive Normal Form
F F F T ¬A ∧ ¬B ∧ ¬C  
F F T T ¬A ∧ ¬B ∧ C  
F T F F - A ∨ ¬B ∨ C  
F T T F - A ∨ ¬B ∨ ¬C  
T F F F - ¬A ∨ B ∨ C  
T F T T A ∧ ¬B ∧ C  
T T F F - ¬A ∨ ¬B ∨ C  
T T T T A ∧ B ∧ C  

DNF: ¬A∧¬B∧¬C ∨ ¬A∧¬B∧C ∨ A∧¬B∧C ∨ A∧B∧C

CNF: (A∨¬B∨C) ∧ (A∨¬B∨¬C) ∧ (¬A∨B∨C) ∧ (¬A∨¬B∨C)

 

Reason for Correctness

The constructed normal form is correct because:

 

Properties of Normal Forms

 

Simplification of Normal Forms

Normal forms can be very long. It helps to simplify them. There are two methods:

Both methods do the same, but with different tools (formulæ vs. a diagram).

The Karnaugh map keeps the structure of the normal form
(for disjunctive normal form: disjunction of conjunctions (of negations)).

Using a different structure may allow a shorter formula.

 

Simplification by Rewriting

Example for three-variable normal form: A∧B∧C ∨ A∧¬B∧C ∨ ¬A∧¬B∧C ∨ ¬A∧¬B∧¬C ⇒ A∧C ∨ ¬A∧¬B  

Attention: There may be more than one solution to simplification. Different simplification paths with different steps may lead to different (but equivalent) results.

 

Karnaugh Map Example

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

Final result: ¬B∧¬C∧¬D ∨ A∧C ∨ ¬A∧B∧¬C  

 

Karnaugh Map Construction

Creating a simplification of a disjunctive normal form [conjunctive normal form]:

  1. Create a two-dimensional truth table. Each dimension uses (roughly) half of the variables.
    (3 variables: 4×2; 4 variables: 4×4; 5 variables: 8×4;...)
  2. Think about this table as a torus:
  3. Arrange the truth values in each direction so that only one variable's value differs from row to row and from column to column.
  4. Concentrate on the fields with a T [F] (fields with F [T] can be left blank)
  5. Surround any two neighboring (according to step 2) fields with a line.
  6. Combine any neighboring groups of two fields from step 5 by surrounding them with a differently colored line. Extend this to groups of eight fields, and so on.
  7. Select a minimal number of groups so that all Ts [Fs] are included. The groups can overlap. There may be several equally minimal solutions.
  8. Each surrounded group corresponds to a term of a simplified formula. Construct this formula as follows: Eliminating variables that are both T and F for fields in the group. Keep the variables that have an uniform value, adding a negation if that value is F [T].

 

This Week's Homework

Submit the solutions to the following two problems to Moodle as assignment Boolean Formulæ and Normal Forms.

Deadline: Thursday October 20, 2022, 22:00.

Format: Start with template, use plain text only; use a plain text editor (such as Microsoft Notepad)

Keep all text, formatting, and character encoding (UTF-8)

Replace all the question marks; do not replace/translate anything else, do not remove spaces

For operators,... use the symbols already used in the template

Caution: NO Microsoft Word, Microsoft Excel,...

File name: solution4.txt

 

Homework Problem One: All Boolean Functions of Two Variables

 

Homework Problem Two: Normal Forms

 

宿題: 論理関数と標準形

提出: 10月20日 (木)、22:00 (厳守)、Moodle にて。形式は雛形に厳守 (プレーンテキスト, ? のところだけ埋める)。ファイル名は solution4.txt。

Glossary

idempotent law
べき等律 (冪等律)
commutative law
交換律
absorption law
吸収律
double negative
二重否定
simplification
簡略化
law of excluded middle
排中律
law of (non)contradiction
矛盾律
properties of true and false
真偽の性質
De Morgan's law
ド・モルガンの法則
simplification
単純化
duality principle
双対原理
dual
双対
normal form
標準形
disjunctive normal form
加法標準形 (選言標準形、変数の (否定の) 積の和)
conjunctive normal form
乗法標準形 (連言標準形、変数の (否定の) 和の積)
property
性質
low depth
深さが浅い
(logical, electronic) circuit
回路
term
項
manipulate
操作する
transform
変換
Karnaugh map
カルノー図表
torus
トーラス (ドーナツ型)
format
形式
template
雛形
plain text
プレーンテキスト
notepad (Windows application)
メモ帳
deduction
減点