# Models that realize all types

Let us call a theory $$T$$ good if

• it is complete;
• it is formulated in a countable language $$L$$;
• it has infinite models.

Suppose $$T$$ is good and $$M \models T$$, the exercise is to prove

$$M$$ is $$\omega$$-saturated iff it is $$\omega$$-homogeneous and it realizes all types [in $$\cup_n S_n(T)$$].

Right to left is immediate. We also know that

[*] $$M$$ is $$\omega$$-saturated iff it is $$\omega$$-homogeneous and $$\omega^+$$-universal.

So it suffices to show that realizing all types implies $$\omega^+$$-universality (maybe using $$\omega$$-homogeneity). My idea is to utilize the technique of the $$\Rightarrow$$-direction proof of [*], but adept it to use that $$M$$ realizes $$\cup_n S_n(T)$$ instead of $$\omega$$-saturation. But I am stuck.

I don't know any theorems that describe/involve models that realize all types, except that saturated models realize all types (but that is not very useful here). What do we know about such models, and how can I use that?

The question boils down to showing that an $$\omega$$-homogeneous model $$M$$ that realises all the types in $$\bigcup_{n <\omega} S_n(T)$$ is $$\omega^+$$-universal, so let's prove that.
Let $$A$$ be countable and elementarily equivalent to $$M$$. Enumerate $$A$$ as $$(a_i)_{i < \omega}$$, and denote $$A_n = \{a_i : i < n\}$$ (so this does not include $$a_n$$). We will build an increasing chain of maps $$f_0 \subseteq f_1 \subseteq \ldots$$, such that $$f_n: A_n \to M$$ is a partial elementary embedding for all $$n < \omega$$.
• For $$n = 0$$ we can just take $$f_0$$ to be the empty map.
• Suppose we have constructed $$f_n: A_n \to M$$. Let $$p(x_0, \ldots, x_n) = tp(a_0, \ldots, a_n)$$. By assumption, there are $$b_0, \ldots, b_n$$ in $$M$$ that realise $$p(x_0, \ldots, x_n)$$. Restricting types, we find $$tp(b_0, \ldots, b_{n-1}) = tp(a_0, \ldots, a_{n-1}) = tp(f_n(a_0), \ldots, f_n(a_{n-1})).$$ So the map $$g: \{b_0, \ldots, b_{n-1}\} \to M$$ given by $$g(b_i) = f_n(a_i)$$ is partial elementary. By $$\omega$$-homogeneity we can extend $$g$$ to a partial elementary map $$g': \{b_0, \ldots, b_n\} \to M$$. Then we have that $$tp(b_0, \ldots, b_n) = tp(g'(b_0), \ldots, g'(b_n)) = tp(f_n(a_0), \ldots, f_n(a_{n-1}), g'(b_n)).$$ So now we can extend $$f_n: A_n \to M$$ to $$f_{n+1}: A_{n+1} \to M$$ by sending $$a_n$$ to $$g'(b_n)$$.
Now we have our chain of partial elementary maps, we can just set $$f = \bigcup_{n < \omega} f_n$$ to obtain an elementary embedding $$f: A \to M$$.
• Although you explicitly pointed out your convention that $A_n$ doesn't contain $a_n$, you seem to have forgotten that convention in the second bullet item, the induction step, where $f_n(a_n)$ occurs even though $f_n$ has domain $A_n$. (Just replace $n$ by $n-1$ throughout that second bullet item.) Apr 18 '19 at 21:30