existence of homomorphisms between free products of groups If there exists a homomorphism $f: A \rightarrow B$ between two groups $A$ and $B$, and a homomorphism $g: C \rightarrow D$ between two groups $C$ and $D$, then will there exist a homomorphism $h: A*C \rightarrow B*D$ between the free products $A*C$ and $B*D$?
 A: I assume your definition of the free product $A \ast C$ of $A$ and $C$ is the following: It is a group $G$ together with two homomorphisms $i_{A}: A \to G$ and $i_{C}: C \to G$ such that for every pair of homomorphisms $k: A \to H$ and $l: C \to H$ there is a unique homomorphisms $m: G \to H$ such that $mi_{A} = k$ and $mi_{C} = l$.
By definition of the free product we have homomorphisms $i_B : B \to B \ast D$ and $i_{D}: D \to B \ast D$. Now apply the defining property of $A \ast C$ and the inclusions $i_{A} : A \to A \ast C$ and $i_{C}: C \to A \ast C$ to the homomorphisms $i_B f$ and $i_D g$ to get a unique homomorphism $h: A \ast C \to B \ast D$ such that $hi_{A} = i_B f$ and $hi_{C} = i_D g$. The last two properties are crucial in ensuring that $h$ is unique and has anything to do with $f$ and $g$.
A: Theo's answer using the universal property of the free product is the more elegant one, but if you want to work with the construction of the free group as the group of reduced words in the group elements, a concrete homomorphism is given by the function $h$ that maps a reduced word by mapping each letter using $f$ or $g$ according as the letter is in $A$ or $B$.
The letters meeting at the ends of a product of reduced words can either be from the same group or from different groups. If they're from different groups, the homomorphism property of $h$ is trivial, and we don't actually need the homomorphism properties of $f$ and $g$ to prove it:
$$\begin{eqnarray}
h((\ldots a_1c_1)(a_2c_2\ldots))&=&h(\ldots a_1c_1a_2c_2\ldots)\\\
&=&\ldots f(a_1)g(c_1)f(a_2)g(c_2)\ldots\\\
&=&(\ldots f(a_1)g(c_1))(f(a_2)g(c_2)\ldots)\\\
&=&h(\ldots a_1c_1)h(a_2c_2\ldots)\;.
\end{eqnarray}$$
If the letters meeting at the ends are from the same group, say, $C$, and their product isn't the identity, we only need one invocation of the homomorphism property of $g$ to prove the homomorphism property of $h$:
$$\begin{eqnarray}
h((\ldots a_1c_1)(c_2a_2\ldots))&=&h(\ldots a_1(c_1c_2)a_2\ldots)\\\
&=&\ldots f(a_1)g(c_1c_2)f(a_2)\ldots\\\
&=&\ldots f(a_1)g(c_1)g(c_2)f(a_2)\ldots\\\
&=&(\ldots f(a_1)g(c_1))(g(c_2)f(a_2)\ldots)\\\
&=&h(\ldots a_1c_1)h(c_2a_2\ldots)\;.
\end{eqnarray}$$
Now we can use this as a basis for induction, assuming that the homomorphism property holds if $n$ products at the meeting point resolve to the identity, and concluding that it holds if one more product, say $c_1c_2$, resolves to the identity:
$$\begin{eqnarray}
h((\ldots a_1c_1)(c_2a_2\ldots))&=&h((\ldots a_1)(a_2\ldots))\\\
&=&h(\ldots a_1)h(a_2\ldots)\\\
&=&h(\ldots a_1)g(c_1c_2)h(a_2\ldots)\\\
&=&h(\ldots a_1)g(c_1)g(c_2)h(a_2\ldots)\\\
&=&h(\ldots a_1c_1)h(c_2a_2\ldots)\;.
\end{eqnarray}$$
