Computing the determinant of a large matrix?

As mentioned in the comments above, row reduction can take you a long way. Each step in the row reduction process will change the determinant in a predefined fashion (e.g. swapping rows will multiply the determinant by negative one, adding two rows together won't change the determinant at all, etc...).

If going through the whole row reduction process is too tedious, you might try your luck at spotting whether any rows are linear combinations of others or if any columns are linear combinations of the others. If they are, then use what you know about invertible versus noninvertible matrices.

For your matrix, the second column plus the fifth column is equal to the fourth column.


You can use Laplace's expansion of the determinant.

More precisely, begin expanding by the last row, then some row manipulation and expanding by convenient rows/columns ends up in a $2\times2$ determinant: \begin{align} \begin{vmatrix} 0&0&1&1&1&1 \\ 1&0&0&0&0&1 \\ 1&0&1&1&1&1 \\ 0&1&1&1&0&1 \\ 0&1&0&1&0&0 \\ 0&0&\color{red}1&0&0&0\end{vmatrix}&= -\begin{vmatrix} 0&0&1&1&1 \\ 1&0&0&0&1 \\ 1&0&1&1&1 \\ 0&1&1&0&1 \\ 0&1&1&0&0\end{vmatrix}= -\begin{vmatrix} 0&0&1&1&1 \\ 1&0&0&0&1 \\ 1&0&1&1&1 \\ 0&0&0&0&\color{red}1 \\ 0&1&1&0&0\end{vmatrix}= +\begin{vmatrix} 0&0&1&1 \\ \color{red}1&0&0&0 \\ 1&0&1&1 \\ 0&1&1&0 \end{vmatrix}\\ &=-\begin{vmatrix} 0&1&1 \\ 0&1&1 \\ \color{red}1&1&0 \end{vmatrix}=-\begin{vmatrix} 1&1 \\ 1&1 \end{vmatrix}=0. \end{align}


While it is true that the determinant is zero and one can detect it, let me give a way to calculate the determinant without any clever observations. This idea will work in great generality, not relying on the structure of your specific example. Having a lot of zeroes makes it easier.

You can use row or column operations, and I have chosen rows. I always deduct the green row from the red one: $$ \begin{split} & \det\begin{pmatrix} 0&0&1&1&1&1 \\ \color{green}1&\color{green}0&\color{green}0&\color{green}0&\color{green}0&\color{green}1 \\ \color{red}1&\color{red}0&\color{red}1&\color{red}1&\color{red}1&\color{red}1 \\ 0&1&1&1&0&1 \\ 0&1&0&1&0&0 \\ 0&0&1&0&0&0 \end{pmatrix} \\=& \det\begin{pmatrix} 0&0&1&1&1&1 \\ 1&0&0&0&0&1 \\ 0&0&1&1&1&0 \\ \color{red}0&\color{red}1&\color{red}1&\color{red}1&\color{red}0&\color{red}1 \\ \color{green}0&\color{green}1&\color{green}0&\color{green}1&\color{green}0&\color{green}0 \\ 0&0&1&0&0&0 \end{pmatrix} \\=& \det\begin{pmatrix} \color{red}0&\color{red}0&\color{red}1&\color{red}1&\color{red}1&\color{red}1 \\ 1&0&0&0&0&1 \\ \color{red}0&\color{red}0&\color{red}1&\color{red}1&\color{red}1&\color{red}0 \\ \color{red}0&\color{red}0&\color{red}1&\color{red}0&\color{red}0&\color{red}1 \\ 0&1&0&1&0&0 \\ \color{green}0&\color{green}0&\color{green}1&\color{green}0&\color{green}0&\color{green}0 \end{pmatrix} \\=& \det\begin{pmatrix} \color{red}0&\color{red}0&\color{red}0&\color{red}1&\color{red}1&\color{red}1 \\ 1&0&0&0&0&1 \\ \color{green}0&\color{green}0&\color{green}0&\color{green}1&\color{green}1&\color{green}0 \\ 0&0&0&0&0&1 \\ \color{red}0&\color{red}1&\color{red}0&\color{red}1&\color{red}0&\color{red}0 \\ 0&0&1&0&0&0 \end{pmatrix} \\=& \det\begin{pmatrix} 0&0&0&0&0&1 \\ 1&0&0&0&0&1 \\ 0&0&0&1&1&0 \\ 0&0&0&0&0&1 \\ 0&1&0&0&-1&0 \\ 0&0&1&0&0&0 \end{pmatrix} \end{split} $$ At this point you can start developing the determinant by hand: $$ \begin{split} & \det\begin{pmatrix} 0&0&0&0&0&1 \\ 1&0&0&0&0&1 \\ 0&0&0&1&1&0 \\ 0&0&0&0&0&1 \\ 0&1&0&0&-1&0 \\ 0&0&1&0&0&0 \end{pmatrix} \\=& - \det\begin{pmatrix} 0&0&0&0&1 \\ 0&0&1&1&0 \\ 0&0&0&0&1 \\ 1&0&0&-1&0 \\ 0&1&0&0&0 \end{pmatrix} \\=& + \det\begin{pmatrix} 0&0&0&1 \\ 0&1&1&0 \\ 0&0&0&1 \\ 1&0&0&0 \end{pmatrix} \\=& - \det\begin{pmatrix} 0&0&1 \\ 1&1&0 \\ 0&0&1 \end{pmatrix} \\=& + \det\begin{pmatrix} 0&1 \\ 0&1 \end{pmatrix} \end{split} $$ This last determinant happens to be zero, so the initial determinant is zero. But this method would work perfectly even if the original matrix was in fact invertible.

In more general cases you will also have to multiply the columns and rows suitably. In this special the simplest operations are enough.

Instead of developing the determinant column by column, one can also a column operation and then another row operation: $$ \begin{split} & \det\begin{pmatrix} 0&0&0&\color{green}0&\color{red}0&1 \\ 1&0&0&\color{green}0&\color{red}0&1 \\ 0&0&0&\color{green}1&\color{red}1&0 \\ 0&0&0&\color{green}0&\color{red}0&1 \\ 0&1&0&\color{green}0&\color{red}-1&0 \\ 0&0&1&\color{green}0&\color{red}0&0 \end{pmatrix} \\=& \det\begin{pmatrix} \color{green}0&\color{green}0&\color{green}0&\color{green}0&\color{green}0&\color{green}1 \\ 1&0&0&0&0&1 \\ 0&0&0&1&0&0 \\ \color{red}0&\color{red}0&\color{red}0&\color{red}0&\color{red}0&\color{red}1 \\ 0&1&0&0&-1&0 \\ 0&0&1&0&0&0 \end{pmatrix} \\=& \det\begin{pmatrix} 0&0&0&0&0&1 \\ 1&0&0&0&0&1 \\ 0&0&0&1&0&0 \\ 0&0&0&0&0&0 \\ 0&1&0&0&-1&0 \\ 0&0&1&0&0&0 \end{pmatrix} \end{split} $$ Now one of the rows is zero, so the determinant has to vanish.

There is no unique correct way to go, but I hope the way of approaching this is clearer now.


First, note that row 6 is mostly '$0$'s. Next note the red values in row 2. The non-zero part of the determinant has to go through that $1$, so swap rows 2 and 5, \begin{align} \begin{vmatrix} 0&0&1&1&1&1 \\ 1&\color{red}0&0&\color{red}0&0&1 \\ 1&0&1&1&1&1 \\ 0&1&1&1&0&1 \\ 0&1&0&1&0&0 \\ 0&0&\color{red}1&0&0&0 \end{vmatrix}& = - \begin{vmatrix} 0&0&1&1&1&1 \\ 0&1&0&1&0&0 \\ 1&0&1&1&1&1 \\ 0&1&1&1&0&1 \\ 1&\color{red}0&0&\color{red}0&0&1 \\ \color{red}0&\color{red}0&1&\color{red}0&\color{red}0&\color{red}0 \end{vmatrix}= 0 \end{align} which shows that the determinant is zero.

The column solution is even easier:

\begin{align} \begin{vmatrix} 0&\color{red}0&1&1&1&1 \\ 1&\color{red}0&0&0&0&1 \\ 1&\color{red}0&1&1&1&1 \\ \color{red}0&1&1&1&0&1 \\ \color{red}0&1&\color{red}0&1&0&0 \\ \color{red}0&0&1&0&0&0 \end{vmatrix}& = 0 \end{align}

This is a medium sized matrix at most - to find the determinant for a actual large matrix ($n>100$), look up RRQR.