I'm reading section 6.1 (Determinants) of the book Fundamentals of Computer Graphics (5th Ed), in regards to the definition of the determinant:
\begin{align} |\textbf{ab}| &= |(x_a \textbf{x} + y_a \textbf{y})(x_b \textbf{x} + y_b \textbf{y})|\\ &= x_a x_b|\textbf{xx}| + x_a y_b |\textbf{xy}| + y_a x_b|\textbf{yx}| + y_a y_b|\textbf{yy}| \end{align}
where the following have been declared beforehand:
$$|(k \textbf{a})\textbf{b}| = |\textbf{a}(k \textbf{b})| = k|\textbf{ab}|$$ $$|(\textbf{a}+k \textbf{b})\textbf{b}| = |\textbf{a}(\textbf{b} + k\textbf{a})| = |\textbf{ab}|$$ $$| \textbf{a}(\textbf{b} + \textbf{c})| = |\textbf{ab}| + |\textbf{ac}|$$
First, I don't know how it's legal to just multiply out the two vectors $ \textbf{a}$ and $ \textbf{b}$ like that inside a determinant, but more importantly, even if I assume that, I get
\begin{align} |\textbf{ab}| &= |(x_a \textbf{x} + y_a \textbf{y})(x_b \textbf{x} + y_b \textbf{y})|\\ &= |x_a x_b\textbf{xx} + x_a y_b \textbf{xy} + y_a x_b\textbf{yx} + y_a y_b\textbf{yy}| \end{align}
but it seems like I'd need something like: $$|\textbf{ab} + \textbf{ac}| = |\textbf{ab}| + |\textbf{ac}|$$
to be able to get to that second line with the individual $|\textbf{xx}|$ type terms. Am I just missing something here?
UPDATE:
I finally figured out why this is ok, but wanted to leave accepted answer below as it has useful info. Anyway, for posterity, here it is. We'll need both \begin{align} |\textbf{a}(\textbf{b} + \textbf{c})| &= |\textbf{ab}| + |\textbf{ac}| \end{align} and \begin{align} |(\textbf{b} + \textbf{c})\textbf{a}| = |\textbf{ba}| + |\textbf{ca}| \end{align} in addition to the first identity above in the original post. Figure 6.5 of the text shows the geometry behind both of these for intuition. Then, let \begin{align*} \textbf{a} &= (x_a \textbf{x} + y_a \textbf{y}) \\ \textbf{b} &= x_b \textbf{x} \\ \textbf{c} &= y_b \textbf{y} \end{align*} so that, applying (1) followed by (2), we have \begin{align*} |(x_a \textbf{x} + y_a \textbf{y})(x_b \textbf{x} + y_b \textbf{y})| &= |\textbf{a}(\textbf{b} + \textbf{c})| \\ &= |(x_a \textbf{x} + y_a \textbf{y})x_b \textbf{x}| + |(x_a \textbf{x} + y_a \textbf{y})y_b \textbf{y}| \\ &= |x_a x_b \textbf{xx}| + |y_a x_b \textbf{yx}| + |x_a y_b \textbf{xy}| + |y_a y_b \textbf{yy}| \\ &= x_a x_b |\textbf{xx}| + x_a y_b |\textbf{xy}| + y_a x_b |\textbf{yx}| + y_a y_b |\textbf{yy}| \end{align*} where we used the first identity $|(k \textbf{a})\textbf{b}| = k|\textbf{ab}|$ to pull out the coefficients. This is nice because we're not using e.g. FOIL for "multiplying out the two vectors" as I had originally supposed (even though it looks like that). All we're doing is just applying identities.