Remainder, Review

(残り・復習)

Discrete Mathematics I

15th lecture, January 19, 2018

http://www.sw.it.aoyama.ac.jp/2017/Math1/lecture15.html

Martin J. Dürst

AGU

© 2006-18 Martin J. Dürst Aoyama Gakuin University

Today's Schedule

 

Remaining Schedule

January 26 (Friday), 11:10~12:35: Final exam

 

Summary of Last Lecture

 

Proving Commutativity of Addition
from Peano Axioms

In lecture 2, we proved associativity of addition
(a + (b+c) = (a+b) + c) from the Peano Axioms.

This was a (very informal) proof by mathematical induction.

Here we prove commutativity of addition (a+b = b+a), also by mathematical induction.

Reminder: axioms of addition (expressed in predicate logic)

  1. a∈ℕ+: a + 1 = s(a)
  2. a, b∈ℕ+: a + s(b) = s(a + b)

Induction for Peano arithmetic (Peano axiom 5):
P
(1) ∧ (∀k∈ℕ+: P(k) → P(s(k)) ⇒ ∀n∈ℕ+: P(n)

For comparison: Inductive proof:
S(0) ∧ (∀k∈ℕ: S(k) → S(k+1)) ⇒ ∀n∈ℕ: S(n)

In other words, Peano axiom 5 states that mathematical induction works for natural numbers.

 

Lemma: Commutativity of Addition for 1

Lemma: 1+a = s(a) = a+1

(a lemma is a minor theorem, used as a stepping stone)

Proof:

  1. Base case (a=1):
    1+1 [axiom of addition 1]
    = s(1) [axiom of addition 1]
    = 1+1
  2. Inductive step: Proof of 1+s(k) = s(s(k)) = s(k)+1
    1. Inductive assumption: For any k≧1, 1+k = s(k) = k+1
    2. 1 + s(k) [axiom of addition 1]
      = 1 + (k+1) [associativity of addition]
      = (1+k) + 1 [assumption]
      = s(k) + 1 [axiom of addition 1]
      = s(s(k)) Q.E.D.

 

Proof of Main Theorem

Theorem: a+b = b+a

Method: Use induction over b.

[General remark: if there are two or more variables, try induction over one of them.]

  1. Base case (b=1):
    a+1 = 1+a from Lemma on previous slide
  2. Inductive step: Proof of a+s(k) = s(k)+a
    1. Inductive assumption: For any k≧1, a+k = k+a
    2. a + s(k) [axiom of addition 1]
      = a + (k+1) [associativity of addition]
      = (a+k) + 1 [assumption]
      = (k+a) + 1 [associativity of addition]
      = k + (a+1) [lemma on previous slide]
      = k + (1+a) [associativity of addition]
      = (k+1) + a [axiom of addition 1]
      = s(k) + a Q.E.D.

Comment: The commutative law is simpler than the associative law. However, proving the commutative law was more difficult. We used the associative law (four times) to prove the commutative law.

 

Fibonacci Numbers

Number sequence: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89,...

Definition of Fibonacci function fib(n):

This definition directly leads to a very simple recursive implementation.

Wide range of applications:

Wide range of mathematical properties

 

Proof of a Property of Fibonacci Numbers

Property: fib(n+m) = fib(m) · fib(n+1) + fib(m-1) · fib(n) (∀n≥0, m≥1)

Proof by induction over n:

  1. Base case (n=0):
    fib(0+m) = fib(m) · fib(0+1) + fib(m-1) · fib(0)
    fib(m) = fib(m) · 1 + fib(m-1) · 0
  2. Inductive step: Proof of fib(k+1+m) = fib(m) · fib(k+2) + fib(m-1) · fib(k+1)
    1. Inductive assumption: fib(k+p) = fib(p) · fib(k+1) + fib(p-1) · fib(k) (∀p≥1)
    2. (Hint: Start with more difficult side)
      fib(m) · fib(k+2) + fib(m-1) · fib(k+1) [Definition of fib (k>0)]
      = fib(m) · (fib(k+1)+fib(k)) + fib(m-1) · fib(k+1) [arithmetic]
      = (fib(m)+ fib(m-1)) · fib(k+1) + fib(m) · fib(k) [Definition of fib (m>1)]
      = fib(m+1) · fib(k+1) + fib(m) · fib(k) [assumption, p = m+1]
      = fib(k+m+1) [arithmetic]
      = fib(k+1+m) Q.E.D.

 

Example of Structural Induction

 

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.

  1. Base case: In a tree with only the root node, n=1 and l=1, therefore n = 2l-1 is correct.
  2. 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.
    1. Inductive assumption: n = 2l-1
    2. 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 Q.E.D.

 

Outlook

情報数学 II: 情報理論、グラフ理論など (二年前期、大原先生)

計算機実習 I (二年前期, Dürst)

データ構造とアルゴリズム (二年後期, Dürst)

言語理論とコンパイラ (三年前期, Dürst)

卒業研究 (四年通年)

 

Repetition

Homework 4 from last lecture: Find a question regarding past examinations that you can ask in the next lecture.

 

Glossary

commutativity
可換性 (注: 交換性ではない)
associativity
結合性
(in)formal
(非)形式的
lemma
補題 (補助定理)
golden ratio
黄金比
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
内部節