Solution (source code)

= Solution

An <atomic model> is a model in which every finite tuple's <complete type> over the empty set is isolated by a formula. An <omega-saturated model> realizes every <complete type> in finitely many variables over every finite parameter set; equivalently it realizes all one-variable types over finite parameter sets, then successive realizations give the finite-tuple version.

Suppose $M$ is countable and omega-saturated. Every type in $S_n(T)$ is realized by a tuple in $M$, so $S_n(T)$ is countable. This is a compact Hausdorff <Stone space> with a clopen basis. Its isolated points are dense. Indeed, if a nonempty clopen subset had no isolated point, split it into two disjoint nonempty clopen subsets and recursively split every resulting subset. Such splits exist because each subset has at least two points and the space is zero-dimensional. Compactness supplies a point in each nested sequence along an infinite binary branch, while disjoint siblings make different branches yield different points. This would give uncountably many points, contradicting countability.

For each $n$, let $\Gamma_n(\mathbf x)$ consist of the negations of all formulas that isolate complete $n$-types. Density of <isolated types> means that every consistent formula has a consistent refinement to an isolating formula $\delta$; this refinement excludes the member $\neg\delta$ of $\Gamma_n$. Thus $T$ locally omits every $\Gamma_n$. The <omitting types theorem> gives a countable model $A$ omitting them all. Every tuple in $A$ therefore satisfies some isolating formula, so \b[$A$ is atomic]. If some $\Gamma_n$ is itself inconsistent, its omission is automatic and does not obstruct this argument.

The converse about existence is \b[false]. Here is a <countable atomic model without a countable saturated model>. Take a countable set $M$ with unary predicates $P_i$, $i\in\mathbb N$, such that every finite Boolean pattern of the predicates occurs infinitely often. For example, use finite binary words paired with a natural number, with $P_i$ recording the $i$th bit when it exists and false otherwise. Add a constant naming each element, and put $T=\operatorname{Th}(M)$ in this countable language. Every tuple of $M$ has its type isolated by equations to its named coordinates, so $M$ is a countable <atomic model>.

For each infinite binary sequence $\eta$, the family
$$
\{x\ne c_a:a\in M\}\cup
\{P_i(x):\eta_i=1\}\cup\{\neg P_i(x):\eta_i=0\}
$$
is finitely satisfiable in $M$: realize its finitely many predicate requirements while avoiding finitely many named elements. By <compactness theorem>, it extends to a complete one-type. Different sequences give different types, so $S_1(T)$ is uncountable. Any <omega-saturated model> must realize all these empty-parameter types, which a countable model cannot do. This disproves the existence converse, rather than merely exhibiting an <atomic model> that is itself nonsaturated.