# Is there an easy way to compute the determinant of this block matrix?

$$M = \begin{bmatrix} X & \begin{bmatrix} I\\I\\-I\\-I\end{bmatrix}\\ \begin{bmatrix}-I&-I&I&I\end{bmatrix}&O\end{bmatrix}$$

Is there an easy way to compute the determinant of the block matrix above? Or, at least, can I know if $\det (M) > 0$ if $X$ is positive definite?

$X$ is, for example, an $8 \times 8$ matrix while $I$ is the $2 \times 2$ identity and $O$ is the the $2 \times 2$ zero matrix.

• Did you try a few examples to check if it could even possibly give something reasonable? I suspect it might not be a nice function of $\det(X)$ simply because if you rescale $X$, the determinant doesn't seem to follow the usual law. – Cameron Williams Jun 15 '18 at 15:49
• I tried to reduce the determinant knowing that $I$ is the identity, but I got $16$ determinants in order to eliminate the 2 last columns – GuadalupeAnimation Jun 15 '18 at 15:52
• Try a 4 x 4 example first instead of 8 x 8. Then $I=1$. – Cameron Williams Jun 15 '18 at 15:53

$$\mathrm M := \left[\begin{array}{c|c} \,\mathrm X & \mathrm C\\ \hline -\mathrm C^\top & \,\,\mathrm O_2\end{array}\right]$$

where $n \times n$ matrix $\rm X$ is positive definite and, thus, invertible. Using Gaussian elimination,

$$\left[\begin{array}{c|c} \mathrm I_n & \mathrm O_{n \times 2}\\ \hline \mathrm C^\top \mathrm X^{-1} & \mathrm I_2\end{array}\right] \left[\begin{array}{c|c} \,\mathrm X & \mathrm C\\ \hline -\mathrm C^\top & \,\,\mathrm O_2\end{array}\right] = \left[\begin{array}{c|c} \mathrm X & \mathrm C\\ \hline \quad\mathrm O_{2 \times n} & \,\,\mathrm C^\top \mathrm X^{-1} \mathrm C\end{array}\right]$$

Since the determinant of a block triangular matrix is the product of the determinants of the diagonal blocks,

$$\det (\mathrm M) = \det (\mathrm X) \cdot \det \Big(\mathrm C^\top \mathrm X^{-1} \mathrm C \Big)$$

where the Schur complement $\mathrm C^\top \mathrm X^{-1} \mathrm C$ is a $2 \times 2$ matrix (whose determinant is easy to compute). Note that $\det (\mathrm X) > 0$ and that $n \times 2$ matrix $\mathrm X^{-1} \mathrm C$ can be computed using Gaussian elimination.

Using SymPy to verify:

>>> from sympy import *
>>> n = Symbol('n', integer=True)
>>> X = MatrixSymbol('X',n,n)
>>> C = MatrixSymbol('C',n,2)
>>> O = ZeroMatrix(2,2)
>>> M = BlockMatrix([[   X,  C],
[-C.T,  O]])


Building the elimination matrix,

>>> E = BlockMatrix([[     Identity(n), ZeroMatrix(n,2)],
[C.T * Inverse(X),     Identity(2)]])


Performing Gaussian elimination,

>>> block_collapse(E * M)
Matrix([[X,         C],
[0, C'*X^-1*C]])

• How you derived this determinant formula? Any source or reasoning? – M. Winter Jun 16 '18 at 7:47
• @M.Winter The determinant of $\rm M$ is the product of the determinant of $\rm X$ (which is positive) and the determinant of the Schur complement of $\rm X$. – Rodrigo de Azevedo Jun 16 '18 at 8:00
• i mean yes, this is what the formula says, but what is the reason that this is true? Can you give a proof or at least a reference? – M. Winter Jun 16 '18 at 8:03
• @M.Winter I updated my answer. – Rodrigo de Azevedo Jun 16 '18 at 9:20