Extension Realizing All Types

Theorem
Let $\mathcal{M}$ be an $\mathcal{L}$-structure, and let $M$ be its universe.

There is an elementary extension $\mathcal{N}$ of $\mathcal{M}$ such that every type over $M$ (relative to $\mathcal{M}$) is realized in $\mathcal{N}$.

Proof
Let $S(\mathcal{M})$ denote the set containing all complete types over $M$ of every number of free variables.

Let $\kappa = |S(\mathcal{M})|$.

Use a bijection between $\kappa$ and $S(\mathcal{M})$ to write the elements of $S(\mathcal{M})$ as $p_\alpha$ for $\alpha < \kappa$.

For each $\alpha < \kappa$, let $N_\alpha$ be an elementary extension of $\mathcal{M}$ which has a tuple $\bar a_\alpha$ realizing $p_\alpha$. Such extensions and tuples exist by Type is Realized in some Elementary Extension.

We will construct the extension claimed by the theorem as the union over a chain of elementary extensions defined using transfinite induction. At each step, we use the Elementary Amalgamation Theorem to add on $N_\alpha$.

Base case $\alpha = 0$:
 * Let $\mathcal{B}_0 = \mathcal{M}$.
 * Note that $\mathcal{B}_0$ is an elementary extension of $\mathcal{M}$ by choice of $\mathcal{N}_0$.

Limit ordinals $\alpha \leq \kappa$:
 * Let $\displaystyle \mathcal{B}_\alpha = \bigcup_{\beta < \alpha} \mathcal{B}_\beta$
 * $\mathcal{B}_\alpha$ is an elementary extension of $\mathcal{M}$ by Union of Elementary Chain is an Elementary Extension.

Successor ordinals $\alpha + 1$ for $\alpha < \kappa$:
 * By the Elementary Amalgamation Theorem, since $\mathcal{B}_\alpha$ and $\mathcal{N}_\alpha$ are both elementary extensions of $\mathcal{M}$, there is an elementary extension $\mathcal{B}_{\alpha+1}$ of $\mathcal{B}_\alpha$ and an elementary embedding $g_{\alpha} :\mathcal{N}_\alpha \to \mathcal{B}_{\alpha+1}$ which is the identity on $M$ viewed as a subset of $\mathcal{N}_\alpha$.
 * Note that $g_\alpha (\bar a_\alpha)$ realizes $p_\alpha$ in $\mathcal{B}_{\alpha+1}$ since $g_\alpha$ is elementary.
 * Thus, $\mathcal{B}_{\alpha+1}$ is an elementary extension of $\mathcal{M}$ which contains $g_\alpha (\bar a_\alpha)$ realizing $p_\alpha$.

Now, let $\displaystyle \mathcal{B} = \bigcup_{\alpha < \kappa} \mathcal{B}_\alpha$.

$\mathcal{B}$ is an elementary extension of each $\mathcal{B}_\alpha$ by Union of Elementary Chain is an Elementary Extension.

In particular, $\mathcal{B}$ is an elementary extension of $\mathcal{B}_0 = \mathcal{M}$

Since each $p_\alpha$ is realized in $\mathcal{B}_{\alpha+1}$ by the corresponding $g_\alpha (\bar a_\alpha)$, and $\mathcal{B}$ is an elementary extension of each $\mathcal{B}_{\alpha+1}$, we have that $g_\alpha (\bar a_\alpha)$ realizes $p_\alpha$ in $\mathcal{B}$.