**Transfinite induction** is an extension of mathematical induction to well-ordered sets, for example to sets of ordinal numbers or cardinal numbers. Its correctness is a theorem of ZFC.^{[1]}

Let be a property defined for all ordinals . Suppose that whenever is true for all , then is also true.^{[2]} Then transfinite induction tells us that is true for all ordinals.

Usually the proof is broken down into three cases:

**Zero case:**Prove that is true.**Successor case:**Prove that for any successor ordinal , follows from (and, if necessary, for all ).**Limit case:**Prove that for any limit ordinal , follows from for all .

All three cases are identical except for the type of ordinal considered. They do not formally need to be considered separately, but in practice the proofs are typically so different as to require separate presentations. Zero is sometimes considered a limit ordinal and then may sometimes be treated in proofs in the same case as limit ordinals.

**Transfinite recursion** is similar to transfinite induction; however, instead of proving that something holds for all ordinal numbers, we construct a sequence of objects, one for each ordinal.

As an example, a basis for a (possibly infinite-dimensional) vector space can be created by starting with the empty set and for each ordinal *α > 0* choosing a vector that is not in the span of the vectors . This process stops when no vector can be chosen.

More formally, we can state the Transfinite Recursion Theorem as follows:

**Transfinite Recursion Theorem (version 1)**. Given a class function^{[3]} *G*: *V* → *V* (where *V* is the class of all sets), there exists a unique transfinite sequence *F*: Ord → *V* (where Ord is the class of all ordinals) such that

- for all ordinals
*α*, where denotes the restriction of*F'*s domain to ordinals <*α*.

As in the case of induction, we may treat different types of ordinals separately: another formulation of transfinite recursion is the following:

**Transfinite Recursion Theorem (version 2)**. Given a set *g*_{1}, and class functions *G*_{2}, *G*_{3}, there exists a unique function *F*: Ord → *V* such that

*F*(0) =*g*_{1},*F*(*α*+ 1) =*G*_{2}(*F*(*α*)), for all*α*∈ Ord,- , for all limit
*λ*≠ 0.

Note that we require the domains of *G*_{2}, *G*_{3} to be broad enough to make the above properties meaningful. The uniqueness of the sequence satisfying these properties can be proved using transfinite induction.

More generally, one can define objects by transfinite recursion on any well-founded relation *R*. (*R* need not even be a set; it can be a proper class, provided it is a set-like relation; i.e. for any *x*, the collection of all *y* such that *yRx* is a set.)

Proofs or constructions using induction and recursion often use the axiom of choice to produce a well-ordered relation that can be treated by transfinite induction. However, if the relation in question is already well-ordered, one can often use transfinite induction without invoking the axiom of choice.^{[4]} For example, many results about Borel sets are proved by transfinite induction on the ordinal rank of the set; these ranks are already well-ordered, so the axiom of choice is not needed to well-order them.

The following construction of the Vitali set shows one way that the axiom of choice can be used in a proof by transfinite induction:

- First, well-order the real numbers (this is where the axiom of choice enters via the well-ordering theorem), giving a sequence , where β is an ordinal with the cardinality of the continuum. Let
*v*_{0}equal*r*_{0}. Then let*v*_{1}equal*r*_{α1}, where*α*_{1}is least such that*r*_{α1}−*v*_{0}is not a rational number. Continue; at each step use the least real from the*r*sequence that does not have a rational difference with any element thus far constructed in the*v*sequence. Continue until all the reals in the*r*sequence are exhausted. The final*v*sequence will enumerate the Vitali set.

The above argument uses the axiom of choice in an essential way at the very beginning, in order to well-order the reals. After that step, the axiom of choice is not used again.

Other uses of the axiom of choice are more subtle. For example, a construction by transfinite recursion frequently will not specify a *unique* value for *A*_{α+1}, given the sequence up to *α*, but will specify only a *condition* that *A*_{α+1} must satisfy, and argue that there is at least one set satisfying this condition. If it is not possible to define a unique example of such a set at each stage, then it may be necessary to invoke (some form of) the axiom of choice to select one such at each step. For inductions and recursions of countable length, the weaker axiom of dependent choice is sufficient. Because there are models of Zermelo–Fraenkel set theory of interest to set theorists that satisfy the axiom of dependent choice but not the full axiom of choice, the knowledge that a particular proof only requires dependent choice can be useful.