Exp Diff
Exp Diff
Ethan Eade
1 Introduction
This document computes
∂
e =0 log exp ( x + e) · exp ( x )−1 (1)
∂e
where exp and log are the exponential mapping and its inverse in a Lie group, and x and e are
elements of the associated Lie algebra.
2 Definitions
Let G be a Lie group, with associated Lie algebra g. Then the exponential map takes algebra elements
to group elements:
exp : g → G (2)
1 2 1
exp ( x ) = I+x+ x + x3 + ... (3)
2! 3!
The adjoint representation Adj of the group linearly transforms the exponential mapping of an alge-
bra element through left multiplication by a group element:
∈ gx (4)
Y ∈ G (5)
Y · exp ( x ) = exp (AdjY · x ) · Y (6)
The adjoint operator in the algebra is the linear operator representing the Lie bracket:
∈ g
x, y (7)
adx · y = x · y − y · x (8)
1
The adjoint operator commutes with the exponential map:
Adjexp(y) = exp ady (9)
f :g → G (10)
∂ f (x)
:g → g (11)
∂x
∂ f (x) ∂
≡ e =0 log f ( x + e) · f ( x )−1 (12)
∂x ∂e
Dexp : g → g (13)
∂ exp ( x )
Dexp ( x ) = (14)
∂x
This isn’t a rigorous derivation (the epsilon-delta proofs required for the two approximation steps
are omitted), but I find it intuitively pleasing. A more rigorous approach would use theorems about
integrated flows on continuous vector fields.
Define F to be exp of x modified by an algebra element e:
∈ g
e (15)
F ( x, e) = exp ( x + e) (16)
We can also take the product of multiple smaller group elements on the same geodesic:
N
1
F ( x, e) = ∏ exp N
· ( x + e) (17)
i =1
1
Letting the number of steps N go arbitrarily large, we can send N2
→ 0. Then we have, to arbitrary
accuracy:
N x e
F ( x, e) ≈ ∏ exp N
· exp
N
(18)
i =1
Each factor of exp Ne can be shifted to the left side of the product by multiplying by the adjoint an
appropriate number of times:
2
AN ≡ Adjexp( x ) (19)
N
" N x
#
1 1 1
F ( x, e) ≈ exp · A N · e · exp · A2N · e · . . . · exp · AN
N ·e · ∏ exp (20)
N N N i =1
N
" # " N #
N x
1
= ∏ exp N · A N · e · ∏ exp N
i
(21)
i =1 i =1
" #
N
1
= ∏ exp N · AiN · e · exp (x) (22)
i =1
By choosing e sufficiently small, the product of exponentials is arbitrarily well approximated by the
exponential of a sum:
!
1 N i
F ( x, e) = exp · ∑ A N · e + O k e k2 · exp ( x ) (23)
N i =1
AN ≡ Adjexp( x ) (24)
N
= exp ad Nx (25)
1
= exp · adx (26)
N
for a Lie group
Taking the ith power:
i
AiN = exp · adx (27)
N
Thus as N → ∞, the sum becomes an integral:
1 N i 1 N
i
N i∑ N i∑
· AN = · exp · adx (28)
=1 =1
N
ˆ 1
→ exp (t · adx ) · dt (29)
0
The integration can be performed on the power series of the matrix exponential.
ˆ ∞
!
1 N i 1
ti · adix
N i∑ ∑ i!
· AN = · dt (30)
=1 0 i =0
∞ i +1
!
t adix 1
= ∑ ( i + 1) ! 0 (31)
i =0
∞
adi
= ∑ (i + x1)! (32)
i =0
3
Substituting into Eq.23:
∞
! !
adi
F ( x, e) = exp ∑ (i + x1)! · e + O kek 2
· exp ( x )
i =0
∂
−1
Dexp ( x ) = e =0
log F ( x, e ) · exp ( x ) (33)
∂e
∞ !
adix
∂
=
∂e e=0 ∑ ( i + 1) !
· e + O k e k 2
(34)
i =0
∞
adi
= ∑ (i + x1)! (35)
i =0
4 Derivative of log
When x = log (exp ( x )), we can invert the function being differentiated in Eq.14:
δ ≡ f (e) = log exp ( x + e) · exp ( x )−1 (36)
e = log (exp (δ) · exp ( x )) − x (37)
In this bijective region of the function, the derivative of the inverse is the inverse of the derivative:
−1
∂e ∂δ
= (39)
∂δ ∂e
−1
Dlog ( x ) = Dexp (x) (40)
5 Special Cases
The infinite series of Eq. 35 can be expressed in closed form in some Lie groups.
4
5.1 SO(3)
The elements of the algebra so(3) are 3 × 3 skew-symmetric matrices, and the adjoint representation
is identical:
ω ∈ <3 (41)
0 − ω3 ω2
ω× = ω3 0 −ω1 ∈ so(3) (42)
− ω2 ω1 0
adω = ω× (43)
2
ad3ω = − kω k · adω (44)
Because the higher powers of ad collapse back to lower powers, we can collect terms in the series:
∞ ∞
! !
(−1)i · kω k2i (−1)i · kω k2i
Dexp (ω ) = I + ∑ · adω + ∑ · ad2ω (45)
i =0
( 2i + 2 ) ! i =0
( 2i + 3 ) !
sinkω k
−
!
1 − cos kω k 1 kω k 2
= I+ · ω× + · ω× (46)
k ω k2 k ω k2
Note that
2
ω× = ωω T − kω k2 I (47)
sinkω k
1−
!
1 − cos kω k kω k
· ωω T − kω k2 I
Dexp (ω ) = I+ · ω× + (48)
k ω k2 kω k 2
sinkω k
1−
!
sin kω k 1 − cos kω k kω k · ωω T
= ·I+ · ω× + (49)
kω k k ω k2 kω k 2
sin θ
aθ = (50)
θ
1 − cos θ
bθ = (51)
θ2
1 − aθ
cθ = (52)
θ2
Dexp (ω ) = akω k · I + bkω k · ω× + ckω k · ωω T (53)
5
5.1.2 Derivative of log
−1
Dlog (ω ) = Dexp (ω ) (54)
−1 1 2
Dexp (ω ) = I − ω× + ekω k ω× (55)
2
bθ − 2cθ
eθ = (56)
2aθ
bθ − 12 aθ
= (57)
1 − cos θ
Depending on the value of θ, the more convenient of Eq. 56 or Eq.57 should be used to compute eθ .
5.2 SE(3)
u, ω ∈ <3 (58)
θ ≡ kω k (59)
ω× u
x = ∈ se (3) (60)
0 0
ω× u×
adx = (61)
0 ω×
2
ω× ( ω× u× + u × ω× )
ad2x = 2 (62)
0 ω×
0 ω×
ad3x = −θ 2 · adx − 2 ω T u (63)
0 0
aθ − 2bθ bθ − 3cθ
2
Q (ω ) ≡ · ωx + · ω× (64)
θ2 θ2
0 Q (ω )
2 T
Dexp ( x ) = I + aθ · adx + cθ · adx + ω u · (65)
0 0
bθ · u × + c θ · ( ω × u × + u × ω × ) + ω T u · Q ( ω )
Dexp (ω )
= (66)
0 Dexp (ω )
6
ω× u× + u× ω× = ωu T + uω T − 2 ω T u I (67)
W (ω ) ≡ −2cθ · I + Q (ω ) (68)
aθ − 2bθ bθ − 3cθ
T 2
= −2cθ · I + · ω × + · ωω − θ I (69)
θ2 θ2
aθ − 2bθ bθ − 3cθ
= ( c θ − bθ ) · I + · ω × + · ωω T (70)
θ2 θ2
bθ · u× + cθ · ωu T + uω T + ω T u · W (ω )
Dexp (ω )
Dexp ( x ) = (71)
0 Dexp (ω )
...has an inverse:
A −1 − A −1 · B · A −1
M −1 = (73)
0 A −1
B ≡ bθ · u× + cθ · ωu T + uω T + ω T u · W (ω ) (74)
!
−1 ( ω ) − D −1 ( ω ) · B · D −1 ( ω )
Dexp
−1 exp exp
Dexp ( x ) = −1 ( ω ) (75)
0 Dexp
5.3 SE(2)
x
y ∈ <3 (76)
θ
0 −θ x
m = θ 0 y ∈ se (2) (77)
0 0 0
7
0 −θ y
adm = θ 0 −x (78)
0 0 0
2
−θ 0 θx
ad2m = 0 −θ 2 θy (79)
0 0 0
ad3m = −θ 3 adm (80)
∞ ∞
! !
(−1)i · θ 2i (−1)i · θ 2i
Dexp (m) = I + ∑ adm + ∑ ad2m (81)
i =0
( 2i + 2 ) ! i =0
( 2i + 3 ) !
!
sin θ
1 − cos θ 1 −
= I+ · adm + θ
· ad2m (82)
θ2 θ2
aθ −θbθ (cθ x + bθ y)
= θbθ aθ ( c θ y − bθ x ) (83)
0 0 1
...with inverse:
A −1 − A −1 · v
Dlog = (85)
0 1
5.4 Sim(2)
x
y
θ ∈ <4 (86)
λ
0 −θ x
m = θ 0 y ∈ sim (2) (87)
0 0 −λ
8
λ −θ y −x
θ λ −x −y
adm =
0
(88)
0 0 0
0 0 0 0
Q P
= (89)
0 0
Q n −1 · P
n
Q
adnm = (90)
0 0
√
To compute Dexp we can diagonalize Q by eigendecomposition (i ≡ −1):
Q = V · D · V∗ (91)
1 1 1
V ≡ √ (92)
2 i −i
λ − θi
E ≡ (93)
λ + θi
∞ j
adm
Dexp (m) = ∑ ( j + 1) ! (94)
j =0
∞
Q Q j −1 · P
j
1
= ∑ ( j + 1) ! 0 0
(95)
j =0
Qj Qj
h i h i !
∑∞
j =0 ( j +1) ! ∑ ∞
j =0 ( j +2) ! · P
= (96)
0 0
h i h i !
V · ∑∞ V · ∑∞
j Ej
E ∗ ∗
= j =0 ( j +1) ! · V j =0 ( j +2) ! · V · P (97)
0 0
− 1 ∗ V · E · (exp ( E) − I − E) · V ∗ · P
− 2
V · E · (exp ( E) − I) · V
= (98)
0 0
1 λ + θi
E −1 = (99)
λ + θ2
2 λ − θi
p −q g −h
·P
Dexp (m) = q p h g (100)
0 I
1 h i
p ≡ eλ · (λ cos θ + θ sin θ ) − λ (101)
λ2 + θ 2
9
1 h i
q ≡ eλ · (λ sin θ − θ cos θ ) + θ (102)
λ + θ2
2
1 1
g ≡ · (λp + θq) − λ (103)
λ2 + θ 2 λ2 + θ 2
1 1
h ≡ · (λq − θ p) + θ (104)
λ2 + θ 2 λ2 + θ 2
a
p ≡ 1+ (105)
2
b
q ≡ (106)
2
1 a
g ≡ + (107)
2 6
b
h ≡ (108)
6
...with inverse:
A −1 − A −1 · B
Dlog = (110)
0 I
10