# Flaw in a proof of uniqueness of products in a category?

I previously thought I knew a proof of the unique "upto unique isomorphism" of the product in a category. I was recently presented with a more complicated proof in a textbook. I am therefore left to wonder whether my "simpler" proof is somehow subtly wrong.

A product of $$A$$ and $$B$$ in a category $$C$$ is a 3 tuple $$(P \in C, \pi^p_a \in Hom(P, A), \pi^p_b \in Hom(P, B))$$ such that for any other 3-tuple ($$Q \in C, \pi^q_a \in Hom(Q, A), \pi^q_b \in Hom(Q, B))$$, we have a unique morphism $$q2p: Hom(Q, P)$$ such that $$\pi^q_a = \pi^p_a \circ q2p$$, and $$\pi^q_b = \pi^p_b \circ q2p$$.

Now, we wish to show that given two products $$K, L$$ of $$A$$ and $$B$$, that there is a unique isomorphism between $$K$$ and $$L$$. That is, we have two maps $$k2l \in Hom(K, L)$$ and $$l2k \in Hom(l, k)$$ such that $$k2l \circ l2k = id_l$$ and $$l2k \circ k2l = id_k$$.

I thought the proof of uniqueness of the product goes like this:

1. Assume we have two candidates for the product of $$A$$ and $$B$$, namely, $$(A \times B, pr_1, pr_2)$$, and $$(A \otimes B, pr'_1, pr'_2)$$.
2. By the universal property of $$A \times B$$, we have a unique map $$k \in Hom(A \otimes B, A \times B)$$ such that $$pr'_1 = pr_1 \circ k$$, $$pr'_2 = pr_2 \circ k$$.
3. Similarly, by the universal property of $$A \otimes B$$, we have a unique map $$l \in Hom(A \times B, A \otimes B)$$ such that $$pr_1 = pr'_1 \circ l$$, $$pr_2 = pr'_2 \circ l$$
4. These together give us a map $$k \circ l \in Hom(A \times B, A \times B)$$ which behaves like the identity element: $$pr_1 \circ id = pr_1 = pr_2 \circ (k \circ l)$$, and similarly $$pr_2 \circ id = pr_2 = pr_2 \circ (k \circ l)$$
5. By the uniqueness of identity, we have that $$id_{A \times B} = k \circ l$$.

Rather, the trusted proof of product that I have seen changes at the 5th step. It proceeds as:

1. We now apply the universal property a third time with $$A \times B$$ on $$A \times B$$, telling us that there exists a unique map $$h \in Hom(A \times B, A \times B)$$ such that $$pr_1 = pr_1 \circ h$$, $$pr_2 = pr_2 \circ h$$.
2. We have two such candidates for such an $$h$$: $$id_{A \times B}$$ and $$k \circ l$$. But since $$h$$ is unique, we have that $$id_{A \times B} = k \circ l$$.

I am confused as to why we cannot conclude the proof the way I do. As I see it, since all the maps $$k, l, id_{A \times B}$$ are unique, they must coincide?

I suppose the flaw with my argument is that I only know that $$k \circ l$$ agrees with $$id_{A \times B}$$ at $$pr_1$$ and $$pr_2$$. There maybe other morphisms in $$Hom(A \times B, A \times B)$$ where $$id_{A \times B}$$ and $$k \circ l$$ may not agree. Is my identification of the error correct?

To check that $$k\circ l$$ "behaves like the identity element", one had to show that $$k\circ l$$ is a neutral element w.r.t. to every morphism coming from or to $$A\times B$$.
In your proof, you showed that $$k\circ l$$ is a neutral element from the right w.r.t. $$pr_1,pr_2$$, which isn't enough for your claim. However, as pointed out by your trusted proof, there is only one such morphism behaving as a right identity for $$pr_1,pr_2$$, so $$k\circ l = id_{A\times B}$$.