The **Compactness Theorem** states that if *T* is a collection of first-order statements and every finite subset of *T* is consistent, then *T* is itself consistent. A set of statements is *consistent* if it has a model.

By abuse of terminology, the following related fact is also frequently referred to as "compactness." Let *M* be a -saturated model, be a definable set, and be a collection of definable subsets of , with of size less than . If covers *D*, then some finite subset of covers *D*. This fact follows from the definition of -saturation. Compactness is used to prove the existence of -saturated models, however.

The compactness theorem has a number of commonly-used corollaries. These corollaries are often used implicitly in proofs, and explained only as "compactness."

**Lemma:** Let *M* be a model, and be a consistent partial type over *M*. Then there is an elementary extension in which is realized.

**Proof:** Apply the Compactness Theorem to the union of the elementary diagram of *M* and the statements , where is a new constant symbol. QED

**Lemma:** Let *T* be a theory. Let be a formula, and let be a collection of formulas. Suppose that in every model *M* of *T*, we have

.

Then there is a finite subset such that in every model *M* of *T*,

.

**Proof:** Apply compactness to the union of *T* and the statements

where is a new constant symbol. By assumption, this collection of statements is inconsistent, so by compactness, some finite subset is inconsistent. This yields . QED

**Lemma:** Let *T* be a theory, and be a formula. Suppose that in every model *M* of *T*, the set is finite. Then there is a number *n* such that for every model *M*.

**Proof:** Apply compactness to the union of *T* and the set of sentences asserting for each *n* that at least *n* elements of the model satisfy . By assumption, this is inconsistent. Consequently, there is some *n* such that is inconsistent with *T*. This means exactly that in every model of *T*. QED

The analogous statement in saturated models is the following: **Lemma:** Let *M* be a -saturated model. Suppose that is a formula such that for every , the set is finite. Then there is a uniform bound *n* on the size of .

Other important and prototypical applications of compactness include the following:

- The Upwards Löwenheim-Skolem Theorem
- The existence of indiscernible sequences
- The existence of -saturated models
- The equivalence between the existence of Skolem functions and the property that every substructure is an elementary substructure.
- The equivalence between elimination of imaginaries and the interdefinability of every imaginary element with a real element.
- The statement that if every substructure of a model of
*T*is a model of*T*, then*T*is equivalent to a set of universal statements.

Let *S* denote the space of all complete theories (in some fixed first-order language). For each sentence , let

There is a natural topology on *S* in which the sets of the form are the basic open (and basic closed) subsets. The compactness theorem says exactly that *S* is compact with this topology.

Compactness follows easily from some forms of Gödel's Completeness Theorem. Specifically, a theory is inconsistent if and only if holds in all models of . By the Completeness Theorem, this holds if and only if can be proven from . But proofs are finitary, so any proof must take only finitely many steps, and must use only a finite subset of . In particular, if proves , then so does some finite subset . So if is inconsistent, so is a finite subset.

Compactness can alternatively be proven from Łoś's Theorem.

**Proof:** Let *T* be a collection of statements, with every finite subset of *T* being consistent. Let *X* be the set of all finite of *T*. For each finite subset , let

Note that and that for any *S*. It follows that any finite intersection of 's is non-empty. Therefore we can find an ultrafilter on *X* such that for every *S*. In other words, for each *S*, thinks that "most" elements of *X* contain *S*.

For each finite subset *S* of *T*, we can find a model of *S*, by assumption. Consider the ultraproduct

We claim that *M* is the desired model of *T*. Let be a formula in *T*. Then

for every , or equivalently, for every . But

.

Consequently, the set of *S* such that is "large" with respect to the ultrafilter . By Łoś's Theorem, holds in the ultraproduct *M*. QED ::: ::: :::