A sufficient condition for $\omega$-categoricity I am trying to prove that if a complete theory $T$ on a countable language $L$ has the following property:
$$\forall n<\omega \exists M\models T\quad\quad\text{s.t.}\ M\ \text{realizes only a finite number of complete n-types}\ S_n(T)$$
then $T$ is $\omega$-categorical.
What I am trying to show is that, if there was a non isolated type $p^*(x)$ for some $x$ of some length $n$ the for sure:
$$p^*(x)\longrightarrow\bigvee_{q_k\in S_n(T),q_k\neq p_1,...,p_n} \  q_k(x)$$
where $p_1,...,p_n$ are the types realised, and hence isolated by $M$.
Then one can find a formula $\varphi(x)$ such that
$$p^*(x)\wedge\varphi(x)\longrightarrow\  q_m(x)$$
for some $m$ indexing the disjunction, as shown here An excercise about omitting types theorem
Anyway I cannot reach a contradiction.
I aslo tried to reason with orbits but with no sucess.
Any hint or help would be much appreciated.
 A: I assume you know the Ryll-Nardzewski theorem, at least in the form which states that for a countable and complete theory $T$ with infinite models, $T$ is $\aleph_0$-categorical if and only if $S_n(T)$ is finite for all $n$.
What we know is that for all $n$, there is a model $M$ which only realizes finitely many types in $S_n(T)$.
Let's fix an arbitrary $n$ and show that $S_n(T)$ is finite. Let $M$ be a model of $T$ which only realizes finitely many complete types in $S_n(T)$, say $p_1,\dots,p_k$. For each $1\leq i \leq k$, let $\varphi_i$ be a formula in $p_i$ such that $\lnot \varphi_i\in p_j$ for all $j\neq i$. You can find $\varphi_i$ by picking, for each $j\neq i$, some formula $\psi_j\in p_i$ such that $\lnot \psi_j\in p_j$, and defining $\varphi_i = \bigwedge_{j\neq i} \psi_j$.
Now every $n$-tuple from $M$ realizes one of the types $p_i$, so $$M\models \forall x_1\dots\forall x_n\, \bigvee_{i=1}^k \varphi_i.$$
And for each $i$, if an $n$-tuple from $M$ satisfies $\varphi_i$, then the tuple must realize $p_i$, so for all $\theta\in p_i$, $$M\models \forall x_1\dots\forall x_n\, (\varphi_i\rightarrow \theta).$$
Now $T$ is complete, so any sentence satisfied in any model is actually satisfied in every model. So we have
$$T\models \forall x_1\dots\forall x_n\, \bigvee_{i=1}^k \varphi_i.$$
And for each $i$ and each $\theta\in p_i$, $$T\models \forall x_1\dots\forall x_n\, (\varphi_i\rightarrow \theta).$$
This shows that every model of $T$ only realizes the types $p_1,\dots,p_k$, since any $n$-tuple from any model of $T$ must satisfy $\varphi_i$ for some $1\leq i \leq k$, and thus must realize $p_i$. So in fact $S_n(T) = \{p_1,\dots,p_k\}$ is finite.
Since $n$ was arbitrary, $S_n(T)$ is finite for all $n$, so $T$ is $\aleph_0$-categorical.
