The Question
In class we defined the determinant as follows.
Definition 1
A determinant on $n \times n$ matrices is a function $\det$ that assigns a real number to each $n \times n$ matrix and has the following two properties.
- It is multiplicative: $\det(AB) = \det(A)\det(B)$ for all $n \times n$ matrices $A$ and $B$.
- If $U$ is upper triangular, then $\det(U) = u_{11} u_{22} \cdots u_{nn}$ is the product of its diagonal entries.
A definition like this raises two questions. Could there be two different functions with these properties? And is there any function with these properties at all? Nothing we did in class rules out either possibility: we only worked out what a determinant has to do if it exists. These notes answer both questions.
Theorem 2
For each $n \geq 1$ there is exactly one determinant on $n \times n$ matrices.
Uniqueness is the easier half, and the argument is the row reduction method we already use to compute determinants. Existence takes more work: we have to write down a function and check that it is multiplicative, which is not obvious for any formula. Along the way we show that the determinant is linear in each row, and in the section on cofactor expansion we see that the existence proof also gives the cofactor expansion along any row or column. The last section explains why property 2 could be weakened to a statement about diagonal matrices only.
Notation. All matrices have real entries. We write $I$ for the identity matrix, $e_1, \ldots, e_n$ for the standard basis vectors of $\RR^n$ (written as rows or columns as needed), and $E_{ij}$ for the matrix with a $1$ in position $(i, j)$ and $0$ everywhere else. The elementary matrices are:
- ($R_i \to cR_i$) $D_i(c)$, the identity matrix with its $(i, i)$ entry replaced by $c$;
- ($R_i \to R_i + cR_j$) $T_{ij}(c) = I + cE_{ij}$ for $i \neq j$;
- ($R_i \leftrightarrow R_j$) $S_{ij}$, the identity matrix with rows $i$ and $j$ swapped, for $i \neq j$.
Multiplying $A$ on the left by one of these performs a row operation: $D_i(c)A$ multiplies row $i$ by $c$, $T_{ij}(c)A$ adds $c$ times row $j$ to row $i$, and $S_{ij}A$ swaps rows $i$ and $j$. Multiplying on the right performs a column operation: $AD_i(c)$ multiplies column $i$ by $c$, $AT_{ij}(c)$ adds $c$ times column $i$ to column $j$, and $AS_{ij}$ swaps columns $i$ and $j$. In row reduction we only scale by $c \neq 0$, but it will be convenient to allow $D_i(0)$ as well.
Uniqueness
Throughout this section, $\det$ is any function on $n \times n$ matrices with properties 1 and 2. In class we deduced the following facts from those two properties alone, and we will use them freely.
Proposition 3 (Proved in class)
Let $\det$ be a function on $n \times n$ matrices with properties 1 and 2.
- $\det(I) = 1$. If $P$ is invertible, then $\det(P^{-1}) = 1 / \det(P)$, and hence $\det(PAP^{-1}) = \det(A)$ for every $A$.
- If $L$ is lower triangular, then $\det(L)$ is the product of its diagonal entries.
- $\det(D_i(c)) = c$, $\det(T_{ij}(c)) = 1$, and $\det(S_{ij}) = -1$. So scaling a row or a column by $c$ multiplies the determinant by $c$, adding a multiple of one row to another (or one column to another) does not change it, and swapping two rows (or two columns) multiplies it by $-1$.
- An upper triangular matrix is invertible if and only if all of its diagonal entries are nonzero.
- $\det(A) \neq 0$ if and only if $A$ is invertible. In particular, if the rows of $A$ are linearly dependent, for example if two rows are equal, then $\det(A) = 0$.
- $\det(A^T) = \det(A)$.
Theorem 4 (Uniqueness)
There is at most one determinant on $n \times n$ matrices.
Proof
Let $A$ be an $n \times n$ matrix. Row reduce $A$ to an echelon form $U$. Each row operation is multiplication on the left by an elementary matrix, so \[ E_k \cdots E_2 E_1 A = U \] for some elementary matrices $E_1, \ldots, E_k$. Since $A$ is square, its echelon form $U$ is upper triangular. Using properties 1 and 2 we get, \[ \det(E_k) \cdots \det(E_1) \det(A) = \det(U) = u_{11} \cdots u_{nn}. \] By part 3 of Proposition 3, each $\det(E_l)$ is a specific number: $c \neq 0$ for a scaling by $c$, $1$ for a replacement, and $-1$ for a swap. None of them is $0$, so we can divide: \[ \det(A) = \frac{u_{11} u_{22} \cdots u_{nn}}{\det(E_1) \det(E_2) \cdots \det(E_k)}. \tag{$\ast$} \] The right side depends only on $A$ and the row operations we chose, not on which determinant function we are using. So if two functions both have properties 1 and 2, they give the same value at every $A$.
Remark (Why ($\ast$) does not prove existence)
Formula ($\ast$) is the row reduction method from class, so it is tempting to take it as the definition of $\det(A)$ and conclude that a determinant exists. The trouble is that ($\ast$) depends on choices. A matrix can be row reduced in many different ways, and different choices give different elementary matrices $E_l$ and different echelon forms $U$. For example, we can reduce \[ A = \begin{bmatrix} 2 & 4 \\ 1 & 3 \end{bmatrix} \] with the single replacement $R_2 \to R_2 - \frac{1}{2} R_1$, which gives $U = \smat{2}{4}{0}{1}$ and the value $2 \cdot 1 / 1 = 2$. Or we can swap the rows and then do $R_2 \to R_2 - 2R_1$, which gives $U = \smat{1}{3}{0}{-2}$ and the value $1 \cdot (-2) / (-1) = 2$. The answers agree, but nothing in the proof of Theorem 4 explains why. That proof only shows that if a determinant exists, then every choice must give its value. So to use ($\ast$) as a definition, we would first have to prove directly that every way of row reducing $A$ gives the same number, and then check that the resulting function is multiplicative. The first of these is hard to prove directly. The Existence section avoids it by building the determinant another way. Once that is done, Theorem 4 shows that every row reduction gives the same answer.
Linearity in Rows
In this section we prove one more consequence of the definition, which we need both to construct the determinant and to derive the cofactor expansion. It is not at all obvious from properties 1 and 2, which never mention adding matrices.
Proposition 5 (Linearity in each row)
Fix a row index $i$ and fix all rows of an $n \times n$ matrix $A$ except row $i$. For a vector $x$, let $A(x)$ be the matrix with the $i$th row of $A$ replaced by $x$. Then the function $x \mapsto \det(A(x))$ is linear: \[ \det(A(x + y)) = \det(A(x)) + \det(A(y)) \quad\text{and}\quad \det(A(cx)) = c \det(A(x)). \] Since $\det(A^T) = \det(A)$, the same is true for columns.
Proof
Write $r_k$ for the $k$th row of $A$. We consider two cases.
If the $n - 1$ vectors $r_k$ with $k\neq i$ are linearly dependent, then no matter what $x$ is, the matrix $A(x)$ has linearly dependent rows, hence $\det(A(x)) = 0$ by part 5 of Proposition 3. The zero function is linear, so in this case we are done.
Otherwise the $r_k$ with $k \neq i$ are $n - 1$ linearly independent vectors in $\RR^n$, hence one may find a $v$ such that $v$ together with the $r_k$ form a basis of $\RR^n$. Every $x \in \RR^n$ can be written uniquely as \[ x = cv + \sum_{k \neq i} c_k r_k, \] and the coefficient $c = \varphi(x)$ is a linear function of $x$ (projection onto the $v$th coordinate is a linear function). We compute $\det(A(x))$ in two steps.
- Show $\det(A(x)) = \det(A(cv))$. The matrix $A(cv)$ has $cv$ in row $i$ and $r_k$ in every other row $k$. For each $k \neq i$, perform the row replacement “add $c_k$ times row $k$ to row $i$.” Each of these operations only changes row $i$. After doing all of these steps, row $i$ is $cv + \sum_{k \neq i} c_k r_k = x$, and every other row is still $r_k$. In other words, these row replacements turn $A(cv)$ into $A(x)$. Row replacements do not change the determinant, so $\det(A(x)) = \det(A(cv))$.
- Show $\det(A(cv)) = c \det(A(v))$. The matrix $A(cv)$ is $A(v)$ with row $i$ multiplied by $c$, that is, $A(cv) = D_i(c) A(v)$. Since $D_i(c)$ is diagonal, $\det(D_i(c)) = c$ by property 2, even when $c = 0$. So $\det(A(cv)) = c \det(A(v))$ by property 1.
Putting the two steps together, \[ \det(A(x)) = \varphi(x) \det(A(v)). \] Here $\det(A(v))$ is a fixed number that does not depend on $x$, and $\varphi$ is linear, so $x \mapsto \det(A(x))$ is linear.
Example 6
Take $n = 2$ and $i = 1$, with the second row fixed to be $r_2 = (1, 2)$. Then $v = (1, 0)$ together with $r_2$ is a basis of $\RR^2$, and $x = (x_1, x_2)$ can be written as \[ x = \Bigl(x_1 - \tfrac{1}{2} x_2\Bigr) (1, 0) + \tfrac{1}{2} x_2 \, (1, 2), \] so $\varphi(x) = x_1 - \frac{1}{2} x_2$ and $c_2 = \frac{1}{2} x_2$. Step 1 says that adding $\frac{1}{2} x_2$ times row 2 to row 1 turns $A(\varphi(x) v)$ into $A(x)$: \[ \begin{bmatrix} x_1 - \frac{1}{2} x_2 & 0 \\ 1 & 2 \end{bmatrix} \xrightarrow{R_1 \to R_1 + \frac{1}{2} x_2 R_2} \begin{bmatrix} x_1 & x_2 \\ 1 & 2 \end{bmatrix}. \] The row replacement does not change the determinant, and the first matrix is lower triangular, so \[ \det \begin{bmatrix} x_1 & x_2 \\ 1 & 2 \end{bmatrix} = \Bigl(x_1 - \tfrac{1}{2} x_2\Bigr) \cdot 2 = 2x_1 - x_2, \] which is indeed a linear function of $x$, and agrees with the formula $ad - bc$.
Existence
To prove existence, we need to produce a function and check properties 1 and 2. Property 2 will be easy to check for the function we write down. Property 1 is harder, and the following lemma does most of the work. It describes the functions that behave like the determinant with respect to rows.
Definition 7
A function $f$ on $n \times n$ matrices is multilinear if it is linear in each row when the other rows are fixed, as in Proposition 5. It is alternating if $f(A) = 0$ whenever two rows of $A$ are equal.
For an elementary matrix $E$, let \[ d(E) := \begin{cases} \hphantom{-}c & \text{if } E = D_i(c), \\ \hphantom{-}1 & \text{if } E = T_{ij}(c), \\ -1 & \text{if } E = S_{ij}. \end{cases} \] Once we know that a determinant exists, $d(E) = \det(E)$ by part 3 of Proposition 3. But in this section we are constructing the determinant on $n \times n$ matrices, so we cannot write $\det(E)$ yet.
Lemma 8
Let $f$ be a multilinear alternating function on $n \times n$ matrices.
- If $E$ is an elementary matrix, then \[ f(EA) = d(E) f(A). \]
- If the rows of $A$ are linearly dependent, then $f(A) = 0$.
- If $U$ is upper triangular, then $f(U) = u_{11} u_{22} \cdots u_{nn} \, f(I)$.
- If $g$ is another multilinear alternating function and $g(I) = 1$, then $f(A) = f(I) \, g(A)$ for every $A$.
Proof
In this proof we only write the rows that change, so $f(\ldots, x, \ldots, y, \ldots)$ means $f$ of a matrix with $x$ in row $i$, $y$ in row $j$, and the other rows fixed.
Part 1. We show this case by case. Scaling is linearity in a row. Adding $c$ times row $j$ to row $i$ gives, by linearity in row $i$, \[ f(\ldots, x + cy, \ldots, y, \ldots) = f(\ldots, x, \ldots, y, \ldots) + c f(\ldots, y, \ldots, y, \ldots) = f(\ldots, x, \ldots, y, \ldots), \] since the last matrix has two equal rows. For a swap, use linearity in rows $i$ and $j$:
Part 2. If the rows are linearly dependent, then some row $i$ is a linear combination $\sum_{k \neq i} c_k r_k$ of the others. By linearity in row $i$, $f(A) = \sum_{k \neq i} c_k f(A_k)$, where $A_k$ is $A$ with row $i$ replaced by $r_k$. Each $A_k$ has two equal rows, so $f(A) = 0$.
Part 3. If some $u_{kk} = 0$, then $U$ is not invertible by part 4 of Proposition 3, so its rows are linearly dependent and both sides are $0$ by part 2. Otherwise, divide row $i$ by $u_{ii}$ for each $i$, which divides $f$ by $u_{11} \cdots u_{nn}$ and leaves an upper triangular matrix with $1$s on the diagonal. Its last row is $e_n$, and subtracting multiples of it from the rows above clears the rest of column $n$; then row $n - 1$ is $e_{n - 1}$, and we clear the rest of column $n - 1$ the same way, and so on. These row replacements turn the matrix into $I$ without changing $f$. So $f(I) = f(U) / (u_{11} \cdots u_{nn})$.
Part 4. Row reduce $A$ to an echelon form $U$ by row operations $E_1, \ldots, E_k$, as in the proof of Theorem 4. By parts 1 and 3, \[ d(E_k) \cdots d(E_1) \, f(A) = f(U) = u_{11} \cdots u_{nn} \, f(I), \] and the same with $g$ in place of $f$, using $g(I) = 1$. So \[ f(A) = \frac{u_{11} \cdots u_{nn}}{d(E_1) \cdots d(E_k)} \, f(I) = g(A) \, f(I). \tag*{$\square$}\]
For an $n \times n$ matrix $A$ with $n \geq 2$, let $A_{ij}$ be the $(n - 1) \times (n - 1)$ matrix obtained by deleting row $i$ and column $j$ of $A$.
Theorem 9 (Existence)
For each $n \geq 1$ there is a determinant on $n \times n$ matrices.
Proof
We use induction on $n$. For $n = 1$, the function $\det \begin{bmatrix} a \end{bmatrix} = a$ is multiplicative, and every $1 \times 1$ matrix is upper triangular with diagonal entry $a$.
Now let $n \geq 2$, and suppose that $\det_{n - 1}$ is a determinant on $(n - 1) \times (n - 1)$ matrices. Everything in the Uniqueness and Linearity in Rows sections applies to $\det_{n - 1}$. For an $n \times n$ matrix $A$, define \[ \Delta(A) = \sum_{i = 1}^{n} (-1)^{i + 1} a_{i1} \det\nolimits_{n - 1}(A_{i1}) = a_{11} \det\nolimits_{n - 1}(A_{11}) - a_{21} \det\nolimits_{n - 1}(A_{21}) + \cdots \pm a_{n1} \det\nolimits_{n - 1}(A_{n1}). \] We will show that $\Delta$ has properties 1 and 2.
Property 2. If $U$ is upper triangular, then the first column of $U$ is $u_{11} e_1$, so only the $i = 1$ term survives: $\Delta(U) = u_{11} \det_{n - 1}(U_{11})$. The matrix $U_{11}$ is upper triangular with diagonal entries $u_{22}, \ldots, u_{nn}$, so $\Delta(U) = u_{11} u_{22} \cdots u_{nn}$ by property 2 for $\det_{n - 1}$. In particular, $\Delta(I) = 1$.
$\Delta$ is multilinear. Fix a row index $k$, and look at how each term of $\Delta(A)$ depends on row $k$ of $A$ when the other rows are fixed. In the term $i = k$, the number $a_{k1}$ is a linear function of row $k$ (project to the first component), and $A_{k1}$ does not involve row $k$ at all. In a term with $i \neq k$, the number $a_{i1}$ does not involve row $k$, and one row of $A_{i1}$ is row $k$ of $A$ with its first entry deleted, which is a linear function of row $k$ (project to the last $n-1$ components). By Proposition 5 for $\det_{n - 1}$, the term is linear in row $k$. A linear combination of linear functions is linear.
$\Delta$ is alternating. First suppose that two adjacent rows of $A$ are equal, say rows $k$ and $k + 1$. For $i \neq k, k + 1$, the matrix $A_{i1}$ still contains both of those rows, with their first entries deleted, so it has two equal rows and $\det_{n - 1}(A_{i1}) = 0$ by part 5 of Proposition 3. The two remaining terms are \[ (-1)^{k + 1} a_{k1} \det\nolimits_{n - 1}(A_{k1}) + (-1)^{k + 2} a_{k + 1, 1} \det\nolimits_{n - 1}(A_{k + 1, 1}). \] Since rows $k$ and $k + 1$ are equal, $a_{k1} = a_{k + 1, 1}$, and deleting row $k$ leaves the same matrix as deleting row $k + 1$, so $A_{k1} = A_{k + 1, 1}$. The signs are opposite, so the two terms cancel and $\Delta(A) = 0$.
The swap computation in part 1 of Lemma 8 only used that $f$ vanishes when the two rows being swapped are equal. So the same computation shows that swapping two adjacent rows multiplies $\Delta$ by $-1$. Now suppose rows $k < l$ of $A$ are equal. Swap row $l$ with row $l - 1$, then with row $l - 2$, and so on, until it sits directly below row $k$. Each swap multiplies $\Delta$ by $-1$, and the result has two equal adjacent rows, so $\Delta$ of it is $0$. Hence $\Delta(A) = 0$.
Property 1. Fix an $n \times n$ matrix $B$. We must show that $\Delta(AB) = \Delta(A)\Delta(B)$ for every $A$. The plan is to view both sides as functions of $A$ and apply part 4 of Lemma 8, which says that a multilinear alternating function is determined by its value at $I$. So define \[ f(A) = \Delta(AB). \] We check that $f$ is multilinear and alternating, and compute $f(I)$.
First we need to know the rows of $AB$. Write $a_1, \ldots, a_n$ for the rows of $A$. The $(k, j)$ entry of $AB$ is $\sum_l a_{kl} b_{lj}$, which is the $j$th entry of the row vector $a_k B$. So the rows of $AB$ are \( a_1 B, a_2 B, \ldots, a_n B. \) In particular, row $k$ of $AB$ depends only on row $k$ of $A$.
$f$ is multilinear. Fix all rows of $A$ except row $k$, and write $A(x)$ for the matrix with $x$ in row $k$. By the computation above, $A(x)B$ has $xB$ in row $k$, and its other rows $a_l B$ do not depend on $x$. The map $x \mapsto xB$ is linear, because $(x + y)B = xB + yB$ and $(cx)B = c(xB)$. Combining this with the linearity of $\Delta$ in row $k$, and writing only row $k$, \[ f(A(x + y)) = \Delta(\ldots, xB + yB, \ldots) = \Delta(\ldots, xB, \ldots) + \Delta(\ldots, yB, \ldots) = f(A(x)) + f(A(y)), \] and in the same way \[ f(A(cx)) = \Delta(\ldots, c(xB), \ldots) = c\,\Delta(\ldots, xB, \ldots) = c f(A(x)). \]
$f$ is alternating. If rows $k$ and $l$ of $A$ are equal, then $a_k = a_l$, so $a_k B = a_l B$, and rows $k$ and $l$ of $AB$ are equal. Since $\Delta$ is alternating, $f(A) = \Delta(AB) = 0$.
The value at $I$. $f(I) = \Delta(IB) = \Delta(B)$.
Conclusion. We showed above that $\Delta$ is multilinear and alternating with $\Delta(I) = 1$. So part 4 of Lemma 8 applies, with $f$ as above and $g = \Delta$, and gives \[ \Delta(AB) = f(A) = f(I) \, \Delta(A) = \Delta(B) \Delta(A) = \Delta(A) \Delta(B). \] So $\Delta$ is a determinant on $n \times n$ matrices, which completes the induction.
It may help to see what part 4 of the lemma is doing here. For an elementary matrix $E$ we have $(EA)B = E(AB)$, so a row operation on $A$ performs the same row operation on $AB$, and by part 1 of the lemma it multiplies $\Delta(A)$ and $\Delta(AB)$ by the same factor. So we may row reduce $A$ to an upper triangular matrix $U$ without changing whether $\Delta(AB) = \Delta(A)\Delta(B)$ holds. That leaves the case $A = U$, which part 3 of the lemma handles: both $\Delta(UB)$ and $\Delta(U)\Delta(B)$ equal $u_{11} \cdots u_{nn} \, \Delta(B)$.
Theorems 4 and 9 together prove Theorem 2. From now on, $\det$ means the unique determinant, on matrices of whatever size is under discussion. By uniqueness, the function $\Delta$ in the proof is $\det$. So the proof shows that $\det(A)$ can be computed by cofactor expansion along the first column. In the next section we show that any row or column works.
Remark
Another way to prove existence is with an explicit formula for the determinant as an alternating sum of $n!$ terms, one for each way to choose one entry from each row and each column. That approach requires us to first define the sign of a permutation and establish some of its properties. This requires some digression into groups and homomorphisms. That's another can of worms. But once you've learned those topics, it provides an alternative, more direct route to existence.
Cofactor expansion
Definition 10
Let $A$ be an $n \times n$ matrix with $n \geq 2$. The $(i, j)$ cofactor of $A$ is $C_{ij} = (-1)^{i + j} \det(A_{ij})$, where $A_{ij}$ is $A$ with row $i$ and column $j$ deleted.
Theorem 11 (Cofactor expansion)
Let $A$ be an $n \times n$ matrix with $n \geq 2$. For any row $i$, \[ \det(A) = a_{i1} C_{i1} + a_{i2} C_{i2} + \cdots + a_{in} C_{in}, \] and for any column $j$, \[ \det(A) = a_{1j} C_{1j} + a_{2j} C_{2j} + \cdots + a_{nj} C_{nj}. \]
Remark (Proof of Theorem 11)
The proof of Theorem 9 already does most of the work. Since $\Delta = \det$, it gives the expansion along the first column. For another column $j$, consider \[ \Delta_j(A) = \sum_{i = 1}^{n} (-1)^{i + j} a_{ij} \det(A_{ij}) = a_{1j} C_{1j} + a_{2j} C_{2j} + \cdots + a_{nj} C_{nj}. \] The arguments in the proof of Theorem 9 that $\Delta$ is multilinear and alternating work just as well with column $j$ in place of column $1$, so $\Delta_j$ is multilinear and alternating too. (When rows $k$ and $k + 1$ are equal, the two terms that survive have signs $(-1)^{k + j}$ and $(-1)^{k + 1 + j}$, which are still opposite.)
The one step that does not carry over word for word is property 2. For an upper triangular $U$, column $j$ of $U$ can have nonzero entries $u_{1j}, \ldots, u_{jj}$, so $\Delta_j(U)$ is no longer a single term. (The extra terms do vanish: for $i < j$, the matrix $U_{ij}$ is upper triangular with a $0$ in position $(i, i)$.) But we do not need property 2 for $\Delta_j$, only its value at $I$. Column $j$ of $I$ is $e_j$, so $\Delta_j(I) = (-1)^{j + j} \cdot 1 \cdot \det(I_{n - 1}) = 1$. The determinant is multilinear by Proposition 5 and alternating by part 5 of Proposition 3, with $\det(I) = 1$. So part 4 of Lemma 8, with $f = \Delta_j$ and $g = \det$, gives $\Delta_j(A) = \Delta_j(I) \det(A) = \det(A)$, which is the expansion along column $j$.
For rows, apply the column expansion to $A^T$ along column $i$. Column $i$ of $A^T$ has entries $a_{i1}, \ldots, a_{in}$, and deleting row $j$ and column $i$ of $A^T$ gives $(A_{ij})^T$, which has the same determinant as $A_{ij}$. So \[ \det(A) = \det(A^T) = \sum_{j = 1}^{n} a_{ij} (-1)^{j + i} \det\bigl((A_{ij})^T\bigr) = \sum_{j = 1}^{n} a_{ij} C_{ij}. \]
Diagonal matrices are enough
Property 2 of Definition 1 can be replaced by the weaker property
- 2$'$. If $A$ is diagonal, then $\det(A) = a_{11} a_{22} \cdots a_{nn}$.
That is, a function with properties 1 and 2$'$ automatically has property 2, so it is the determinant. Diagonal matrices are upper triangular, so property 2 implies 2$'$, and the two definitions describe the same function.
The idea is that multiplicativity forces $\det(T_{ij}(c)) = 1$, because $T_{ij}(c)$ is similar to $T_{ij}(2c) = T_{ij}(c)^2$. Then every upper triangular matrix with nonzero diagonal is a diagonal matrix times a product of such matrices.
Proof
Let $\det$ be a function with properties 1 and 2$'$. Since $I$ is diagonal, $\det(I) = 1$, and the argument from class still works: if $P$ is invertible, then $\det(P)\det(P^{-1}) = \det(I) = 1$, so $\det(P) \neq 0$ and $\det(PAP^{-1}) = \det(P)\det(A)\det(P^{-1}) = \det(A)$.
Step 1: $\det(T_{ij}(c)) = 1$ for $i \neq j$. First, $T_{ij}(a) T_{ij}(b) = (I + aE_{ij})(I + bE_{ij}) = I + (a + b)E_{ij} = T_{ij}(a + b)$, because $E_{ij}E_{ij} = 0$ when $i \neq j$. In particular, $T_{ij}(c)$ is invertible with inverse $T_{ij}(-c)$, so $\det(T_{ij}(c)) \neq 0$. Next, let $P = D_i(2)$, which is invertible with inverse $D_i(1/2)$. Multiplying $E_{ij}$ on the left by $P$ doubles row $i$, and multiplying on the right by $P^{-1}$ halves column $i$, which is zero in $E_{ij}$; so $PE_{ij}P^{-1} = 2E_{ij}$. Hence $P T_{ij}(c) P^{-1} = I + 2cE_{ij} = T_{ij}(2c)$, so by the similarity fact above \[ \det(T_{ij}(c)) = \det(T_{ij}(2c)) = \det\bigl(T_{ij}(c) T_{ij}(c)\bigr) = \det(T_{ij}(c))^2. \] A nonzero number $t$ with $t = t^2$ must be $1$.
Step 2: upper triangular matrices with nonzero diagonal. Let $U$ be upper triangular with every $u_{ii} \neq 0$, and let $\Lambda$ be the diagonal matrix with diagonal entries $u_{11}, \ldots, u_{nn}$. Then $N = \Lambda^{-1} U$ is upper triangular with $1$s on the diagonal. Subtracting multiples of row $n$ to clear column $n$ above the diagonal, then multiples of row $n - 1$ to clear column $n - 1$, and so on, reduces $N$ to $I$ by row replacements alone, so $F_m \cdots F_1 N = I$ for some matrices $F_l$ of the form $T_{ij}(c)$. Then $N = F_1^{-1} \cdots F_m^{-1}$, and each $F_l^{-1}$ is also of the form $T_{ij}(c)$, so $\det(N) = 1$ by Step 1. So $\det(U) = \det(\Lambda)\det(N) = u_{11} \cdots u_{nn}$ by property 2$'$.
Step 3: upper triangular matrices with a zero on the diagonal. Let $U$ be upper triangular, and let $k$ be the first index with $u_{kk} = 0$. We must show that $\det(U) = 0$. The first $k - 1$ columns of $U$, cut off after row $k - 1$, form an upper triangular $(k - 1) \times (k - 1)$ matrix with nonzero diagonal, which is invertible by part 4 of Proposition 3. Below row $k - 1$, these columns are zero, and so is column $k$, because $u_{kk} = 0$. So column $k$ is a linear combination of columns $1, \ldots, k - 1$. Subtracting that combination from column $k$ is a sequence of column replacements, that is, multiplication on the right by matrices of the form $T_{ij}(c)$, which does not change the determinant by Step 1. The result is a matrix $U'$ whose column $k$ is zero. Then $U' = U' D_k(0)$, since multiplying by $D_k(0)$ on the right only zeroes out column $k$, so \[ \det(U) = \det(U') = \det(U')\det(D_k(0)) = \det(U') \cdot 0 = 0. \] (If $k = 1$, column $1$ of $U$ is already zero, and we can take $U' = U$.)
Steps 2 and 3 together give property 2.