3

According to this textbook (page 14), the exponential map of some Lie algebras (like $SO(2)$) can be thought of as repeated multiplication of matrices with infinitesimally small rotations.

$$ \lim_{k\to\infty} \left(\mathbf{I} + \alpha_a\frac{X_a}{k}\right)^k = \sum_{m=0}^{\infty} \frac{1}{m!}\left(\alpha_aX_a\right)^m \equiv e^{\alpha_aX_a}, $$

where $X_a$ is the $a$-th generator (basis vector) of the Lie algebra and $\alpha_a$ is the coefficient of the $a$-th basis vector (the textbook seems to be using Einstein's summation notation).

I feel like this derivation of the exponential map for "sphere-like" manifolds like $SO(2)$ or $SO(3)$ makes sense and thus I wanted to test whether this intuitive definition via a limit, when simplified, can indeed lead to the analytical version of the exponential map.

I therefore first decided to use Python's symbolic math package SymPy to verify whether the equation holds for the Lie algebra of $SO(2)$ and SymPy was able to simplify the symbolic limit into the analytical form of the exponential map (3.6) in the textbook. I plugged the generator $X_{SO(2)}$ into the limit and after simplification, I got the expected analytical form $\exp_{SO(2)}(x)$.

$$ \begin{aligned} X_{SO(2)} &= \begin{bmatrix}0 & -x\\x & 0\end{bmatrix}\\ \exp_{SO(2)}(x) &= \begin{bmatrix}\cos x & -\sin x\\\sin x & \cos x\end{bmatrix} \end{aligned} $$

However, when I tried to simplify the limit with generators for $SO(3)$, the analytical expression and the limit were not the same!

I wondered whether the same limit could be used to derive the analytical form of the exponential map of $SO(3)$, so I found the generator $X_{SO(3)}$ of $SO(3)$ and the expected analytical exponential map $\exp_{SO(3)}(X)$ in this paper (page 5, Example 3 and 4):

$$ \begin{aligned} X_{SO(3)} &= \begin{bmatrix}0 & -z & y\\ z & 0 & -x\\ -y & x & 0\end{bmatrix}\\ \exp_{SO(3)}(X) &= \mathbf{I} + X_{SO(3)} \sin{\theta} + X^2_{SO(3)} (1 - \cos{\theta}) \end{aligned} $$

I assume that $\theta = \sqrt{x^2+y^2+z^2}$.

I expected the following to be true: $$ \lim_{k\to\infty} \left(\mathbf{I} + \frac{X_{SO(3)}}{k}\right)^k \stackrel{?}{=} \mathbf{I} + X_{SO(3)} \sin{\theta} + X^2_{SO(3)} (1 - \cos{\theta})\\ \lim_{k\to\infty} \left(\mathbf{I} + \frac{X_{SO(3)}}{k}\right)^k - \left(\mathbf{I} + X_{SO(3)} \sin{\theta} + X^2_{SO(3)} (1 - \cos{\theta})\right) \stackrel{?}{=} \begin{bmatrix}0 & 0 &0\\0 & 0 &0\\0 & 0 &0\end{bmatrix} $$

However, after attempting to use SymPy to simplify the expression above, I did not get a $\mathbf{0}$ matrix. It seems like one of the following is true:

  • I might be using a wrong analytical form $\exp_{SO(3)}(x,y,z)$.
  • I might misunderstood what $\theta$ stands for in $\exp_{SO(3)}(x,y,z)$.
  • I made a mistake when re-writing the expressions into SymPy.
  • SymPy is unable to correctly simplify the expression.
  • The limit does not hold for $SO(3)$.

What did I do wrong? And if the limit does not hold for $SO(3)$, what are some other ways to derive the exponential map for $SO(3)$ in an intuitive and satisfying way?

Below is the Python/SymPy code I used:

from sympy import *
init_printing()

x, y, z = symbols('x y z') G = Matrix([ [0, -z, y], [z, 0, -x], [-y, x, 0] ])

The analytic expression of the exponential map

omega = sqrt(xx + yy + zz) analytic_expression = Identity(3).as_explicit() + sin(omega) G + (1 - cos(omega)) * G**2

Expressing the exponential map as a limit

n = symbols('n', integer=True) limit_expression = (Identity(3).as_explicit() + G/n)**n limit_expression = limit_expression.limit(n, oo)

If both expressions are exactly the same, their difference should be the zero matrix

diff_matrix = simplify(analytic_expression - limit_expression)

diff_matrix is NOT zero. Why?

print(diff_matrix)


EDIT:

To rule-out the possibility of a bug in SymPy, I have also tried to simplify the expression using Wolfram Mathematica (I assume Mathematica is more reliable than SymPy). However, not even Mathematica simplified the difference between the limit and the analytical solution into the $\mathbf{0}$ matrix. The Mathematica code:

Clear["Global`*"]
X = {
    {0, -z, y},
    {z, 0, -x},
    {-y, x, 0}
}

omega = Sqrt[x^2 + y^2 + z^2]

analyticExpression = IdentityMatrix[3] + Sin[omega]X + (1 - Cos[omega]) (X.X) limitExpression = Limit[MatrixPower[IdentityMatrix[3] + X/n, n], n -> Infinity]

(analyticExpression - limitExpression) // FullSimplify // MatrixForm

jordi
  • 279
  • You have failed to normalize your SO(3) generator! The properly normalized generator is $X/\theta$, in your eccentric language. – Cosmas Zachos Feb 06 '22 at 21:12
  • @CosmasZachos Thank you for spotting the bug. Unfortunately, even after I normalize X per your advice, not SymPy, nor Mathematica produces the zero matrix as the result of simplification. – jordi Feb 06 '22 at 21:35
  • Forget about computer algebra. As per the link provided, you can do it by hand. – Cosmas Zachos Feb 06 '22 at 21:39
  • @CosmasZachos I am reading the section of the Wiki article you pointed out, but it does not mention the limit I am using above. The Wiki article just assumes that the exponential map is given by the Taylor polynomial of the $\exp(\cdot)$ function, but I fail to see why is the limit equal to the $\exp(\cdot)$ function. If I understood this, then I would have much easier time following the subsequent reasoning and derivation of the analytic solution. However, for me, the most important step is missing: deriving why the limit is equal to the Taylor expansion of the $\exp(\cdot)$ function. – jordi Feb 06 '22 at 21:53
  • Fine, do the limit if you must, but make sure your input the right formula, not the nonsense formula you are trying to prove! See my "answer". – Cosmas Zachos Feb 06 '22 at 21:55
  • Would it help you to consider the k=3 case in your corrected formula, and compare powers of θ ? – Cosmas Zachos Feb 06 '22 at 22:55
  • Do you mean I should try to evaluate the limit with $k=3$? I tried that before asking this question, but I wasn't able to see any obvious rule. Although I used SymPy to evaluate the limit. I will try again, but this time with a pen and paper. – jordi Feb 07 '22 at 01:05
  • @CosmasZachos Thank you, I saw your edit and I am still trying to grasp what you wrote. I'm currently brushing up on math and I'll accept an answer once I will understand it. (It will take me some time to process everything, so I apologize if it seems like I'm ignoring you or others who are trying to help me — I appreciate everyone's answer/comments because that way, I get different viewpoints on the problem, which brings me closer to understanding.) – jordi Feb 08 '22 at 14:34
  • 1
    OK, ask if you need further clarifications... – Cosmas Zachos Feb 08 '22 at 14:36
  • Remind you something about taylor? – tryst with freedom May 31 '23 at 17:31
  • @HopefulWhitepiller yes, it does :), I immediately thought of the $SO(3)$ exponential map and this question when you introduced me to "the alternative" way of deriving Taylor expansion. (By "alternative", I mean the one where a function is approximated by gradually infinitesimal movement ("nested integrals" / exponentiation?) instead of the approach of deriving Taylor series by matching derivatives at one point, although I am sure those two derivations are intrinsically two representations of the same thing, but I yet have to fully understand how exactly are they related.) – jordi May 31 '23 at 21:52
  • 1
    Get this book " naive introduction to lie algebra" by stillwell @jordi – tryst with freedom May 31 '23 at 22:10
  • @HopefulWhitepiller thanks for the tip. It's this one, right? Naive Lie Theory – jordi May 31 '23 at 22:15
  • yea, correct @jordi – tryst with freedom May 31 '23 at 22:19
  • the book is quite simple but throws some technical terminology around. If you want more insight into that, check out "Road to Reality by roger penrose", it gives picture book explanations to many of the terms used in the book @jordi – tryst with freedom May 31 '23 at 22:24
  • @HopefulWhitepiller I really appreciate the tips for accessible learning materials :)! When you cited "Road to Reality" in your excellent answer, I immediately started reading it. – jordi May 31 '23 at 22:28
  • 1
    Oh yeah that book is really something it goes from 0 to 100 pretty quick. I tried reading it over 6 months, then I gave up, probably should start reading again. Hit me up in the chatroom if you ever want to discuss! :D – tryst with freedom May 31 '23 at 22:31
  • 1
    On second thought, check out this book's introduction to Lie theory. It's more on topic – tryst with freedom Jun 01 '23 at 10:27

2 Answers2

4

The problem is $e^{X}=I + Y \sin\theta + Y^2 (1-\cos\theta)$ where $Y=\frac{1}{\theta} X$, not $X$ itself.

The identity can be proved by diagonalizing $X$:

$$\lim_{k\rightarrow\infty} (I+\frac{X}{k})^k = I+Y\sin\theta + Y^2(1-\cos\theta)$$

Note that the matrix $X$ really just represents the linear map $\vec v\mapsto (x, y, z)^t\times \vec v$. It's obvious that $(x,y,z)^t$ is an eigenvector of eigenvalue $1$ for both sides. And both sides rotates the orthogonal complement of $(x,y,z)^t$ by angle $\theta$ (in other words, $X$ has $i\theta$ as an eigenvalue, and $Y$ has $i$ as an eigenvalue, and $e^X$ has $e^{i\theta}$ as an eigenvalue). These can be easily confirmed by the diagonalizing the matrix $X$.

Or to put this in a more self-contained and rigorous standing, it's easy to see that for $X\not=0$, it has three distinct eigenvalues $0, i\theta, -i\theta$ with corresponding eigenvectors $v_0, v_1, v_2$ separately. For each eigenvalue $\lambda$ and corresponding eigenvector $v$, $$\lim_{k\rightarrow\infty} (I+\frac{X}{k})^k v=\lim_{k\rightarrow \infty} (I+\frac{X}{k})^{k-1}(1+\frac{\lambda}{k})v = \cdots = \lim_{k\rightarrow\infty} (1+\frac{\lambda}{k})^kv=e^\lambda v$$

And it's easy to check that $$(I+Y\sin\theta + Y^2(1-\cos\theta))v_0=v_0$$ $$(I+Y\sin\theta + Y^2(1-\cos\theta))v_1=(\cos\theta + i\sin\theta)v_1=e^{i\theta}v_1$$ etc. Therefore, the two sides match when acting on a basis of $\mathbb C^3$, hence coincide as matrices.

Or you can just use the ODE theory to justify the (more general) result as done in the references.

Just a user
  • 14,899
  • Despite using $Y$ per your definition in the analytical solution, I still can't get Mathematica nor SymPy to simplify the expression into $\mathbf{0}$. I am using $\lim_{k\to\infty} \left(\mathbf{I} + \frac{X_{SO(3)}}{k}\right)^k = \left(\mathbf{I} + X_{SO(3)} \frac{\sin{\theta}}{\theta} + X^2_{SO(3)} \frac{1 - \cos{\theta}}{\theta^2}\right)$ – jordi Feb 06 '22 at 21:39
  • I don't know much about Mathematica or SymPy, but how they approach the limit? The argument I gave is pretty easy to follow. – Just a user Feb 07 '22 at 00:42
  • 1
    I added a bit more details and that should easily convince you the identity holds. – Just a user Feb 07 '22 at 00:59
  • Thank you, I will carefully re-read your answer and take some time to try to understand it. I also don't know much about the internals of Mathematica or SymPy. I'm just an engineering student, so I wasn't able to fully grasp your answer. May I ask what is the upper index $^t$ in $(x,y,z)^t$? At first, I thought it was a transpose, but that would be an upper-case $^T$. – jordi Feb 07 '22 at 01:02
  • 1
    Yeah, I mean transpose, simply because we consider elements of $\mathbb R^3$ as column vectors. You can ignore that paragraph which involves geometry, but focus on the one that follows which is all about linear algebra. – Just a user Feb 07 '22 at 01:04
1

Response to comment:

As the WP article provided, and your source!, insist, the generators have to be normalized! $$ X_{SO(3)}= \theta K, ~~~~\hbox{s.t.} ~~ \operatorname{Tr}K^2=-2, \\ K^3=-K. $$ It is then self-explanatory (no computer algebra nonsense!) that $$ e^X= e^{\theta K}= I+\sin\theta ~ K + (1-\cos\theta)~ K^2, $$ the celebrated Rodrigues rotation formula, (1840).

Response to further comment

The point of k=3 was to help you appreciate the combinatorics and frame the general case in terms of the binomial theorem, $$ \left ( I + {\theta K\over k}\right ) ^k = \sum_{n=0}^k \frac{k!}{n!(k-n)! k^n} ~\theta^n K^n \\ = I + \left (\theta - \frac{\theta^3}{3!}(1+O(1/k))+...\right )K + \left ({\theta^2\over 2} (1+O(1/k)+...\right ) K^2, $$ to appreciate your limit cannot fail! (mindful of $K^3=-K$, $K^4=-K^2$, $K^5=K$, ... )