数学归纳法

数学归纳法（，缩写：MI）是一种数学证明方法，通常被用于证明某个给定命题在整个或者局部自然数范围内成立。除了自然数以外，广义上的数学归纳法也可以用于证明一般良基结构，例如：集合论中的树。这种广义的数学归纳法应用于数学逻辑和计算机科学领域，称作结构归纳法。
虽然数学归纳法名字中有“归纳”，但是数学归纳法并非逻辑上不严谨的归纳推理法，它属于完全严谨的演绎推理法。事实上，所有数学证明都属于演绎推理方法。
定义.
最简单和常见的数学归纳法是证明当formula_1等于任意一个自然数时某命题成立。证明分下面两步：
这种方法的原理在于：首先证明在某个起点值时命题成立，然后证明从一个值到下一个值的过程有效。当这两点都已经证明，那么任意值都可以通过反复使用这个方法推导出来。把这个方法想成多米诺骨牌效应也许更容易理解一些。例如：你有一列很长的直立着的多米诺骨牌，如果你可以：
则可下结论：所有的骨牌都会倒下。
例子.
例子1.
证明下-{面}-这个给定公式（命题）为真：
formula_6
其中"formula_1"为任意自然数。这是用于计算前"n"个自然数的和的简单公式。
证明.
第一步-起始步骤.
第一步是验证这个公式在formula_2时成立。左边formula_9，而右边formula_10，所以这个公式在formula_2时成立。第一步完成。
第二步-推递步骤.
第二步证明假设formula_3时公式成立，则可推理出formula_4时公式也成立。 证明步骤如下。
假设formula_3时公式成立。即
formula_15【等式formula_16】
然后在等式等号两边分别加上formula_17得到
formula_18【等式formula_19】
这就是formula_4时的等式。
现在需要根据等式等式formula_19演绎出等式formula_16的符号形式。（需要注意的是如果给定公式不为真，则做不到）通过因式分解合并(形式变换/字符操纵)，等式formula_19的右手边
formula_24
也就是说
formula_25
这样便证明了从等式formula_16成立可推理出等式formula_19也成立。证明至此完成，结论：对于任意自然数formula_1，formula_29均成立。
解释.
在这个证明中，推理的过程如下：
例子2.
证明对于Fibonacci数列，定义formula_44，且formula_45，则formula_46。
证明.
首先，我们先使得formula_47的情况成立，formula_48
然后，我们假定formula_49的情况下的成立的，formula_50
然后我们使得formula_51的情况也成立，（这是为了表明，如果有任意数k使得其成立，则有其+1也成立）
formula_52
于是我们得证，即从formula_47，到formula_54到所有正实数都成立，就像多米诺骨牌的第一块formula_47成立而且每一块的下一块都成立（formula_56)
数学归纳法的变体.
在应用中，数学归纳法常常需要采取一些变化来适应实际的需求。下面介绍一些常见的数学归纳法变体。
从0以外的自然数开始.
第一种情况：
如果欲证明的命题并不是针对全部自然数，而只是针对所有大于等于某个数字"b"的自然数，那么证明的步骤需要做如下修改：
用这个方法可以证明诸如“当formula_61时，formula_62这一类命题。
第二种情况：
如果欲证明的命题针对全部自然数，但仅当大于等于某个数字"b"时比较容易证明，则可参考如下步骤：
用这种方法可以证明一些需要通过放缩来证明的不等式。
只针对偶数或只针对奇数.
如果我们想证明的命题并不是针对全部自然数，而只是针对所有奇数或偶数，那么证明的步骤需要做如下修改：
奇数方面：
偶数方面：
或调整命题表述，使之变为对所有正整数成立，例如
递回归纳法.
又名递降归纳法。数学归纳法并不是只能应用于形如“对任意的formula_1”这样的命题。对于形如“对任意的formula_79”这样的命题，如果对一般的formula_1比较复杂，而formula_3比较容易验证，并且我们可以实现从formula_82到formula_83的递推，formula_84的话，我们就能应用归纳法得到对于任意的formula_79，原命题均成立。
完整归纳法.
另一个一般化的方法叫完整归纳法（也称第二数学归纳法或强归纳法），在第二步中我们假定式子不仅当formula_3时成立，当"formula_1"小于或等于formula_5时也成立。这样可以设计出这样两步:
例如，这种方法被用来证明：
其中 formula_93是第"formula_1"个斐波纳契数和formula_95（即黄金分割）。如果我们可以假设式子已经在当formula_3和formula_97时成立，从formula_98之后可以直截了当地证明当formula_4时式子成立.
这种方法也是第一种形式的特殊化：
结论：formula_100对一切自然数"formula_1"成立。
超限归纳法.
最后两步可以用这样一步表示：
实际上这是数学归纳法的大多数通式，可以知道他不仅对表达自然数的式子有效，而且对于任何在良基集（也就是一个偏序的集合，包括有限降链）中元素的式子也有效（这里"formula_110"被定义为formula_111和formula_112）。
这种形式的归纳法当运用到序数（以良序的和一些的良基类的形式）时被称为超限归纳法，它在集合论、拓扑学和其他领域是一种重要的方法。
要区别用超限归纳法证明的命题的三种情况：
参见数学归纳法的三种形式。
形式写法.
使用二阶逻辑.
二阶逻辑可捕捉数学归纳法这概念，表达成如下逻辑式：
formula_120是容纳一自然数的述词变元，遍历所有述词而非个别数字，为二阶量词（是故此式与二阶逻辑有关），formula_82与formula_1则是自然数变元，遍历所有自然数。
白话解释此式，此式说：起始步骤formula_123与推递步骤（即归纳假设，formula_124蕴涵 formula_125） 两步成立会导出对任一自然数formula_1， formula_29成立之结论。通常，我们为了证明第二步，会假设formula_29成立（归纳假设），再进一步证明formula_129。此牵涉到条件证法，将条件句之前件作为假设，假定其正确以便于证明。
使用一阶逻辑.
若用一阶逻辑将数学归纳法公设化，则须采用公设模式，替每一个可能存在的述词设下针对其的独立公设。举例而言，我们仅允许三个一阶述词存在，分别名为formula_130、formula_131、formula_132 ，则原先以二阶逻辑描述的公设可改写为：
。然而其强度与以二阶逻辑描述之逻辑式不同，前者较后者弱。理由为一阶逻辑述词之数量为可数，而二阶逻辑量限所迭代的集合为不可数。
此外，二阶逻辑所表示的归纳公设综合其它皮亚诺公设为同畴(categorical)，且所得之自然数模型无限大。根据勒文海姆-斯科伦定理，用一阶逻辑表达的理论若有可数无限大的模型，则其有不可数大的模型，是故无法前头将所述的模型公设化。亦即，用二阶逻辑表达的公设仅允许一群模型彼此同构，而一阶逻辑模型则因前述定理，并非每个模型都同构。
使用一阶ZFC集合论.
一阶ZFC集合论不允许述词被遍历， 但我们可以借由遍历集合，绕过一阶逻辑之限制，描述归纳法：
formula_137 本身是集合，但可视作命题——只要命题在这数下成立，数字就会收入集合。别于皮亚诺公设，将数学归纳法定为公设，ZFC集合论直接定义自然数，使得归纳法本身是定理而非公设。
数学归纳法的合理性.
皮亚诺公理视数学归纳法不证自明，设作公理，而于策梅洛-弗兰克尔集合论，数学归纳法可从良序定理推导出来。需要注意的是数学归纳法只能判定给定命题的真，而不能证伪，因为在形式变换这一过程需要一定技巧与灵感。抽象的概念如自然数，可通过抽象的工具去处理。通过有限的步骤处理无限的对象如证明质数的无穷。