(証明の方法)

http://www.sw.it.aoyama.ac.jp/2015/Math1/lecture14.html

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

- Remaining Schedule
- Proof Methods
- Mathematical Induction
- Student Survey

- January 8: 14th lecture
- January 15: 15th lecture
- (January 22: makeup classes)
- January 29, 11:10～12:35: Final exam

3^{18} mod 7 = ?

3^{18} = (3^{3})^{6} =
27^{6} ≡_{(mod 7)}
(-1)^{6} = 1

41^{10} mod 37 = ?

41^{10} ≡_{(mod 37)}
4^{10} = 2^{20} = 32^{4} ≡_{(mod
37)} (-5)^{4} = 25^{2}
≡_{(mod 37)} (-12)^{2} = (6 · 2)^{2} = 36 ·
4 ≡_{(mod 37)} (-1) · 4 = -4 ≡_{(mod 37)}
33

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

- The digital root of a number
`n`in base`b`is equal to`n`mod (`b`-1)

(dr(`n`) =`n`mod (`b`-1)) - If
`b`=10, then`b`-1=9 - Reason: For
`n`=`d`_{k}...`d`_{1}`d`_{0}=`d`_{k}×`b`^{k}+`d`_{(k-1)}×`b`^{(k-1)}+...+`d`_{1}×`b`^{1}+`d`_{0}×`b`^{0},

because`b`^{m}≡_{(mod (b-1))}1^{m}= 1,`n`≡_{(mod (b-1))}`d`_{k}+`d`_{(k-1)}+...+`d`_{1}+`d`_{0}^{ }

- 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:

`a`·`b`=`c`→ dr(dr(`a`) · dr(`b`)) = dr(`c`)

`a`·`b`≠`c`← dr(dr(`a`) · dr(`b`)) ≠ dr(`c`)

- Example: Only one of the two equations below is correct. Which one?

2485938 · 4962483 = 12336425064054

2354987 · 2498472 = 5883469079864

- From a (famous) book about (formal) language theory

Please ignore pieces about language theory and automata theory - Selected because it is general and easily readable
- Sometimes, is uses a different mathematical "dialect"
- The contents is part of the final exam

- Very important tool for Mathematics

(the goal 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

- Intuition
- (Program) test
- Level of detail of a proof:
- Rough proof

Example:`x`+ (`y`+ 1) = (`x`+ 1) +`y` - Detailled proof

Example:`x`+ (`y`+ 1) =^{(commutativity of addition)}

`x`+ (1 +`y`) =^{(associativity of addition)}(`x`+ 1) +`y`

- Rough proof
- How to express proofs:
- Mostly textual proof
- Proof using formulæ
- Automatically verified proof

- Deductive proof (proof by deduction)
- Inductive proof (proof by induction)
- Proof by contradiction
- Proof by counterexample
- Proof about sets
- Proof by enumeration

(`S` is the the theorem to be proven, expressed as a proposition or
predicate)

- Deductive proof: (
`H`∧ (`H`→`S`)) ⇒`S`, etc. - Inductive proof:
`S`(0) ∧ (∀`k`∈ℕ:`S`(`k`) →`S`(`k`+1)) ⇒ (∀`n∈ℕ`:`S`(`n`)), etc.

- Proof by contradiction: (¬
`S`→`S`) ⇒`S` - Proof by counterexample: (∃
`x`: ¬S(`x`)) ⇒ ¬∀`x`: S(`x`) - Proof by enumeration: example: truth table

- 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 integers are the most frequent "structure", but also tree structures,...
- Mathematical induction can actually be classified as some 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:
- Loops
- Recursion

`S`(0) ∧ (∀`k`∈ℕ: `S`(`k`) →
`S`(`k`+1)) ⇒ (∀`n∈ℕ`:
`S`(`n`))

- 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 cas be used

- (inductive) Assumption: clearly state

Look at the following equations:

1 = 1

1 + 3 = 4

1 + 3 + 5 = 9

1 + 3 + 5 + 7 = 16

1 + 3 + 5 + 7 + 9 = 25

Express the general rule contained in the above additions as a hypothesis.

Prove the hypothesis using Mathematical induction.

- The right side of the equations is
`m`^{2} - The left side is the equations is the sum of the
`m`smallest consecutive odd numbers - Hypothesis: ∀
`n`≥0: ∑^{n}_{i=0}2`i`+1 = (`n`+1)^{2}

Prove the property for `n` = 0:
∑^{0}_{i=0} 2`i`+1 = 1 =
1^{2}

Inductive assumption: Assume that the hypothesis is true for some
`k`≥0: ∑^{k}_{i=0}
2`i`+1 = (`k`+1)^{2}.

Show that the property is true for `k` + 1:
∑^{(k+1)}_{i=0} 2`i`+1 =
(`k`+2)^{2}:

[start with right side]

(`k`+2)^{2} [expansion]

= `k`^{2} + 4`k +` 4 [arithmetic]

= `k`^{2} +`2k +`1 +`2k +` 3 [arithmetic]

= (`k`+1)^{2} + 2(`k+`1) + 1 [use
hypothesis]

= ∑^{k}_{i=0} (2`i`+1) +
2(`k+`1) + 1 [property of ∑]

= ∑^{(k+1)}_{i=0} 2`i`+1
Q.E.D.

- Choice of
`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 also some or all`S`(`j`) where`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 integers (examples: even numbers only,
2
^{m}only) - Proof not about integers, but about something that can be ordered using integers
- Branching tree structure or some other structure (e.g. (half) order)

(no need to submit)

- Find out the problem in the following proof:
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.

- Assumption:

- Base case: Obviously true for
- Read the handout
- Find a question regarding past examinations that you can ask in the next lecture.

(授業改善のための学生アンケート)

お願い:
自由記述をできるだけ使って、**具体的**に書いてください

(例: 「英語をやめてほしい」のではなく、「Glossary を ... に改善してください」)

- digit
- 数字、桁
- digit sum
- 数字和
- digital root
- 数字根
- casting out nines
- 九去法
- (formal) language theory
- 言語理論
- automata theory
- オートマトン理論
- proof
- 証明
- to prove
- 証明する
- data structure
- データ構造
- intuition
- 直感
- 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
- 完全帰納法 (または累積帰納法)
- parallel
- 平行