# Mathematical induction

**Mathematical induction** is a method for proving that a statement is true for every natural number , that is, that the infinitely many cases all hold. Informal metaphors help to explain this technique, such as falling dominoes or climbing a ladder:

Mathematical induction proves that we can climb as high as we like on a ladder, by proving that we can climb onto the bottom rung (the

basis) and that from each rung we can climb up to the next one (thestep).—Concrete Mathematics, page 3 margins.

A **proof by induction** consists of two cases. The first, the **base case**, proves the statement for without assuming any knowledge of other cases. The second case, the **induction step**, proves that *if* the statement holds for any given case , *then* it must also hold for the next case . These two steps establish that the statement holds for every natural number . The base case does not necessarily begin with , but often with , and possibly with any fixed natural number , establishing the truth of the statement for all natural numbers .

The method can be extended to prove statements about more general well-founded structures, such as trees; this generalization, known as structural induction, is used in mathematical logic and computer science. Mathematical induction in this extended sense is closely related to recursion. Mathematical induction is an inference rule used in formal proofs, and is the foundation of most correctness proofs for computer programs.

Although its name may suggest otherwise, mathematical induction should not be confused with inductive reasoning as used in philosophy (see Problem of induction). The mathematical method examines infinitely many cases to prove a general statement, but does so by a finite chain of deductive reasoning involving the variable , which can take infinitely many values.

## History

In 370 BC, Plato's Parmenides may have contained traces of an early example of an implicit inductive proof.

The earliest implicit proof by mathematical induction was written by al-Karaji around 1000 AD, who applied it to arithmetic sequences to prove the binomial theorem and properties of Pascal's triangle. Whilst the original work was lost, it was later referenced by Al-Samawal al-Maghribi in his treatise *al-Bahir fi'l-jabr (The Brilliant in Algebra)* in around 1150 AD.

Katz says in his history of mathematics

Another important idea introduced by al-Karaji and continued by al-Samaw'al and others was that of an inductive argument for dealing with certain arithmetic sequences. Thus al-Karaji used such an argument to prove the result on the sums of integral cubes already known to Aryabhata [...] Al-Karaji did not, however, state a general result for arbitrary

n. He stated his theorem for the particular integer 10 [...] His proof, nevertheless, was clearly designed to be extendable to any other integer. [...] Al-Karaji's argument includes in essence the two basic components of a modern argument by induction, namely the truth of the statement forn= 1 (1 = 1^{3}) and the deriving of the truth forn=kfrom that ofn=k- 1. Of course, this second component is not explicit since, in some sense, al-Karaji's argument is in reverse; this is, he starts fromn= 10 and goes down to 1 rather than proceeding upward. Nevertheless, his argument inal-Fakhriis the earliest extant proof of the sum formula for integral cubes.

In India, early implicit proofs by mathematical induction appear in Bhaskara's "cyclic method".

None of these ancient mathematicians, however, explicitly stated the induction hypothesis. Another similar case (contrary to what Vacca has written, as Freudenthal carefully showed) was that of Francesco Maurolico in his *Arithmeticorum libri duo* (1575), who used the technique to prove that the sum of the first n odd integers is *n*^{2}.

The earliest rigorous use of induction was by Gersonides (1288–1344). The first explicit formulation of the principle of induction was given by Pascal in his *Traité du triangle arithmétique* (1665). Another Frenchman, Fermat, made ample use of a related principle: indirect proof by infinite descent.

The induction hypothesis was also employed by the Swiss Jakob Bernoulli, and from then on it became well known. The modern formal treatment of the principle came only in the 19th century, with George Boole, Augustus De Morgan, Charles Sanders Peirce, Giuseppe Peano, and Richard Dedekind.

## Description

The simplest and most common form of mathematical induction infers that a statement involving a natural number n (that is, an integer *n* ≥ 0 or 1) holds for all values of n. The proof consists of two steps:

- The
**base case**(or**initial case**): prove that the statement holds for 0, or 1. - The
**induction step**(or**inductive step**, or**step case**): prove that for every n, if the statement holds for n, then it holds for*n*+ 1. In other words, assume that the statement holds for some arbitrary natural number n, and prove that the statement holds for*n*+ 1.

The hypothesis in the induction step, that the statement holds for a particular n, is called the **induction hypothesis** or **inductive hypothesis**. To prove the induction step, one assumes the induction hypothesis for n and then uses this assumption to prove that the statement holds for *n* + 1.

Authors who prefer to define natural numbers to begin at 0 use that value in the base case; those who define natural numbers to begin at 1 use that value.

## Examples

### Sum of consecutive natural numbers

Mathematical induction can be used to prove the following statement *P*(*n*) for all natural numbers n.

This states a general formula for the sum of the natural numbers less than or equal to a given number; in fact an infinite sequence of statements: , , , etc.

** Proposition.** For every ,

**Proof.** Let *P*(*n*) be the statement We give a proof by induction on n.

*Base case:* Show that the statement holds for the smallest natural number *n* = 0.

*P*(0) is clearly true:

*Induction step:* Show that for every *k* ≥ 0, if *P*(*k*) holds, then *P*(*k* + 1) also holds.

Assume the induction hypothesis that for a particular k, the single case *n* = *k* holds, meaning *P*(*k*) is true:

Algebraically, the right hand side simplifies as:

Equating the extreme left hand and right hand sides, we deduce that:

*P*(

*k*+ 1) also holds true, establishing the induction step.

*Conclusion:* Since both the base case and the induction step have been proved as true, by mathematical induction the statement *P*(*n*) holds for every natural number n. Q.E.D.

### A trigonometric inequality

Induction is often used to prove inequalities. As an example, we prove that for any real number and natural number .

At first glance, it may appear that a more general version, for any *real* numbers , could be proven without induction; but the case shows it may be false for non-integer values of . This suggests we examine the statement specifically for *natural* values of , and induction is the readiest tool.

** Proposition.** For any and , .

**Proof.** Fix an arbitrary real number , and let be the statement . We induce on .

*Base case:* The calculation verifies .

*Induction step:* We show the implication for any natural number . Assume the induction hypothesis: for a given value , the single case is true. Using the angle addition formula and the triangle inequality, we deduce:

The inequality between the extreme left-hand and right-hand quantities shows that is true, which completes the induction step.

*Conclusion:* The proposition holds for all natural numbers Q.E.D.

## Variants

This section includes a list of references, related reading, or external links, but its sources remain unclear because it lacks inline citations. (July 2013) |

In practice, proofs by induction are often structured differently, depending on the exact nature of the property to be proven. All variants of induction are special cases of transfinite induction; see below.

### Base case other than 0 or 1

If one wishes to prove a statement, not for all natural numbers, but only for all numbers n greater than or equal to a certain number b, then the proof by induction consists of the following:

- Showing that the statement holds when
*n*=*b*. - Showing that if the statement holds for an arbitrary number
*n*≥*b*, then the same statement also holds for*n*+ 1.

This can be used, for example, to show that 2^{n} ≥ *n* + 5 for *n* ≥ 3.

In this way, one can prove that some statement *P*(*n*) holds for all *n* ≥ 1, or even for all *n* ≥ −5. This form of mathematical induction is actually a special case of the previous form, because if the statement to be proved is *P*(*n*) then proving it with these two rules is equivalent with proving *P*(*n* + *b*) for all natural numbers n with an induction base case 0.

#### Example: forming dollar amounts by coins

Assume an infinite supply of 4- and 5-dollar coins. Induction can be used to prove that any whole amount of dollars greater than or equal to 12 can be formed by a combination of such coins. Let *S*(*k*) denote the statement "k dollars can be formed by a combination of 4- and 5-dollar coins". The proof that *S*(*k*) is true for all *k* ≥ 12 can then be achieved by induction on k as follows:

*Base case:* Showing that *S*(*k*) holds for *k* = 12 is simple: take three 4-dollar coins.

*Induction step:* Given that *S*(*k*) holds for some value of *k* ≥ 12 (*induction hypothesis*), prove that *S*(*k* + 1) holds, too. Assume *S*(*k*) is true for some arbitrary *k* ≥ 12. If there is a solution for k dollars that includes at least one 4-dollar coin, replace it by a 5-dollar coin to make *k* + 1 dollars. Otherwise, if only 5-dollar coins are used, k must be a multiple of 5 and so at least 15; but then we can replace three 5-dollar coins by four 4-dollar coins to make *k* + 1 dollars. In each case, *S*(*k* + 1) is true.

Therefore, by the principle of induction, *S*(*k*) holds for all *k* ≥ 12, and the proof is complete.

In this example, although *S*(*k*) also holds for , the above proof cannot be modified to replace the minimum amount of 12 dollar to any lower value m. For *m* = 11, the base case is actually false; for *m* = 10, the second case in the induction step (replacing three 5- by four 4-dollar coins) will not work; let alone for even lower m.

### Induction on more than one counter

It is sometimes desirable to prove a statement involving two natural numbers, n and m, by iterating the induction process. That is, one proves a base case and an induction step for n, and in each of those proves a base case and an induction step for m. See, for example, the proof of commutativity accompanying *addition of natural numbers*. More complicated arguments involving three or more counters are also possible.

### Infinite descent

The method of infinite descent is a variation of mathematical induction which was used by Pierre de Fermat. It is used to show that some statement *Q*(*n*) is false for all natural numbers n. Its traditional form consists of showing that if *Q*(*n*) is true for some natural number n, it also holds for some strictly smaller natural number m. Because there are no infinite decreasing sequences of natural numbers, this situation would be impossible, thereby showing (by contradiction) that *Q*(*n*) cannot be true for any n.

The validity of this method can be verified from the usual principle of mathematical induction. Using mathematical induction on the statement *P*(*n*) defined as "*Q*(*m*) is false for all natural numbers m less than or equal to n", it follows that *P*(*n*) holds for all n, which means that *Q*(*n*) is false for every natural number n.

### Limited mathematical induction

If one wishes to prove that a property *P* holds for all natural numbers less than or equal to n, proving *P* satisfies the following conditions suffices:

*P*holds for 0,- For any natural number x less than n, if
*P*holds for x, then*P*holds for*x*+ 1

### Prefix induction

The most common form of proof by mathematical induction requires proving in the induction step that

whereupon the induction principle "automates" n applications of this step in getting from *P*(0) to *P*(*n*). This could be called "predecessor induction" because each step proves something about a number from something about that number's predecessor.

A variant of interest in computational complexity is "prefix induction", in which one proves the following statement in the induction step:

The induction principle then "automates" log_{2} *n* applications of this inference in getting from *P*(0) to *P*(*n*). In fact, it is called "prefix induction" because each step proves something about a number from something about the "prefix" of that number — as formed by truncating the low bit of its binary representation. It can also be viewed as an application of traditional induction on the length of that binary representation.

If traditional predecessor induction is interpreted computationally as an n-step loop, then prefix induction would correspond to a log-n-step loop. Because of that, proofs using prefix induction are "more feasibly constructive" than proofs using predecessor induction.

Predecessor induction can trivially simulate prefix induction on the same statement. Prefix induction can simulate predecessor induction, but only at the cost of making the statement more syntactically complex (adding a bounded universal quantifier), so the interesting results relating prefix induction to polynomial-time computation depend on excluding unbounded quantifiers entirely, and limiting the alternation of bounded universal and existential quantifiers allowed in the statement.

One can take the idea a step further: one must prove

*n*applications of this inference in getting from

*P*(0) to

*P*(

*n*). This form of induction has been used, analogously, to study log-time parallel computation.

^{[citation needed]}

### Complete (strong) induction

Another variant, called **complete induction**, **course of values induction** or **strong induction** (in contrast to which the basic form of induction is sometimes known as **weak induction**), makes the induction step easier to prove by using a stronger hypothesis: one proves the statement under the assumption that holds for *all* natural numbers less than ; by contrast, the basic form only assumes . The name "strong induction" does not mean that this method can prove more than "weak induction", but merely refers to the stronger hypothesis used in the induction step.

In fact, it can be shown that the two methods are actually equivalent, as explained below. In this form of complete induction, one still has to prove the base case, , and it may even be necessary to prove extra-base cases such as before the general argument applies, as in the example below of the Fibonacci number .

Although the form just described requires one to prove the base case, this is unnecessary if one can prove (assuming for all lower ) for all . This is a special case of transfinite induction as described below, although it is no longer equivalent to ordinary induction. In this form the base case is subsumed by the case , where is proved with no other assumed; this case may need to be handled separately, but sometimes the same argument applies for and , making the proof simpler and more elegant. In this method, however, it is vital to ensure that the proof of does not implicitly assume that , e.g. by saying "choose an arbitrary ", or by assuming that a set of m elements has an element.

#### Equivalence with ordinary induction

Complete induction is equivalent to ordinary mathematical induction as described above, in the sense that a proof by one method can be transformed into a proof by the other. Suppose there is a proof of by complete induction. Then, this proof can be transformed into an ordinary induction proof by assuming a stronger inductive hypothesis. Let be the statement " holds for all such that "—this becomes the inductive hypothesis for ordinary induction. We can then show and for assuming only and show that implies .

If, on the other hand, had been proven by ordinary induction, the proof would already effectively be one by complete induction: is proved in the base case, using no assumptions, and is proved in the induction step, in which one may assume all earlier cases but need only use the case .

#### Example: Fibonacci numbers

Complete induction is most useful when several instances of the inductive hypothesis are required for each induction step. For example, complete induction can be used to show that

#### Example: prime factorization

Another proof by complete induction uses the hypothesis that the statement holds for *all* smaller more thoroughly. Consider the statement that "every natural number greater than 1 is a product of (one or more) prime numbers", which is the "existence" part of the fundamental theorem of arithmetic. For proving the induction step, the induction hypothesis is that for a given the statement holds for all smaller . If is prime then it is certainly a product of primes, and if not, then by definition it is a product: , where neither of the factors is equal to 1; hence neither is equal to , and so both are greater than 1 and smaller than . The induction hypothesis now applies to and , so each one is a product of primes. Thus is a product of products of primes, and hence by extension a product of primes itself.

#### Example: dollar amounts revisited

We shall look to prove the same example as above, this time with *strong induction*. The statement remains the same:

However, there will be slight differences in the structure and the assumptions of the proof, starting with the extended base case.

**Proof.**

*Base case:* Show that holds for .

The base case holds.

*Induction step:* Given some , assume holds for all with . Prove that holds.

Choosing , and observing that shows that holds, by the inductive hypothesis. That is, the sum can be formed by some combination of and dollar coins. Then, simply adding a dollar coin to that combination yields the sum . That is, holds Q.E.D.

### Forward-backward induction

Sometimes, it is more convenient to deduce backwards, proving the statement for , given its validity for . However, proving the validity of the statement for no single number suffices to establish the base case; instead, one needs to prove the statement for an infinite subset of the natural numbers. For example, Augustin Louis Cauchy first used forward (regular) induction to prove the inequality of arithmetic and geometric means for all powers of 2, and then used backwards induction to show it for all natural numbers.

## Example of error in the induction step

The induction step must be proved for all values of n. To illustrate this, Joel E. Cohen proposed the following argument, which purports to prove by mathematical induction that all horses are of the same color:

*Base case:* in a set of only *one* horse, there is only one color.

*Induction step:* assume as induction hypothesis that within any set of horses, there is only one color. Now look at any set of horses. Number them: . Consider the sets and . Each is a set of only horses, therefore within each there is only one color. But the two sets overlap, so there must be only one color among all horses.

The base case is trivial, and the induction step is correct in all cases . However, the argument used in the induction step is incorrect for , because the statement that "the two sets overlap" is false for and .

## Formalization

In **second-order logic**, one can write down the "axiom of induction" as follows:

*P*(·) is a variable for predicates involving one natural number and k and n are variables for natural numbers.

In words, the base case *P*(0) and the induction step (namely, that the induction hypothesis *P*(*k*) implies *P*(*k* + 1)) together imply that *P*(*n*) for any natural number n. The axiom of induction asserts the validity of inferring that *P*(*n*) holds for any natural number n from the base case and the induction step.

The first quantifier in the axiom ranges over *predicates* rather than over individual numbers. This is a second-order quantifier, which means that this axiom is stated in second-order logic. Axiomatizing arithmetic induction in first-order logic requires an axiom schema containing a separate axiom for each possible predicate. The article Peano axioms contains further discussion of this issue.

The axiom of structural induction for the natural numbers was first formulated by Peano, who used it to specify the natural numbers together with the following four other axioms:

- 0 is a natural number.
- The successor function s of every natural number yields a natural number (
*s*(*x*) =*x*+ 1). - The successor function is injective.
- 0 is not in the range of s.

In **first-order ZFC set theory**, quantification over predicates is not allowed, but one can still express induction by quantification over sets:

## Transfinite induction

One variation of the principle of complete induction can be generalized for statements about elements of any well-founded set, that is, a set with an irreflexive relation < that contains no infinite descending chains. Every set representing an ordinal number is well-founded, the set of natural numbers is one of them.

Applied to a well-founded set, transfinite induction can be formulated as a single step. To prove that a statement *P*(*n*) holds for each ordinal number:

- Show, for each ordinal number n, that if
*P*(*m*) holds for all*m*<*n*, then*P*(*n*) also holds.

This form of induction, when applied to a set of ordinal numbers (which form a well-ordered and hence well-founded class), is called *transfinite induction*. It is an important proof technique in set theory, topology and other fields.

Proofs by transfinite induction typically distinguish three cases:

- when n is a minimal element, i.e. there is no element smaller than n;
- when n has a direct predecessor, i.e. the set of elements which are smaller than n has a largest element;
- when n has no direct predecessor, i.e. n is a so-called limit ordinal.

Strictly speaking, it is not necessary in transfinite induction to prove a base case, because it is a vacuous special case of the proposition that if *P* is true of all *n* < *m*, then *P* is true of m. It is vacuously true precisely because there are no values of *n* < *m* that could serve as counterexamples. So the special cases are special cases of the general case.

## Relationship to the well-ordering principle

The principle of mathematical induction is usually stated as an axiom of the natural numbers; see Peano axioms. It is strictly stronger than the well-ordering principle in the context of the other Peano axioms. Suppose the following:

- The trichotomy axiom: For any natural numbers n and m, n is less than or equal to m if and only if m is not less than n.
- For any natural number n,
*n*+ 1 is greater than*n*. - For any natural number n, no natural number is between
*n*and*n*+ 1. - No natural number is less than zero.

It can then be proved that induction, given the above-listed axioms, implies the well-ordering principle. The following proof uses complete induction and the first and fourth axioms.

**Proof.** Suppose there exists a non-empty set, S, of natural numbers that has no least element. Let *P*(*n*) be the assertion that n is not in S. Then *P*(0) is true, for if it were false then 0 is the least element of S. Furthermore, let n be a natural number, and suppose *P*(*m*) is true for all natural numbers m less than *n* + 1. Then if *P*(*n* + 1) is false *n* + 1 is in S, thus being a minimal element in S, a contradiction. Thus *P*(*n* + 1) is true. Therefore, by the complete induction principle, *P*(*n*) holds for all natural numbers n; so S is empty, a contradiction. Q.E.D.

On the other hand, the set , shown in the picture, is well-ordered^{: 35lf } by the lexicographic order.
Moreover, except for the induction axiom, it satisfies all Peano axioms, where Peano's constant 0 is interpreted as the pair (0, 0), and Peano's *successor* function is defined on pairs by succ(*x*, *n*) = (*x*, *n* + 1) for all and .
As an example for the violation of the induction axiom, define the predicate *P*(*x*, *n*) as (*x*, *n*) = (0, 0) or (*x*, *n*) = succ(*y*, *m*) for some and . Then the base case *P*(0, 0) is trivially true, and so is the induction step: if *P*(*x*, *n*), then *P*(succ(*x*, *n*)). However, *P* is not true for all pairs in the set.

Peano's axioms with the induction principle uniquely model the natural numbers. Replacing the induction principle with the well-ordering principle allows for more exotic models that fulfill all the axioms.

It is mistakenly printed in several books and sources that the well-ordering principle is equivalent to the induction axiom. In the context of the other Peano axioms, this is not the case, but in the context of other axioms, they are equivalent; specifically, the well-ordering principle implies the induction axiom in the context of the first two above listed axioms and

- Every natural number is either 0 or
*n*+ 1 for some natural number n.

A common mistake in many erroneous proofs is to assume that *n* − 1 is a unique and well-defined natural number, a property which is not implied by the other Peano axioms.