Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Let $M$ and $N$ be two countable, homogeneous structures, and assume that they both realize the same types with a finite number of variables. Does it follow that $M$ and $N$ are isomorphic? What if they are both uncountable, but of the same cardinality?

I can't really grasp the idea of homogeneous structures too well, yet. Some guidance and intuition on what that is would be welcome too.

I have a feeling this has something to do with $\omega$-saturation, and maybe the Ryll-Nardzewski Theorem, but I can't quite put the pieces together.

Edit: A comment, now deleted, suggested a back-and-forth method. Since that is usually the go-to method for proving isomorphisms of countable structures, I'm surprised I didn't think of it. I will try that now, but it seems like it might get complicated with so many functions going around (the ones used in the back-and-forth method itself, and the ones coming from homogeneity of both $M$ and $N$).

share|cite|improve this question
up vote 3 down vote accepted

An elementary solution using back-and-forth method may be formulated as follows.

Take arbitrary two homogeneous, countable models $M,N$ realizing the same $n$-types without parameters, for all $n$. Enumerate $M,N$ as $a_n,b_n$, respectively.

We construct recursively an increasing sequence of partial isomorphisms $f_n\colon\{a_1,\ldots,a_n,b_1',\ldots,b_n'\}\to \{b_1,\ldots,b_n,a_1',\ldots,a_n'\}$ such that $f_n(a_j)=a_j'$ and $f_n(b_j')=b_j$, yielding an isomorphism $\bigcup_n f_n\colon M\to N$.

  1. Firstly, we put $f_0=\emptyset$.
  2. Suppose we have $f_n$. Choose an $2n+1$-tuple $(c_1,\ldots,c_{2n+1})$ in $N$ realizing the same type as $(a_1,\ldots,a_n,b_1',\ldots,b_n',a_{n+1})$ in $M$.
  3. By homegeneity of $N$, there is an automorphism $\varphi$ of $N$ which takes $(c_1,\ldots,c_{2n})$ to $(b_1,\ldots,b_n,a_1',\ldots,a_n')$. Put $a_{n+1}'=\varphi(c_{2n+1})$, so we can extend $f_n$ to $f_n'\colon\{a_1,\ldots,a_n,a_{n+1},b_1',\ldots,b_n'\}\to\{b_1,\ldots,b_n,a_1',\ldots,a_n',a_{n+1}'\}$.
  4. By the same method as in the previous step, we can find $b_{n+1}'\in M$ which will allow us to extend $f_n'$ to $f_{n+1}$ and we're done.


I only now noticed the second question you've asked. Essentially the same argument can be used for homogeneous structures of the same cardinality, only we use instead transfinite recursion to construct $f$, and more care must be taken in step 2, that is, you need to show that for each cardinal $\kappa<\lvert M\rvert=\lvert N\rvert$, $M$ and $N$ realize the same $\emptyset$-types of $\kappa$ variables (not just for finite $\kappa$).

But to do this, notice that the a slight modification of the same argument shows that if two models are $\kappa$-homogeneous, and realize the same types of $<\kappa$ variables, then they realize the same types of $\kappa$ variables, so the above can be shown by simple induction. The technical details should be easy, if not, ask in a comment.

share|cite|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.