[TOC]
This note collects the main forms of mathematical induction used in discrete mathematics, including ordinary (weak) induction, strong induction, and structural induction for recursively defined objects. It also summarizes related results (well-ordering principle, Lamé's theorem), recursive definitions, a few observations about recursive algorithms, and a short note on program correctness.
To prove a property
- Basis step: prove
$P(b)$ . - Inductive step: assume
$P(k)$ holds for an arbitrary$k\ge b$ (inductive hypothesis) and then prove$P(k+1)$ .
Conclusion: by mathematical induction,
Template (practical): state clearly the base value
Strong induction assumes the truth of
Well-ordering principle: every nonempty set of positive integers has a least element. The well-ordering principle, ordinary induction, and strong induction are equivalent (each can be proved from the others).
Example application: any simple polygon with
Lamé's theorem: if
Structural induction is the natural induction principle for objects defined recursively (strings, trees, expressions, etc.). The proof pattern is:
- Show the property holds for each base constructor (base case).
- For each recursive constructor, assume the property for the constituent parts and prove it for the constructed object.
Example recursive definitions:
- Strings: the set $\Sigma^$ is defined by $\lambda\in\Sigma^$ (empty string) and if $w\in\Sigma^$ and $x\in\Sigma$ then $wx\in\Sigma^$.
- Concatenation: defined by
$w\cdot\lambda=w$ and$w_1\cdot(w_2x)=(w_1\cdot w_2)x$ . - Rooted trees: a single vertex is a rooted tree; if
$T_1,\dots,T_n$ are disjoint rooted trees with roots$r_i$ , adding a new root joined to each$r_i$ yields a rooted tree. - Full binary trees: base case a single root; inductive step joins two full binary trees as left and right subtrees.
Height of a full binary tree
An algorithm is recursive if it solves a problem by calling itself on smaller inputs. Common analysis techniques combine recurrence relations (e.g.,
Partial correctness: a program
Total correctness adds termination:
Hoare triples, loop invariants, and well-founded measures are standard tools for proving partial and total correctness; induction often appears when proving loop invariants or when reasoning about recursive procedures.
[1] Kenneth H. Rosen. Discrete Mathematics and Its Applications. 8th Edition.