[step:Show that the elementary diagram is equivalent to elementary embedding]
Assume first that $N \models \operatorname{Diag}_{\mathrm{el}}(M)$. Since every atomic or negated atomic sentence true in $M_M$ is an $L(M)$-sentence true in $M_M$, we have
\begin{align*}
\operatorname{Diag}_{\mathrm{at}}(M) \subseteq \operatorname{Diag}_{\mathrm{el}}(M).
\end{align*}
Thus $N \models \operatorname{Diag}_{\mathrm{at}}(M)$, and the first part of the proof shows that $i: M \to N|_L$ is an $L$-embedding.
Let $\varphi(x_1,\dots,x_n)$ be an $L$-formula and let $(a_1,\dots,a_n) \in M^n$. If
\begin{align*}
M \models \varphi(a_1,\dots,a_n),
\end{align*}
then
\begin{align*}
M_M \models \varphi[c_{a_1},\dots,c_{a_n}].
\end{align*}
So $\varphi[c_{a_1},\dots,c_{a_n}] \in \operatorname{Diag}_{\mathrm{el}}(M)$, and hence
\begin{align*}
N \models \varphi[c_{a_1},\dots,c_{a_n}].
\end{align*}
By the translation equivalence,
\begin{align*}
N|_L \models \varphi(i(a_1),\dots,i(a_n)).
\end{align*}
Conversely, if $M \not\models \varphi(a_1,\dots,a_n)$, then
\begin{align*}
M_M \models \neg \varphi[c_{a_1},\dots,c_{a_n}].
\end{align*}
Since $\neg \varphi[c_{a_1},\dots,c_{a_n}]$ belongs to $\operatorname{Diag}_{\mathrm{el}}(M)$, we get
\begin{align*}
N \models \neg \varphi[c_{a_1},\dots,c_{a_n}],
\end{align*}
and therefore
\begin{align*}
N|_L \not\models \varphi(i(a_1),\dots,i(a_n)).
\end{align*}
Hence, for every $L$-formula $\varphi(x_1,\dots,x_n)$ and every tuple $(a_1,\dots,a_n) \in M^n$,
\begin{align*}
M \models \varphi(a_1,\dots,a_n)
\quad\Longleftrightarrow\quad
N|_L \models \varphi(i(a_1),\dots,i(a_n)).
\end{align*}
Thus $i$ is an elementary $L$-embedding.
Conversely, assume that $i: M \to N|_L$ is an elementary $L$-embedding. Let $\sigma$ be an $L(M)$-sentence true in $M_M$. Since $\sigma$ contains only finitely many added constant symbols, choose $a_1,\dots,a_n \in M$ such that every added constant symbol occurring in $\sigma$ is among $c_{a_1},\dots,c_{a_n}$. There is an $L$-formula $\varphi(x_1,\dots,x_n)$ such that
\begin{align*}
\sigma = \varphi[c_{a_1},\dots,c_{a_n}].
\end{align*}
Since $M_M \models \sigma$, the translation equivalence gives
\begin{align*}
M \models \varphi(a_1,\dots,a_n).
\end{align*}
Because $i$ is elementary,
\begin{align*}
N|_L \models \varphi(i(a_1),\dots,i(a_n)).
\end{align*}
Applying the translation equivalence again,
\begin{align*}
N \models \varphi[c_{a_1},\dots,c_{a_n}].
\end{align*}
Since this sentence is $\sigma$, we have $N \models \sigma$. Therefore every sentence in $\operatorname{Diag}_{\mathrm{el}}(M)$ is true in $N$, so
\begin{align*}
N \models \operatorname{Diag}_{\mathrm{el}}(M).
\end{align*}
This proves the equivalence between elementary embedding and satisfaction of the elementary diagram.
[/step]