Let $A \in M_n(\mathbb{R})$ be a matrix and let $P$ be the parallelepiped $A \cdot [0,1]^n$ generated by the columns of $A$. A geometrical criterion of invertibility may be:

Property: $A$ is invertible if and only if $\lambda_n (P) \neq 0$, where $\lambda_n$ is the Lebesgue measure on $\mathbb{R}^n$.

Proof. Let $v_1,\dots,v_n \in \mathbb{R}^n$ be the columns of $A$. Then $\lambda_n(P) =0$ is equivalent to $\mathrm{span}(v_1,\dots,v_n) \subset H$ for some hyperplane $H \subset \mathbb{R}^n$. $\square$

Moreover, it is known in dimension two that $|\det(A)|$ is the area of $P$; in the same way, it can be shown in dimension three that $| \det(A)|$ is the volume of $P$. In fact:

Theorem 1: Let $A \in M_n(\mathbb{R})$ be a matrix. Then $| \det(A) | =\lambda_n(A \cdot [0,1]^n)$.

Before starting the proof, recall that Carathéodory’s extension theorem allows us to define $\lambda_n$ as the unique borelian measure on $\mathbb{R}^n$ satisfying $\lambda_n \left( \prod\limits_{i=1}^n [a_i,b_i] \right) = \prod\limits_{i=1}^n (b_i-a_i)$ for any cube. In particular, it follows the criterion:

Lemma: Let $\mu$ be a borelian measure on $\mathbb{R}^n$. If $\mu$ is translation invariant and finite on compact sets, then there exists $\alpha \in \mathbb{R}$ such that $\mu = \alpha \cdot \lambda_n$.

Proof of theorem 1. If $A$ is not invertible, the theorem follows from the previous property.

For any $A \in GL_n(\mathbb{R})$, let $\mu_A : B \mapsto \lambda_n (A \cdot B)$ be a new borelian measure on $\mathbb{R}^n$. Clearly, $\mu_A$ is translation invariant and finite on compact sets, so $\mu_A= \mu_A([0,1]^n) \cdot \lambda_n$ according to the previous lemma.

• Case 1: Suppose that $A$ is a permutation matrix.

Since $A \cdot [0,1]^n= [0,1]^n$, it follows that $\mu_A([0,1]^n)=1=|\det(A)|$.

• Case 2: Suppose that $A$ is a diagonal matrix, say $A= \mathrm{diag}(a_1,\dots,a_n)$.

Since $A \cdot [0,1]^n = \prod\limits_{i=1}^n I(a_i)$ where $I(a_i) = [0,a_i]$ if $a_i \geq 0$ and $[a_i,0]$ otherwise,

$\displaystyle \mu_A([0,1]^n)= \prod\limits_{i =1}^n |a_i| = |\det(A)|$.

• Case 3: If $A=J:= \left( \begin{matrix} \begin{matrix} 1&0 \\ 1&1 \end{matrix} & 0 \\ 0 & \begin{matrix} 1& & 0 \\ & \ddots & \\ 0 & & 1 \end{matrix} \end{matrix} \right)$.

Here $A \cdot [0,1]^n = D \times [0,1]^{n-2}$ where $D \subset \mathbb{R}^2$ is the parallelogram whose vertices are $(0,0)$, $(1,1)$, $(1,0)$ and $(1,2)$, hence $\mu_A([0,1]^n)= \lambda_2(D) \cdot \lambda_{n-2}([0,1]^{n-2}) = 1= |\det(A)|$.

• Case 4: Consider the general case where $A \in GL_n(\mathbb{R})$.

According to the lemma below, $A$ can be written as a product $S_1 S_2 \dots S_r$ where $S_i$ is either a permutation matrix or a diagonal matrix or $J$. So, using the previous cases:

$\begin{array}{lcl} \mu_A([0,1]^n) & = & \lambda_n(S_1 S_2 \dots S_r \cdot [0,1]^n) \\ \\ & = & \mu_{S_1} (S_2 \dots S_r \cdot [0,1]^n) \\ \\ & =& |\det(S_1)| \cdot \lambda_n(S_2 \dots S_r \cdot [0,1]^n) \\ & \vdots & \\ & = & \displaystyle \lambda_n ([0,1]^n) \cdot \prod\limits_{i=1}^r |\det(S_i) | \\ & = & |\det(A)| \end{array}$

Finally, we deduce that:

$\lambda_n(A \cdot [0,1]^n) = \mu_A([0,1]^n)= |\det(A)|$. $\hspace{1cm} \square$

Lemma: Let $A \in GL_n(\mathbb{R})$. Then there exist $S_1,\dots,S_r \in M_n(\mathbb{R})$ such that $A=S_1\dots S_r$ where $S_i$ is either a permutation matrix or a diagonal matrix or $J$.

Proof. In order to simplify the proof, we consider only the case $n=2$ (writing the proof becomes painful in high dimension; however, the idea is exactly the same).

Let $A= \left( \begin{matrix} a&b \\ c&d \end{matrix} \right) \in GL_2(\mathbb{R})$ be an invertible matrix. We describe below an algorithm to go from $\left( \begin{matrix} 1&0 \\ 0&1 \end{matrix} \right)$ to $A$ by multiplication by either a permutation matrix (operation denoted by $(1)$) or a diagonal matrix (operation denoted by $(2)$) or $J$ (operation denoted by $(3)$):

Suppose that $a \neq 0$. First, we build the first column:

$\begin{array}{lcl} \left( \begin{matrix} 1&0 \\ 0&1 \end{matrix} \right) & \overset{(2)}{\underset{\text{if} \ c \neq 0}{\longrightarrow}} & \left( \begin{matrix} a& 0 \\ 0&c \end{matrix} \right) \overset{(3)}{\longrightarrow} \left( \begin{matrix} a & 0 \\ c & c \end{matrix} \right) \overset{(2)}{\longrightarrow} \left( \begin{matrix} a &0 \\ c & 1 \end{matrix} \right) \\ \\ & \overset{(2)}{\underset{\text{if} \ c=0}{\longrightarrow}} & \left( \begin{matrix} a&0 \\ 0 & 1 \end{matrix} \right) = \left( \begin{matrix} a & 0 \\ c & 1 \end{matrix} \right) \end{array}$

And then the second column:

$\begin{array}{lcl} \left( \begin{matrix} a & 0 \\ c & 1 \end{matrix} \right) & \overset{(2)}{\underset{\text{if} \ b \neq 0}{\longrightarrow}} & \left( \begin{matrix} b & 0 \\ \frac{bc}{a} & d- \frac{bc}{a} \end{matrix} \right) \overset{(1)+(3)}{\longrightarrow} \left( \begin{matrix} b & b \\ d& \frac{bc}{a} \end{matrix} \right) \overset{(2)}{\longrightarrow} \left( \begin{matrix} b & a \\ d& c \end{matrix} \right) \overset{(1)}{\longrightarrow} \left( \begin{matrix} a & b \\ c&d \end{matrix} \right) \\ \\ & \overset{(2)}{\underset{\text{if} \ b =0 }{\longrightarrow}} & \left( \begin{matrix} a & 0 \\ c & d \end{matrix} \right)= \left( \begin{matrix} a&b \\ c&d \end{matrix} \right) \end{array}$

If $a=0$ then $b \neq 0$ because $A$ is invertible. Applying the previous algorithm to $\left( \begin{matrix} b & a \\ d & c \end{matrix} \right)$, we get:

$\left( \begin{matrix} 1&0 \\ 0&1 \end{matrix} \right) \longrightarrow \left( \begin{matrix} b & a \\ d & c \end{matrix} \right) \overset{(1)}{\longrightarrow} \left( \begin{matrix} a & b \\ c & d \end{matrix} \right).$ $\hspace{1cm} \square$

For an explicit example in dimension three, the previous algorithm gives:

$\begin{array}{ll} \left( \begin{matrix} 1&1&0 \\ 0&1&1 \\ 1&0&1 \end{matrix} \right)= & \left( \begin{matrix} 1&0&0 \\ 0&0&1 \\ 0&1&0 \end{matrix} \right) \left( \begin{matrix} 1&0&0 \\ 1&1&0 \\ 0&0&1 \end{matrix} \right) \left( \begin{matrix} 1&0&0 \\ 0&0&1 \\ 0&1&0 \end{matrix} \right) \left( \begin{matrix} 1&0&0 \\ 0&1&0 \\ 0&0&-1 \end{matrix} \right) \left( \begin{matrix} 0&1&0 \\ 1&0&0 \\ 0&0&1 \end{matrix} \right) \left( \begin{matrix} 1&0&0 \\ 1&1&0 \\ 0&0&1 \end{matrix} \right) \left( \begin{matrix} 1&0&0 \\ 0&0&1 \\ 0&1&0 \end{matrix} \right) \left( \begin{matrix} 1&0&0 \\ 1&1&0 \\ 0&0&1 \end{matrix} \right) \\ \\ & \left( \begin{matrix} 0&1&0 \\ 0&0&1 \\ 1&0&0 \end{matrix} \right) \left( \begin{matrix} -1&0&0 \\ 0&1&0 \\ 0&0&-2 \end{matrix} \right) \left( \begin{matrix} 0&0&1 \\ 0&1&0 \\ 1&0&0 \end{matrix} \right) \left( \begin{matrix} 1&0&0 \\ 1&1&0 \\ 0&0&1 \end{matrix} \right) \left( \begin{matrix} 1&0&0 \\ 0&0&1 \\ 0&1&0 \end{matrix} \right) \left( \begin{matrix} 1&0&0 \\ 1&1&0 \\ 0&0&1 \end{matrix} \right) \left( \begin{matrix} 1&0&0 \\ 0&-1&0 \\ 0&0&1 \end{matrix} \right) \left( \begin{matrix} 0&0&1 \\ 1&0&0 \\ 0&1&0 \end{matrix} \right)\end{array}$

Remark: We proved that $\lambda_n(A \cdot B)=|\det(A)| \cdot \lambda_n(B)$ for any borelian set $B \subset \mathbb{R}^n$. Therefore, $|\det(A)|$ tells us how evolve the volumes after applying $A$. The sign of $\det(A)$ says wether $A$ is orientation preserving or not.