Mathematical Induction and Other Proof
Methods
(数学的帰納法などの証明方法)
Discrete Mathematics I
14th lecture, January 8, 2021
https://www.sw.it.aoyama.ac.jp/2020/Math1/lecture14.html
Martin J. Dürst

© 2006-21 Martin
J. Dürst Aoyama Gakuin
University
Today's Schedule
- Remaining Schedule
- Homework and summary of last lecture
- Digit sums and digital roots
- Proof Methods
- Mathematical Induction
Remaining Schedule
- January 8: this lecture (Mathematical induction and other proof
methods)
- January 15: 15th lecture
- January 29, 11:15-12:15: Term final exam (60
minutes)
About Intermediate Tests
- Corrections done, results available
- For questions, use Q&A
Forum or email (from your official student account)
- Wide spread of points
- Open-book exam: Preparation very important
- Web search may be very misleading
- Some questions have to be answered speedily (e.g. truth table, base
conversion,...)
- Some questions require deep understanding and making connections
How to Prepare for Final Exam
- Use past exams for training and review
- All lecture videos made available for re-checking
- Use Q&A
Forum for questions about lecture content
- Submit one question about past exams or lecture content as homework
- Make sure your scan application is installed and set correctly (no screen
shots,...), and produces small files
Questions about Final Exam
Homework from Last Lecture
By using formula manipulation, show that the Wolfram axiom of Boolean logic
(((A⊼B)⊼C)⊼(A⊼((A⊼C)⊼A))=C)
is a tautology. For each simplification step, indicate which law(s) you
used.
Hints: Simplify the left side to obtain the right side. There should be
between 15 and 20 steps.
[solution removed]
Summary of Last Lecture
- Congruence (≡) is at the core of Modular
Arithmetic
- Two integers are congruent (modulo n) if they have
the same remainder when divided by n
- The Congruence Relation is an equivalence relation, with the
remainder as the class representative
- Congruence relations and modulo operations have many useful
properties
- The result of the modulo operation for negative operands depends on the
definition (programming language). In this lecture, we use the Mathematical
definition.
- Modular division is defined as multiplication by the modular
multiplicative inverse (where defined)
Digit Sum and Digital Root
Digit sum: Sum of all of the digits of a number
Digital root: Single-digit result of repeatedly calculating the digit sum
Example in base 10:
The digit sum of 1839275 is 1+8+3+9+2+7+5 = 35
The digit sum of 35 is 3+5 = 8
The digital root of 1839275 is 8
Example in base 16:
The digit sum of A8FB is A+8+F+B (10+8+15+11) = (44) 2C
The digit sum of 2C is 2+C (2+12) = (14) E
The digital root of A8FB is E
Application of Congruence: Casting out Nines
- The digital root of a number n in base b is equal
to n mod (b-1)
(dr(nb) = n mod
(b-1))
- Reason: For n =
dk...d1d0
= dk·bk+
d (k-1)·b (k-1)+...+d1·b1+d0·b0,
because bm ≡(mod
(b-1)) 1m = 1, n
≡(mod (b-1)) dk+
d(k-1)+...+d1+d0
- If b=10, then b-1=9
- Example in base 10: 1839275 mod 9 = 8
- Example in base 16: A8FB mod F = E
- This can be used for cross-checking the result of an arithmetic
operation:
x · y = z ⇒ dr(dr(x) ·
dr(y)) ≡mod (b-1) dr(z)
x · y ≠ z ⇐ dr(dr(x) ·
dr(y)) ≢mod (b-1) dr(z)
- Example (homework): Only one of the two equations below is correct. Which
one?
1346021 · 6292041 = 8469219318861
3615137 · 8749019 = 31628902349603
Minitest
- 授業中の poll/quiz、ミニテスト:
- 他人との協力、情報交換は一切禁止
- プログラムなどの使用も一切禁止
- 資料、メモ、ウェブ検索は使用可
- Wait for the minitest to be announced as available, do NOT repeatedly
click buttons,...!
It may take a few seconds to load a page.
About the Handout
- Sections 1.2-1.4 of Introduction to Automata Theory, Languages, and
Computation
by John E. Hopcroft, Rajeev Motwani, and Jeffrey D. Ullman
- Please ignore pieces about language theory and automata theory
- Language theory is part of 3rd-year course Language Theory and
Compilers
- Selected because it is general and easily readable
- Sometimes, uses a different mathematical "dialect"
- Both English
version and Japanese
version available;
read the version that is easier for you
- Contents is part of the final exam
- For this lecture only, do not distribute
Importance of Proofs
- Very important tool for Mathematics
(the goal of Mathematics is to prove as many useful and interesting
theorems and properties from very few axioms and definitions)
- For computer science and information technology:
- Proofs of properties of data structures
- Proofs of correctness or other properties of algorithms
- Proofs of correctness or other properties (e.g. speed) of a
program
- Proofs of correctness of program transformations
Ways to Express a Proof
- Mostly textual proof
- Proof using formulæ
- Automatically verified proof
- Mixtures of the above
How Detailled Should a Proof Be?
- Intuition is not a proof
- (Program) test: Individual test cases are not enough for a proof
- Rough proof: Steps are grouped, general arithmetic,... knowledge is
assumed
Example: x + y + 1 = 1 + x +
y
- Detailled proof: Every small step is documented and justified
Example: x + (y + 1) = (commutativity of
addition)
x + (1 + y) =(associativity of
addition)
(x + 1) + y = (commutativity of
addition)
(1 + x) + y
- Required details depend on topic and assumed knowledge
Proof Methods
- Deductive proof (proof by deduction)
- Inductive proof (proof by induction)
- Proof by contradiction
- Proof by counterexample
- Proof about sets
- Proof by enumeration
Proofs and Symbolic Logic
(S is the the theorem to be proven, expressed as a proposition or
predicate)
- Deductive proof: (H ∧
(H→S)) ⇒ S, etc.
- Inductive proof: see later slide
- Proof by contradiction: (¬S→S) ⇒ S
Confirmation:
S |
¬S |
¬S→S |
(¬S→S) → S |
F |
T |
F |
T |
T |
F |
T |
T |
- Proof by counterexample:
(∃x:¬S(x)) ⇒ ¬∀x:
S(x)
- Proof by enumeration (example: truth table)
Deduction and Induction
- Deduction: Conclude some
specific fact from some general law
- Induction: Infer some general law from some sample
observations
- Mathematical induction
- Goal: Proof of some property about (almost) all parts of some
structure
- The natural numbers are the most frequent "structure", but also tree
structures,...
- Mathematical induction is actually a kind of deduction, not
induction
- Applications of mathematical induction in information technology:
- Design and proof of properties of algorithms and data structures
- Proofs about programs:
Simple Example of Mathematical Induction
Look at the following equations:
0 = (adding up no numbers results in 0)
1 = 1
4 = 1 + 3
9 = 1 + 3 + 5
16 = 1 + 3 + 5 + 7
25 = 1 + 3 + 5 + 7 + 9
...
Express the general rule contained in the above additions as a
hypothesis.
Prove the hypothesis using Mathematical induction.
Hypothesis
- The left side of the equations is n2
(n≥0)
- The right side of the equations is the sum of the (consecutive)
n smallest odd numbers (n≥0)
- Hypothesis: The sum of the n smallest odd numbers is
n2 for n≥0:
∀n≥0: n2 =
∑ni=1 2i-1
Proof
1. Basis:
Prove the property for n = 0:
∑0i=1 2i-1 = 0 =
02
2. Induction:
a. Inductive assumption: Assume that the property is true for some
k≥0: k2 =
∑ki=1 2i-1
b. Show that the property is true for k + 1:
We need to prove that (k+1)2 =
∑(k+1)i=1 2i-1
[start with left side]
(k+1)2 [expansion]
= k2 + 2k + 1 [arithmetic]
= k2 + 2k + 2 - 1 [arithmetic]
= k2 + 2(k+1) - 1 [use
assumption]
= ∑ki=12i-1 +
2(k+1) - 1 [property of ∑]
= ∑k+1i=1 2i-1
Both the basis and the induction are true. This proves the hypothesis.
Q.E.D.
Important: In exam, follow this structure, including final sentence.
The Two steps of Mathematical Induction
- Base case (basis (step)): Proof of S(0)
- Inductive step (induction, inductive case): Proof of
∀k∈ℕ: S(k) →
S(k+1)
- (inductive) Assumption: clearly state S(k)
- Actual proof of inductive step
Method: Formula manipulation so that the assumption can be used
Mathematical induction in symbolic logic:
S(0) ∧ (∀k∈ℕ: S(k) →
S(k+1)) ⇒ ∀n∈ℕ:
S(n)
Variations of Mathematical Induction
- Start with S(1) or S(2),... instead of
S(0)
S(b) ∧ (∀k∈ℕ, k≥b:
S(k) → S(k+1)) ⇒
(∀n∈ℕ, n≥b:
S(n))
We can interpret this as proving T(n-b) =
S(n), so that we again start at 0
- In the proof of step 2 for S(k+1), use not only
S(k), but some or all S(j)
where 0≤ j≤k
(this is called strong induction or complete
induction)
S(0) ∧ (∀k∈ℕ: (∀i
(0≤i≤k): S(i)) →
S(k+1)) ⇒ ∀n∈ℕ:
S(n)
- Limit the proof to some subset of natural numbers (examples: even numbers
only, 2m only)
We can interpret this as proving T(n/2) or
T(m = log2 n)
- Proof not about natural numbers, but about something that can be ordered
using natural numbers
- Branching tree structure or other structure (e.g. (half) order,
lattice,...): structural induction
Example of Structural Induction
- Theorem to be proven:
In a binary tree with l leaves, the number of nodes is
n = 2l-1
- Definition of binary tree:
Directed graph with the following conditions:
- No cycles
- If there is a directed edge (arrow) from node a to node
b, then a is the parent of b,
and b is the child of a
- All nodes except the root have a parent
- There are two types of nodes:
- Leaves, which have no children
- Internal nodes, which have exactly two children
Proof of the Relation between the Number of Nodes and Leaves in a Binary
Tree
We start with a very small tree consisting only of the root, and grow it
step by step. We can create any shape of binary tree this way.
- Base case: In a tree with only the root node, n=1 and
l=1, therefore n = 2l-1 is correct.
- Inductive step: Grow the tree one step by replacing a leaf with an
internal node with two leaves.
Denote the number of nodes before growing by n, the number of
leaves before growing by l, the number of nodes after growth by
n', and the number of leaves after growth by l'. We
need to prove n' = 2l'-1.
- Inductive assumption: n = 2l-1
- In one growth step, the number of nodes increases by two:
n'=n+2 (1)
In one growth step, the number of leaves increases by two but is
reduced by one: l'=l+2-1=l+1;
l = l'-1 (2)
n' [(1)]
= n+2 [assumption]
= 2l-1+2 [(2)]
= 2(l'-1)-1+2 [arithmetic]
= 2l'-1
Both the basis and the induction are true. This proves the hypothesis.
Q.E.D.
Homework
- Read the English
version or the Japanese
version of the handout (Formal Proof)
- Find a question regarding past examinations or lecture content.
Deadline: January 13, 2021 (Wednesday),
22:00.
Where to submit: Moodle
quiz
- Answer the question on the slide "Application of Congruence: Casting out
Nines" (no need to submit)
- Find the problem in the following proof (no need to submit):
Theorem: All n lines on a plane that are not parallel to each
other will cross in a single point.
Proof:
- Base case: Obviously true for n=2
- Induction:
- Assumption: k lines cross in a single point.
- For k+1 lines, both the first k lines and
the last k lines will cross in a single point, and this
point will have to be the same because it is shared by
k-1 lines.
Glossary
- open-book exam
- 資料 (本など) が使える試験
- digit
- 数字、桁
- digit sum
- 数字和
- digital root
- 数字根
- casting out nines
- 九去法
- (formal) language theory
- 言語理論
- automata theory
- オートマトン理論
- proof
- 証明
- to prove
- 証明する
- data structure
- データ構造
- intuition
- 直感
- test case
- テスト・ケース
- deductive proof
- 演繹的証明
- inductive proof
- 帰納的証明
- proof by contradiction
- 背理法
- proof by counterexample
- 反例による証明
- proof about sets
- 集合についての証明
- proof by enumeration
- 列挙による「証明」
- mathematical induction
- 数学的帰納法
- structure
- 構造
- loop
- 繰返し
- base case
- 基底
- inductive step
- 帰納
- inductive assumption
- (帰納の) 仮定
- recursion
- 再帰
- hypothesis
- 仮説
- equation
- 方程式
- consecutive
- 連続的な
- odd (number)
- 奇数
- inductive assumption
- (帰納の) 仮定
- strong induction
- 完全帰納法 (または累積帰納法)
- structural induction
- 構造的帰納法
- binary tree
- 二分木
- node (of a tree/graph)
- 節
- leaf (of a tree)
- 葉
- directed graph
- 有効グラフ
- cycle (of a graph)
- 閉路
- parent (in a tree)
- 親
- child (in a tree)
- 子
- root (of a tree)
- 根
- internal node
- 内部節
- parallel
- 平行