Logic Circuits, Axioms for Basic Logic
(論理回路, 基本論理の公理化)
Discrete Mathematics I
5th lecture, Oct. 14, 2016
http://www.sw.it.aoyama.ac.jp/2016/Math1/lecture5.html
Martin J. Dürst
© 200516 Martin
J. Dürst Aoyama Gakuin
University
Today's Schedule
 Summary of last lecture
 Last week's homework
 XOR, NAND, NOR, and logical circuits
 Axioms for basic logic
 Equivalence and implication
 This week's homework
Summary of Last Lecture
 There are many laws for logical operations. These laws can be used to
manipulate and simplify logical formulæ, and to prove additional laws.
 Most laws come in pairs that are related by the duality
principle.
 Each logical (Boolean) function can be represented in two normal forms:
 Disjunctive normal form: Disjunction of conjunction (of
negation) of variables
 Conjunctive normal form: Conjunction of disjunction (of
negation) of variables
 Normal forms can be simplified by symbol manipulation or by using a
Karnaugh map
Last Week's Homework
If you have a problem with accessing the course's web site or submitting your homework,
please contact me immediately by
email.
110 submissions (out of 122 students)
Grading is mostly manual and will take some time.
XOR, NAND, and NOR
Boolean functions other than and, or, and
not used frequently in programs and electronic circuits:
 XOR (exclusive or)
 defined as true if either A or
B is true, but not both
 written A xor B , A ⊕
B
 widely used in encryption/cryptography
 NAND
 defined as ¬(A ∧ B)
 written as NAND(A, B) or A ⊼
B
 widely used in electronic circuits and flash memory
 NOR
 defined as ¬(A ∨ B)
 written as NOR(A, B) or A ⊽
B
 widely used in electronic circuits and flash memory
Truth Tables for XOR, NAND, and NOR


XOR 
NAND 
NOR 
A 
B 
A ⊕ B 
A ⊼ B 
A ⊽ B 
F 
F 
F 
T 
T 
F 
T 
T 
T 
F 
T 
F 
T 
T 
F 
T 
T 
F 
F 
F 
Logic Circuits
 Boolean functions can be calculated (evaluated) using logic circuits
 The relationship between logic formulæ and electric (electronic)
circuits was established by Claude Shannon in
his 1938 master thesis
 The components of a logic circuit are called gates
 Gates are connected with wires
 The output of a gate is the input of (an)other gate(s)
 For logic circuits, 1 and 0 are often used in place of true and false
Gates Used in Logic Circuits
NOT gate 
AND gate 
OR gate 



XOR gate 
NAND gate 
NOR gate 



Example of a Logic Circuit
Half adder (to add two binary numbers, two half adders and an OR gate per
binary digit (bit) are necessary)
input 
output 
A 
B 
C (carry) 
S (sum) 
0 
0 
0 
0 
0 
1 
0 
1 
1 
0 
0 
1 
1 
1 
1 
0 
How to Write Logic Circuits
 Input from the left, output to the right
 Write variable name or formula for each input/output
 Make clear where crossing lines (wires) touch and where not
 AND, NAND, OR, and NOR gates may use more than two inputs
Property of NAND and NOR
Theorem: It is possible to implement all boolean functions using only NAND
[or only NOR]
Proof:
We know that we can write any boolean function using only ∧, ∨, and ¬
(using a normal form)
If we can write these three boolean operations using only NAND [or only
NOR], our proof is complete.
¬ A = NAND(A) [NOR(A)] (alternatively: A⊼A
[A⊽A])
A ∧ B = ¬¬(A ∧
B) = NAND(¬(A ∧
B)) = NAND(NAND(A,
B))
[= ¬¬(A ∧ B) =
¬(¬A ∨ ¬B) = NOR(¬A, ¬B) =
NOR(NOR(A), NOR(B))]
A ∨ B = ¬¬(A ∨
B) = ¬(¬A ∧
¬B) = NAND(¬A,
¬B) = NAND(NAND(A),
NAND(B))
[= ¬¬(A ∨
B) = NOR(¬(A ∨ B)) = NOR(NOR(A,
B))]
Q.E.D.
Comment: This is a constructive proof. It is often used for
theorems of the form "it is possible...".
Comment: This property is important because it is easier to construct a
logical circuit where all the gates are the same (e.g. all NAND).
Axiomatization
 An axiom is a theorem that is assumed to be true, without proof.
 One goal of mathematics is to create rich, beautiful (and useful)
theories from very few axioms.
 In lecture 2, we introduced the Peano Axioms
for the arithmetic of natural numbers.
All provable properties of natural numbers can be proven from these very
few axioms.
 Can we find axioms for basic logic?
 Important properties for axioms:
 Consistent: No contradictions
 Complete: Possible to derive any true theorem
 Minimal: Impossible to remove any axiom
 Simple: Low number of axioms and operators, short
 Obvious to humans
Axiomatizations of Basic Logic
 Standard axioms:
A∨B=B∨A [+D];
A∧(B∨¬B)=A [+D];
A∨(B∧C)=(A∨B)∧(A∨C)
[+D]
 Huntington axioms (1904):
A∨F = A [+D];
A∨B=B∨A [+D];
A∨(B∧C)=(A∨B)∧(A∨C)
[+D]; A∨¬A=T [+D]
 Huntington axioms (1933):
A∨B=B∨A;
A∨(B∨C)=(A∨B)∨C;
¬(¬A∨B)∨¬(¬A∨¬B)=A
 Robbins axioms (proposed 1933, proved automatically 1996):
A∨B=B∨A;
A∨(B∨C)=(A∨B)∨C;
(¬(¬(A∨B)∨¬(A∨¬B))=A
 Sheffer axioms (1913?):
(A⊼A)⊼(A⊼A)=A;
A⊼(B⊼(B⊼B))=A⊼A;
(A⊼(B⊼C))⊼(A⊼(B⊼C))=((B⊼B)⊼A)⊼((C⊼C)⊼A)
 Wolfram axiom (found automatically 2002):
(A⊼B)⊼C)⊼(A⊼((A⊼C)⊼A))=C
(for more axiomatizations, see http://www.cs.unm.edu/~veroff/BA/)
Comment: [+D] indicates that the dual is also an axiom
Evaluation of Axiomatizations

Consistent? 
Complete? 
Minimal? 
Simple? 
Obvious? 
Axioms 
Operators 
Overall Length 
Standard 
yes 
yes 
yes 
6 
3 
very long 
yes 
Huntington 1904 
yes 
yes 
yes 
8 
3 
very long 
yes 
Huntington 1933 
yes 
yes 
yes 
3 
2 
short 
no 
Robbins 
yes 
yes 
yes 
3 
2 
short 
no 
Sheffer 
yes 
yes 
yes 
3 
1 
long 
no 
Wolfram 
yes 
yes 
yes 
1 
1 
very short 
no 
Conclusion: For natural number arithmetic (Peano axioms) and for plane
geometry (Euclid's axioms), there are axiom systems that are both simple and
obvious. However, for basic logic, there are axiom systems that are simple, and
axiom systems that are obious, but there is no axiom system that is both.
Logical Operations Important for Symbolic Logic
 Equivalence: A ↔ B (read: A is
equivalent to B)
If and only if A and B have the same value (both T or
both F), then A ↔ B is T.
 Implication: A → B (read: A implies
B)
If A is T and B is F, then A →
B is F, otherwise A → B is T.
Truth Table for Equivalence and Implication


Equivalence 
Implication 
A 
B 
A ↔ B 
A → B 
F 
F 
T 
T 
F 
T 
F 
T 
T 
F 
F 
F 
T 
T 
T 
T 
Example of Implication
A: "I will pass Discrete Mathematics I."
B: "I will travel to Okinawa next Spring."
A → B: "Me passing Discrete Mathematics I implies
that I will travel to Okinawa next Spring."
or: "If I will pass Discrete Mathematics I, I will travel to Okinawa next
Spring."
Laws of Implication and Equivalence
 Rewriting (removing) implication: A→B =
¬A∨B = ¬(A∧¬B)
 Rewriting (removing) equivalence: A↔B =
(A→B)∧(B→A) =
(A∧B)∨(¬A∧¬B)
 Transitive laws: ((A→B) ∧
(B→C)) ⇒ (A→C),
((A↔B) ∧ (B↔C)) ⇒
(A↔C)
 Reductio ad absurdum: A→¬A = ¬A
 Contraposition: A→B =
¬B→¬A
 Properties of equivalence: A↔B =
¬A↔¬B, ¬(A↔B) =
(A↔¬B)
 Properties of implication: T→A = A,
F→A = T, A→T = T, A→F =
¬A
Caution:
There is a difference between "→" and "⇒".
"→" is an operator of boolean/symbolic logic. "→" can be manipulated
like any other operator (e.g. +, , ×, ÷ in basic arithmetic).
"⇒" tells us humans that we can replace formulæ that match the form on
its left side with formulæ that match its right side.
The same difference exists between "↔" and "=".
How to Use a Truth Table for a Proof
 Goal: Prove one of the absorbtion laws for ∨ and ∧: A∨A∧B
= A.
 Method:
 Create a truth table for both sides of the law.
 Compare the columns for both sides
(light green column and
light blue column).
 If the columns are equal, the law is proved.
 Alternative:
 As above, but add a column that combines both sides
of the law with ↔.
 Check that the additional column contains all Ts (i.e. the formula is
a tautology)
A 
B 
A ∧ B 
A ∨
A∧B 
A∨A∧B
↔ A 
F 
F 
F 
F 
T 
F 
T 
F 
F 
T 
T 
F 
F 
T 
T 
T 
T 
T 
T 
T 
This Week's Homework
Deadline: October 20, 2016 (Thursday), 19:00.
Format: A4 single page (using both sides is okay; NO cover
page), easily readable handwriting (NO printouts), name (kanji
and kana) and student number at the top right
Where to submit: Box in front of room O529 (building O, 5th floor)
Problem One
For each of the 16 Boolean functions of two Boolean variables A
and B (same as problem 1 of last week), find the shortest formula
using only NAND.
You can use NAND with any number of arguments ≧1, but you cannot use T or F.
Hint: Start with simple formulæ using NAND and find out which functions
they represent.
Problem Two
Draw logic circuits of the following three Boolean formulæ:
 A ∧ B ∨ ¬C
 NAND(G, XOR(H, K), H)
 NOR(E, ¬F) ∧ G
Problem Three
(no need to submit/提出不要)
Create examples for implication and think about why the truth table for
implication is the way it is.
(含意の例を作って、含意の真理表と実例を比較して含意を身に着ける。)
Glossary
 grading
 採点 (作業)
 exclusive or
 排他的論理和
 encryption
 暗号化
 cryptography
 暗号学
 (electronic) circuit
 (電子) 回路
 logic circuit
 論理回路
 master thesis
 修士論文
 gate
 ゲート
 half adder
 半加算器
 bit (binary digit)
 ビット
 variable name
 変数名
 implement
 実装する
 theorem
 定理
 constructive proof
 構成的証明
 axiomatization
 公理化
 complete(ness)
 完全 (性)
 consisten(t/cy)
 一貫 (した・性)
 contradiction
 矛盾
 obvious(ness)
 明白な・自明性
 symbolic logic
 記号論理
 equivalence
 同値
 x is equivalent to y
 x と y が同値である
 implication
 含意
 x implies y
 x ならば y
 pass (some course)
 (ある科目を) 合格する
 rewriting (removing) implication
 含意の除去
 rewriting (removing) equivalence
 同値の除去
 transitive laws
 推移律
 reductio ad absurdum
 背理法
 contraposition
 対偶
 properties of equivalence
 同値の性質
 properties of implication
 含意の性質
 tautology
 恒真式
