Is it true that a full and faithful functor is an embedding iff it reflects identities?

I am currently reading category theory from the book The Joy of Cats. In exercise 3H(d) (page 45) we are required to show that an equivalence is an embedding if and only if it reflects identities (i.e. if $\mathbf{A}$ and $\mathbf{B}$ be two categories and $F:\mathbf{A}\to\mathbf{B}$ be a functor such $F(k)$ is an identity then $k$ must be an identity).

However, I have shown the following,

Theorem. Let $\mathbf{A}$ and $\mathbf{B}$ be two categories and $F:\mathbf{A}\to\mathbf{B}$ be a functor. If $F$ is full and faithful then $F$ is an embedding iff it reflects identities.

Proof. To prove that $F$ is an embedding we need to show that $F$ is injective on morphisms. So let $\require{AMScd} \begin{CD}A @>{f}>> B\end{CD}$ and $\require{AMScd} \begin{CD}C @>{g}>> D\end{CD}$ be two $\mathbf{A}$-morphisms such that $F(f)=F(g)$. Since $F(f)=F(g)$ it follows that $F(A)=F(C)$ and $F(B)=F(D)$. Now consider the $\mathbf{B}$-hom-set $\text{Hom}(F(A),F(C))$ then note that the identity map $\text{id}_{F(A)}\in \text{Hom}(F(A),F(C))$. Hence by Proposition 3.31 (page 35) we conclude that there exists an unique $\mathbf{A}$-morphism $\require{AMScd} \begin{CD}A @>{h}>> C\end{CD}$ such that $F(h)=\text{id}_{F(A)}$. Since $F$ reflects identities, it follows that $h$ must be an identity morphism. Consequently $A=C$. Similarly we can show that $B=D$.

Thus we have, $\require{AMScd} \begin{CD}A @>{f}>> B\end{CD}$ and $\require{AMScd} \begin{CD}A @>{g}>> B\end{CD}$. Consider the following map, $$F|_{\operatorname{Hom}(A,B)}:\operatorname{Hom}(A,B)\to \operatorname{Hom}(F(A),F(B))$$Since $f,g\in \operatorname{Hom}(A,B)$, $F(f)=F(g)$ and $F$ is faithful, it follows that $f=g$. So $F$ is an embedding.

Conversely, let $F$ be a full an faithful functor which is an embedding. Let for some $\mathbf{A}$-morphism $\require{AMScd} \begin{CD}A @>{f}>> B\end{CD}$ there exists some $\mathbf{B}$-object such that $\require{AMScd} \begin{CD}C @>{F(f)}>> C\end{CD}$ is an identity morphism in $\mathbf{B}$. Consequently we have, $$F(A)=C=F(B)$$Since $F$ is embedding and hence injective on objects (Remark 3.28, page 34), it follows that $A=B$. Now onsider the following map, $$F|_{\operatorname{Hom}(A,A)}:\operatorname{Hom}(A,A)\to \operatorname{Hom}(C,C)$$Since $f, \operatorname{id}_{A}\in \operatorname{Hom}(A,A)$, $F(f)=F(\operatorname{id}_{A})$ and $F$ is faithful, it follows that $f=\operatorname{id}_{A}$. So $F$ reflects identities.

Question

Is my proof correct?

• See also this conversation. – user 170039 Jul 13 '18 at 3:23
• Yes, it's correct. $\$ – Berci Jul 13 '18 at 8:23