For countable models, elementary equivalence is not equivalent to isomorphism.
For example, let $\frak{A}= \omega+\Bbb{Z}\*\omega$ and $\frak{B}= \omega+\Bbb{Z}\*\omega^\*$ ($ω^∗$ is the reverse of $ω$). Then $\frak{A}\equiv\frak{B}$ but $\frak{A}\not\cong\frak{B}$ for $\frak{A}$ and $\frak{B}$ are not atomic. (For two countable atomic models if $\frak{A}\equiv\frak{B}$, then $\frak{A}\cong\frak{B}$.)


I am not sure how to prove $\frak{A}\equiv\frak{B}$ exactly even though I know Ehrenfeucht–Fraïssé game can do it. Also, I am not sure how to prove they are not atomic.


*Note:* This question has been posted on the Math StackExchange website, but can not get an answer.



Need proof on a model being elementarily equivalent but non-isomorphic
To show that the models are not isomorphic assume an isomorphism $f:\frak{A}\to\frak{B}$, take $(a\_n)\_{n\in\omega}$ be an increasing sequence such $a\_i,a\_j$ are from a different copy of $\Bbb Z$ for each $i\ne j$.


Now look at $f(a\_i),f(a\_j)$. If they are from the same copy of $\Bbb Z$ then there exists some natural number $n$ that is their difference, and so there is a first order formula that represent this ("There exists exactly $n-1$ different elements that are between $f(a\_i)$ and $f(a\_j)$), because $f$ is an isomorphism it would imply that there is exactly $n-1$ elements between $a\_i,a\_j$ which is a contradiction.


Now for each $a\_i$ let $b\_i$ be the unique $k\in\omega^\*$ such that $f(a\_i)∈{\Bbb Z}×\{k\}$, this result with $(b\_i)\_{i\in\omega}$ being an increasing sequence in $ω^\*$, contradiction.




---


To see that they are elementary equivalent we want to look at the EF game of length $n$, $G\_n(\frak A,B)$.


When the Spoiler pick an element from $ω$ of one of the structures, the Duplicator will choose the same element from $\omega$ in the other one.


Next if the Spoiler choose an element not from $\frak A\setminus\omega$, then the Duplicator will choose any element from ${\Bbb Z}×\{-n^n\}$ in $\frak B$, and dually if the Spoiler choose from $\frak B\setminus\omega$.


Next if the Spoiler chooses an element that is a finite distance from a chosen element, the Duplicator will just duplicate this distance with the corresponded element in the other model.


If the Spoiler chooses a new $\Bbb Z$, the Duplicator will duplicate the $\Bbb Z$ but will cap the distance between the index of the chosen $\Bbb Z$ to the index of existing chosen indexes to have $k^k$ where $k$ is the number of steps left to the game. This will leave enough room to full out any kind of structure the Spoiler will try to create.




---


To see that they are not atomic, let for each natural $n$ $φ\_n(x)$ be "$x$ is at least $n$" and let $τ(x)$ be the partial type consistent of all $\phi\_n$. Note that for each $a\in\frak A$ we have $a\notin ω⇔τ(a)$, in particular $τ⊆\operatorname{tp}(a)$.


Now let $ψ(x)$ be any formula (that does not contain $z\ne z$ for some variable $z$), $ψ(x)$ can only describe what kind of finite linear orders exists/don't exists bellow $x$ and what kind of finite linear orders above $x$ and the distance of those orders from $x$ *if it is finite* and their distance from $0$ *if it is finite*


We don't care about what happens above $x$ because the end segment of $a$ and the end segment of $b$ are isomorphic for all $a,b$.


Now take some $a\notin ω$ and assume that $\operatorname{tp}(a)$ is isolated by $ψ(x)$. Note that any finite linear order exists bellow $a$, in particular $ψ(x)$ only describe what kind of orders **do** exists bellow $x$ and the distance of those orders if it is finite.


Take a natural number $m$ that is bigger than the sum of the length of the orders that $ψ$ describe plus the distance from $x$ of those orders plus the distance from $0$ of those orders, and any element $b∈ω\setminus m$ will satisfy $ψ$, in particular $ψ(x)\;\not\!\!\!\implies φ\_b(x)$ and hence does not isolate $\operatorname{tp}(a)$


