I want to solve the following problem:

Show that the derivative of $\mbox{det}:GL(n,\mathbb{R})\rightarrow\mathbb{R}$ at $I\in GL(n,\mathbb{R})$ is given by $$\mbox{det}_{*}(I)(X)=\mbox{tr}X$$

I would like you to check my proof, and answer the question in the end.

My Attempt: I'll denote $N=GL(n,\mathbb{R})$ . Also, $\simeq$ will be used for vector space isomorphisms and $\cong$ will be used for diffeomorphisms.

We know that $\mbox{det}_{*}(I):T_{I}N\rightarrow T_{det(I)=1}\mathbb{R}$ .

Let $X\in T_{I}N$ . We can write $X$ in a basis of $T_{I}N$ . So let us find a basis $of T_{I}N$ : we know that $T_{I}N\simeq M_{n}(\mathbb{R})$ , so we can get a basis of $T_{I}N$ from a basis of $M_{n}(\mathbb{R})$ using an isomorphism. The function $$f:T_{I}N \rightarrow M_{n}(\mathbb{R}) \\ [\gamma] \mapsto \gamma'(0)$$

is known to be an isomorphism. Furthermore, ${E_{ij}}$ is a basis for $M_{n}(\mathbb{R})$ , where $E_{ij}$ is the $n\times n$ matrix whose entries are all zero except the entry $i,j$ , which is $1$ . Thus, a basis for $T_{I}N$ is ${f^{-1}(E_{ij})}$ . Now, $f^{-1}(E_{ij})$ is the equivalence class of curves $\gamma:\mathbb{R}\rightarrow N$ such that $\gamma(0)=I$ and $\gamma'(0)=E_{ij}$ . Hence, a representative of this equivalence class is $\alpha_{ij}(t)=I+tE_{ij}$ , and so we can write ${f^{-1}(E_{ij})}={[\alpha_{ij}]}$ .

Hence, we can write $X=\overset{n}{\underset{i,j=1}{\sum}}x_{ij}[\alpha_{ij}]$ .

Let us see how $det_{*}$ acts on the basis elements $[\alpha_{ij}]$ .

We have $\mbox{det}_{*}(I)([\alpha_{ij}])=[\mbox{det}\circ\alpha_{ij}]_{1}$

by definition of derivative (the subscript 1 reminds us that the equivalence relation of this equivalence class is different, since it is defined on the set of all curves of the type $\gamma:\mathbb{R}\rightarrow\mathbb{R}$ such that $\gamma(0)=\mbox{det}(I)=1 ).$

Now, $\mbox{det}\circ\alpha_{ij}:\mathbb{R}\rightarrow\mathbb{R}$ is such that $$\mbox{det}\circ\alpha_{ij}=\mbox{det}(\alpha_{ij}(t))=\mbox{det}\left(I+tE_{ij}\right)=\mbox{det}\left(\left[\begin{array}{ccc} 1 & & \mathbb{O}\\ & \ddots\\ \mathbb{O} & & 1 \end{array}\right]+\left[\begin{array}{cccc} \mathbb{O} & & & \mathbb{O}\\ & & t\,(i,j\mbox{ entry})\\ \\ \mathbb{O} & & & \mathbb{O} \end{array}\right]\right)$$ . The matrix is triangular (or simply diagonal), and so the determinant is the product of the diagonal elements. Hence, $\mbox{det}\circ\alpha_{ij}=1+t\delta_{ij}$ , with $\delta_{ij}$ the Kronecker delta.

Hence, $$\mbox{det}_{*}(I)([\alpha_{ij}])=[1+t\delta_{ij}]_{1}\in T_{1}\mathbb{R}$$

Finally, $$\mbox{det}_{*}(I)(X)=\overset{n}{\underset{i,j=1}{\sum}}x_{ij}\mbox{det}_{*}(I)([\alpha_{ij}])=\overset{n}{\underset{i,j=1}{\sum}}x_{ij}[1+t\delta_{ij}]_{1}$$

Now, I noticed that, if I for some reason use the isomorphism $$g:T_{1}\mathbb{R} \rightarrow \mathbb{R} \\ [\gamma]_{1} \mapsto \gamma'(0)$$

to “identify” $\alpha_{ij}$ with $g(\alpha_{ij})=\delta_{ij}$ and use that instead of $[1+t\delta_{ij}]_{1}$ , I get $\overset{n}{\underset{i,j=1}{\sum}}x_{ij}\delta_{ij}=\mbox{tr}X$ .

My question is: why is this last step (since "Now, I noticed...") legitimate?

  • 11
    $\begingroup$ You're working too hard. Just observe that the coefficients of $$\det (I + t X) = 1 + \text{tr}(X) t + O(t^2)$$ are the coefficients of the characteristic polynomial in reverse order, so the linear term is the trace. This trick of looking directly at Taylor series expansions can be used to differentiate many other matrix functions with very little effort. $\endgroup$ Feb 24, 2017 at 0:01
  • 2
    $\begingroup$ The following post on Terry Tao's blog may be of interest: terrytao.wordpress.com/2013/01/13/… $\endgroup$ Feb 24, 2017 at 0:31
  • $\begingroup$ @QiaochuYuan Before trying to see this in a different light, I would like to fix my proof, if possible. Can you please tell me why my last step is legitimate (if it is)? $\endgroup$
    – Soap
    Feb 24, 2017 at 16:16
  • $\begingroup$ @QiaochuYuan I did not understand how you concluded that the trace was indeed the derivative... Simply because it is multiplying by $t$?! $\endgroup$
    – Soap
    Mar 25, 2017 at 23:28

2 Answers 2


Since it seems you want to understand all the various identifications involved, let me introduce some notation to try and clarify what is going on.

Let $V$ be a finite dimensional real vector space (endowed with the natural smooth structure) and let $U \subseteq V$ be an open subset. Assume we are given a smooth function $F \colon U \rightarrow \mathbb{R}$. Then we can calculate three a priori distinct things:

  1. We can calculate the standard multivariable directional derivative of $F$ at a point $p \in U$ in the direction $v \in V$. I'll denote it by $$ DF|_{p}(v) := \lim_{t \to 0} \frac{F(p + tv) - F(p)}{t}. $$ Note that $DF|_{p} \colon V \rightarrow \mathbb{R}$.
  2. We can treat $U$ as a smooth manifold and calculate the differential of $F$ at a point $p \in U$. This will give us a map $dF|_{p} \colon T_p U \rightarrow \mathbb{R}$.
  3. We can treat both $U$ and $\mathbb{R}$ as smooth manifolds and calculate the "full differential" of $F$ at a point $p$ which I'll denote by $F_{*}$. This will give us a map $F_{*}|_{p} \colon T_p U \rightarrow T_{F(p)} (\mathbb{R})$.

What is the relation between the three distinct maps? Like you noted, we have natural isomorphisms $f \colon T_pU \rightarrow V$ and $g \colon T_{F(p)}(\mathbb{R}) \rightarrow \mathbb{R}$. In terms of those isomorphisms, we have the relations

$$ dF|_{p} = DF|_{p} \circ f, \,\,\, dF|_{p} = g \circ F_{*}|_{p}, \,\,\, g^{-1} \circ DF|_{p} \circ f = F_{*}|_{p}. $$

Now, in your case, we have $F = \det$ and $p = I$. By the formula you are given, it seems that you are asked to calculate $DF|_{p}$. Instead, you have tried to calculate $F_{*}|_{p}$, hence the need for isomorphisms $f$ and $g$ to relate the formula you are asked to show with your calculation. Note that like Qiaochu said in his comment, it is much easier to calculate $DF|_{p}(X)$ without choosing a basis but your more complicated calculation agrees with the expected result.

  • $\begingroup$ In Barden's book (which I am using), the derivative is what you call the full differential. Also: I am sorry, but I still don't see why is my last step legitimate (if it is)... $\endgroup$
    – Soap
    Feb 24, 2017 at 16:14
  • 3
    $\begingroup$ @Simoes: It is legitimate because you have calculated $F_{*}|_{p}$ but the question asks you (implicitly or explicitly) to calculate $DF|_{p}$. The relation between them is obtained by applying the isomorphisms $f$ and $g$ which you did. The formula $\det_{*}|_{I}(X) = \operatorname{tr}(X)$ doesn't make sense without identifying $T_{I} (\operatorname{GL}_n(\mathbb{R}))$ with $M_n(\mathbb{R})$ (this is done using $f$) and $T_{1}(\mathbb{R})$ with $\mathbb{R}$ (this is done using $g$). $\endgroup$
    – levap
    Feb 24, 2017 at 16:18
  • 1
    $\begingroup$ Yeah, I was wondering if I should remark on that. For curves, you have the same issue. You have the full derivative $\gamma_{*}|_{0} \colon T_0(\mathbb{R}) \rightarrow T_{\gamma(p)}M$, the velocity vector $\gamma'(0)$ which is $\gamma_{*}|_{0} \left( \frac{d}{dt}|_{t = 0} \right)$ or $(\gamma_{*}|_{0} \circ g^{-1})(1)$ and if $M$ is an open subset of a vector space $V$, you also have the "multivariable calculus velocity vector" $\dot{\gamma}(0) \in V$. All are related via the identifications we described (this is just the dual point of view). $\endgroup$
    – levap
    Feb 24, 2017 at 17:48
  • 2
    $\begingroup$ I just wanted to say that I'm incredibly grateful for your response to this question. It's very illuminating to work through the details of identifications (at least once), otherwise there's this perpetual vagueness or sense of insecurity when doing computations, at least for me. $\endgroup$
    – Sha Vuklia
    Feb 27, 2021 at 17:14
  • 2
    $\begingroup$ @ShaVuklia I agree, I remember this was incredibly useful for me back then! $\endgroup$
    – Soap
    Mar 1, 2021 at 10:05

Another approach uses standard coordinate : note that, as a function of several variables, the determinant is particularly simple as it is linear in each coordinate.

If you developp the determinant using standard rule, you see that is $X=(x_{i,j})$ is a matrix and the index $i$ is fixed $\det M= \sum _{j=1}^n x_{i,j} \det X_{i,j} (-1)^{i+j}$, where $X_{i,j}$ is obtained by erasing the i-th raw and column of $X$.

If follows that $({ \partial \over \partial x_{i,j}} \det ) X= (-1)^{i+j} \det X_{i,j}$

In particular if $X= Id$ is the identity matrix, $({ \partial \over \partial x_{i,j}} \det ) Id=0$ if $i\not = j$ and $({ \partial \over \partial x_{i,i}} \det ) Id=1$

Whence $d \det ({Id}) M= \sum _{i,j} ({ \partial \over \partial x_{i,i}} \det )(Id) m_{i,j} =\sum _i m_{i,i}$

This approach immediately gives you the gradient of the determinant at any point $X$ : $\vec {grad} (\det )X$ is the matrix $(-1)^{i+j} \det X_{i,j}$

  • $\begingroup$ I'd like to say that this approach applies well to give computation of Jacobian of maps at $I$ related to the determinant (for example the inverse map) in Algebraic Geometry. Thanks a lot for posting this! $\endgroup$
    – Shana
    Dec 29, 2021 at 1:44

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .