付録B 証明テンプレート集
1. 直接証明
対象: P -> Q
P を仮定する。
[定義を展開する]
[必要な変形を行う]
したがって Q が成り立つ。
2. 対偶証明
対象: P -> Q
対偶 ¬Q -> ¬P を示す。
¬Q を仮定する。
[定義を展開する]
[必要な変形を行う]
したがって ¬P が成り立つ。
よって対偶が成り立つので、元の命題 P -> Q も成り立つ。
3. 背理法
示したい命題が偽であると仮定する。
[仮定から推論する]
矛盾が生じる。
したがって、最初の仮定は誤りである。
よって示したい命題は真である。
4. 両包含による集合等号
対象: A = B
まず A ⊆ B を示す。
任意の x∈A を取る。
[推論]
したがって x∈B。
よって A⊆B。
次に B ⊆ A を示す。
任意の x∈B を取る。
[推論]
したがって x∈A。
よって B⊆A。
両包含より A=B。
5. 存在命題の証明
対象: ∃x P(x)
候補 x = ... を取る。
この x について P(x) が成り立つことを確認する。
したがって ∃x P(x) が成り立つ。
6. 普遍命題の証明
対象: ∀x P(x)
任意の x を取る。
[任意の x について成り立つ推論を行う]
したがって P(x) が成り立つ。
よって任意の x について P(x) が成り立つ。
7. 反例
対象: ∀x P(x) の否定
x = ... を取る。
この x について P(x) は成り立たない。
したがって ∀x P(x) は偽である。
8. 数学的帰納法
対象: 自然数 n に関する命題 P(n)
基底部:
P(0) または P(1) を示す。
帰納ステップ:
任意の k について P(k) が成り立つと仮定する。
この仮定のもとで P(k+1) を示す。
結論:
数学的帰納法により、すべての n について P(n) が成り立つ。
9. 強い帰納法
基底部:
必要な初期ケースを示す。
帰納ステップ:
P(0), P(1), ..., P(k) がすべて成り立つと仮定する。
この仮定から P(k+1) を示す。
結論:
強い帰納法により、すべての n について P(n) が成り立つ。
10. 構造帰納法
対象: 再帰的に定義された対象
基底ケース:
最小の構造について性質を示す。
構成ケース:
小さい構造で性質が成り立つと仮定する。
構成規則で作った大きい構造でも性質が成り立つことを示す。
結論:
構造帰納法により、再帰的に作られるすべての対象で性質が成り立つ。
11. 同値関係の証明
反射律:
任意の a について aRa を示す。
対称律:
aRb を仮定し、bRa を示す。
推移律:
aRb かつ bRc を仮定し、aRc を示す。
以上より R は同値関係である。
12. 半順序の証明
反射律:
任意の a について aRa を示す。
反対称律:
aRb かつ bRa を仮定し、a=b を示す。
推移律:
aRb かつ bRc を仮定し、aRc を示す。
以上より R は半順序である。
13. O記法の証明
対象: f(n)=O(g(n))
n ≥ n0 とする。
[低次項を高次項で上から抑える]
f(n) ≤ c g(n)
よって、定数 c と n0 が存在するので f(n)=O(g(n))。
14. ループ不変条件による正しさ
不変条件 I を定める。
初期化:
ループ開始前に I が成り立つことを示す。
保存:
反復開始時に I が成り立つと仮定し、反復後にも I が成り立つことを示す。
終了:
ループ終了条件と I から、事後条件が成り立つことを示す。
停止性:
ループが有限回で終了することを別途示す。