2.2 Evaluating Determinants by Row Reduction
In the previous section, we learned about cofactor expansion. While conceptually important, it becomes computationally intensive for large matrices.
We start with two fundamental theorems.
If a square matrix \(A\) has a row of zeros or a column of zeros, then \(\operatorname *{det}(A) = 0\).
Proof sketch: We can find the determinant by a cofactor expansion along the row or column of zeros. Since every entry in that row or column is zero, each term in the expansion \(a_{ij}C_{ij}\) will be zero. \[ \operatorname *{det}(A) = 0 \cdot C_1 + 0 \cdot C_2 + \dots + 0 \cdot C_n = 0 \]
Let \(A\) be a square matrix. Then \(\operatorname *{det}(A) = \operatorname *{det}(A^T)\).
Proof sketch: Transposing a matrix swaps its rows and columns. A cofactor expansion of \(A\) along any row is equivalent to a cofactor expansion of \(A^T\) along the corresponding column. Thus, their determinants are the same.
Elementary row operations (EROs) are the backbone of Gaussian elimination. They systematically transform a matrix. How do they affect the determinant?
Let \(A\) be an \(n \times n\) matrix.
If \(B\) is formed by multiplying a single row (or column) of \(A\) by a scalar \(k\), then \(\operatorname{det}(B) = k \operatorname{det}(A)\).
Recall that an elementary matrix \(E\) is formed by performing a single ERO on the identity matrix \(I_n\). Theorem 2.2.3 has a special case for \(A = I_n\).
Let \(E\) be an \(n \times n\) elementary matrix.
If \(E\) results from multiplying a row of \(I_n\) by a nonzero scalar \(k\), then \(\operatorname{det}(E) = k\).
If \(E\) results from interchanging two rows of \(I_n\), then \(\operatorname{det}(E) = -1\).
If \(E\) results from adding a multiple of one row of \(I_n\) to another, then \(\operatorname{det}(E) = 1\).
Observation: The determinant of an elementary matrix can never be zero.
\[ E_1 = {\left|\begin{array}{llll}{1}&{0}&{0}&{0}\\ {0}&{\bf{3}}&{0}&{0}\\ {0}&{0}&{1}&{0}\\ {0}&{0}&{0}&{1}\end{array}\right|}=3 \quad \text{(Row 2 of } I_4 \text{ multiplied by 3)} \] \[ E_2 = {\left|\begin{array}{llll}{0}&{0}&{0}&{\bf{1}}\\ {0}&{1}&{0}&{0}\\ {0}&{0}&{1}&{0}\\ {\bf{1}}&{0}&{0}&{0}\end{array}\right|}=-1 \quad \text{(Row 1 and Row 4 of } I_4 \text{ interchanged)} \] \[ E_3 = {\left|\begin{array}{llll}{1}&{0}&{0}&{\bf{7}}\\ {0}&{1}&{0}&{0}\\ {0}&{0}&{1}&{0}\\ {0}&{0}&{0}&{1}\end{array}\right|}=1 \quad \text{(7 times Row 4 of } I_4 \text{ added to Row 1)} \]
Let’s compute the determinant of some elementary matrices using Pyodide to confirm Theorem 2.2.4.
This is another shortcut for finding zero determinants.
If \(A\) is a square matrix with two proportional rows or two proportional columns, then \(\det(A) = 0\).
Proof sketch:
If a matrix \(A\) has two proportional rows (e.g., row \(i = k \cdot\) row \(j\)), we can perform an ERO of type (c) (adding a multiple of one row to another) to create a row of zeros.
For example, add \(-k\) times row \(j\) to row \(i\). This operation does not change the determinant (Theorem 2.2.3c). Since the resulting matrix now has a row of zeros, its determinant is 0 (Theorem 2.2.1).
Therefore, \(\det(A)=0\).
Each of the following matrices has a determinant of zero because they have proportional rows or columns:
\[ {\left[\begin{array}{l l}{-1}&{4}\\ {-2}&{8}\end{array}\right]} \quad (\text{Row 2} = 2 \times \text{Row 1}) \]
\[ {\left[\begin{array}{l l l}{1}&{-2}&{7}\\ {-4}&{8}&{5}\\ {2}&{-4}&{3}\end{array}\right]} \quad (\text{Col 2} = -2 \times \text{Col 1}) \]
\[ {\left[\begin{array}{l l l l}{3}&{-1}&{4}&{-5}\\ {6}&{-2}&{5}&{2}\\ {5}&{8}&{1}&{4}\\ {-9}&{3}&{-12}&{15}\end{array}\right]} \quad (\text{Row 4} = -3 \times \text{Row 1}) \]
The strategy is:
Reduce to Triangular Form: Use elementary row operations to transform the given matrix \(A\) into a row echelon form \(U\) (which is always upper triangular).
Keep Track of Changes: As you perform EROs, record how each operation affects the determinant according to Theorem 2.2.3.
Compute \(\operatorname{det}(U)\): Since \(U\) is triangular, \(\operatorname{det}(U)\) is simply the product of its diagonal entries (Theorem 2.1.2).
Relate Back to \(\operatorname{det}(A)\): Use the accumulated factors from step 2 to find \(\operatorname{det}(A)\).
This method is generally much faster than cofactor expansion for large matrices, as it converts the problem into one of simple diagonal multiplication after reduction.
Evaluate \(\det(A)\) where \[ A = \left[ \begin{array}{ccc}0 & 1 & 5 \\ 3 & -6 & 9 \\ 2 & 6 & 1 \end{array} \right] \]
Solution:
\[ \det(A) = - \left| \begin{array}{ccc}3 & -6 & 9 \\ 0 & 1 & 5 \\ 2 & 6 & 1 \end{array} \right| \]
(multiply by -1 for row swap)
\[ = -3 \left| \begin{array}{ccc}1 & -2 & 3 \\ 0 & 1 & 5 \\ 2 & 6 & 1 \end{array} \right| \]
(factor out 3)
\[ = -3 \left| \begin{array}{ccc}1 & -2 & 3 \\ 0 & 1 & 5 \\ 0 & 10 & -5 \end{array} \right| \]
(no change to determinant)
\[ = -3 \left| \begin{array}{ccc}1 & -2 & 3 \\ 0 & 1 & 5 \\ 0 & 0 & -55 \end{array} \right| \]
(no change to determinant)
\[ = (-3)(-55) \left| \begin{array}{ccc}1 & -2 & 3 \\ 0 & 1 & 5 \\ 0 & 0 & 1 \end{array} \right| \]
(factor out -55)
\(\operatorname *{det}(A) = (-3)(-55) \cdot (1 \cdot 1 \cdot 1) = 165 \cdot 1 = 165\).
Let’s verify the result of Example 3 using Pyodide (Numpy linalg.det).
Remember Theorem 2.2.2 stated \(\det(A) = \det(A^T)\), meaning rules for row operations also apply to column operations. We can strategically use column operations to simplify the matrix.
Compute the determinant of \[ A = {\left[ \begin{array}{llll}{1} & 0 & 0 & 3\\ 2 & 7 & 0 & 6\\ 0 & 6 & 3 & 0\\ 7 & 3 & 1 & {-5} \end{array} \right]} \]
Solution: We can put \(A\) into a lower triangular form (another type of triangular matrix, for which Theorem 2.1.2 applies) in one step by a column operation.
Let’s quickly verify the result from Example 4.
For larger matrices, a hybrid approach combining row operations with cofactor expansion can be highly effective:
Evaluate \(\det(A)\) where \[ A={\left[\begin{array}{llll}{3}&{5}&{-2}&{6}\\ {1}&{2}&{-1}&{1}\\ {2}&{4}&{1}&{5}\\ {3}&{7}&{5}&{3}\end{array}\right]} \]
Solution: We target row 2 to introduce zeros efficiently because its first entry is 1.
These operations do not change the determinant: \[ \operatorname *{det}(A) = {\left| \begin{array}{rrrr}{0} & {-1} & 1 & 3\\ 1 & 2 & {-1} & 1\\ {0} & {0} & 3 & 3\\ {0} & 1 & 8 & 0 \end{array} \right|} \] Now, expand along the first column. Only \(a_{21}=1\) is non-zero. \(\operatorname *{det}(A) = a_{21}C_{21} = 1 \cdot (-1)^{2+1}M_{21} = -M_{21}\) \[ = - \operatorname{det}\left| \begin{array}{ccc} -1 & 1 & 3 \\ 0 & 3 & 3 \\ 1 & 8 & 0 \end{array} \right| \]
Now, we can expand this \(3 \times 3\) determinant, e.g., along its first column: \[ = - [ (-1) \cdot \operatorname{det}\left| \begin{array}{cc}3 & 3 \\ 8 & 0 \end{array} \right| - (0)C_{21} + (1) \cdot \operatorname{det}\left| \begin{array}{cc}1 & 3 \\ 3 & 3 \end{array} \right| ] \] \[ = - [ (-1)((3)(0) - (3)(8)) + ((1)(3) - (3)(3)) ] \] \[ = - [ (-1)(-24) + (3 - 9) ] \] \[ = - [ 24 - 6 ] = - [18] = -18 \]
Confirm the determinant of the matrix from Example 5.