I'm trying to wok out the proof that a homomorphism, $f: G \to H$ maps the identity in one group to the identity in another. Several other answers provide an explanation for this, but there is one step I am confused on and haven't been able to find by browsing past answers. It's likely that I'm misunderstanding the justification for drawing on the inverse of $f$ and the logic which follows.
starting with the standard property of homorphisms, $f(g_1 * g_2) = f(g_1) \oplus f(g_2)$, taking $*$ to be the binary operation in $G$, $\oplus$ to the binary operation in $H$, and $g_1, g_2 \in G$.
From here, the proof lets $g_1 = g_2 = e_g$, where $e_g$ is the identity of the group, $G$, which implies that $f(e_g * e_g) = f(e_g) * f(e_g)$, so $f(e_g) = f(e_g) * f(e_g)$.
Then, we multiply on the left by $\left(f(e_g)\right)^{-1}$, which should cause this to simplfiy to the identity on the left and $f(e_g)$ on the right. Here is my confusion:
(a) How do we conclude that such an inverse exists? I believe that a homorphism is by definition bijective and, by extension, invertible, as establishing such a function is necessary to establish that two groups are isomorphic. Is this the argument? Or is there an additional condition specific to the particular groups?
(b) Which binary operation are we applying when we multiply by this inverse? Clearly, $f(e_g) \in H$ by the definition of $f$, which has the operation $\oplus$, but $\left(f(e_g)\right)^{-1} \in G$, which has the operation, $*$. How can we 'mix' operations in this sense between elements of two different groups?
Thanks.
Here's what it should look like: $$ f(e_G) = f(e_G * e_G) = f(e_G) \oplus f(e_G). $$ Ignore the middle term and write $$ e_H \oplus f(e_G) = f(e_G) \oplus f(e_G). $$ Note that all I have done is replace $f(e_G)$ by $e_H \oplus f(e_G)$ which is legal by the identity property of $e_H$. Now operate on the right by $[f(e_G)]^{-1}$ computed in $H$.