Solution (source code)

= Solution

The embedded $SU(3)$ acts on the first three coordinates and fixes the fourth. This immediately gives the <branching rules>
$$
\boxed{\mathbf4\downarrow SU(3)=\mathbf3\oplus\mathbf1,\qquad
\bar{\mathbf4}\downarrow SU(3)=\bar{\mathbf3}\oplus\mathbf1.}
$$
Distribute the <tensor product of group representations> over these <direct sums> and split $\mathbf3\otimes\bar{\mathbf3}=\mathbf8\oplus\mathbf1$ by taking the <trace>:
$$
\boxed{(\mathbf4\otimes\bar{\mathbf4})\downarrow SU(3)
=\mathbf8\oplus\mathbf3\oplus\bar{\mathbf3}\oplus\mathbf1\oplus\mathbf1.}
$$
One can locate every summand using the block <matrix>
$$
M=\begin{pmatrix}A&b\\c&d\end{pmatrix}
\longmapsto
\begin{pmatrix}U_3AU_3^\dagger&U_3b\\cU_3^\dagger&d\end{pmatrix}.
$$
The traceless part of $A$ is $\mathbf8$, $b$ is $\mathbf3$, $c$ is $\bar{\mathbf3}$, and $\operatorname{tr}A,d$ are independent <trivial representations>. Removing the overall <trace> instead gives $\mathbf{15}\downarrow SU(3)=\mathbf8\oplus\mathbf3\oplus\bar{\mathbf3}\oplus\mathbf1$. The dimension check is $16=8+3+3+1+1$.