An introduction to optimization on smooth...

305
NICOLAS BOUMAL AN INTRODUCTION TO OPTIMIZATION ON SMOOTH MANIFOLDS THIS VERSION COMPILED: MAY 25, 2020

Transcript of An introduction to optimization on smooth...

Page 1: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

N I C O L A S B O U M A L

A N I N T R O D U C T I O N T OO P T I M I Z AT I O N O NS M O O T H M A N I F O L D S

T H I S V E R S I O N C O M P I L E D : M AY 2 5 , 2 0 2 0

Page 2: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian
Page 3: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

Contents

Preface 7

1 Introduction 9

2 Simple examples 13

2.1 Logistic regression 13

2.2 Sensor network localization from directions 15

2.3 Single extreme eigenvalue or singular value 16

2.4 Dictionary learning 17

2.5 Principal component analysis 19

2.6 Synchronization of rotations 22

2.7 Low-rank matrix completion 23

2.8 Gaussian mixture models 24

2.9 Smooth semidefinite programs 25

3 Embedded geometry: first order 27

3.1 Euclidean space 30

3.2 Embedded submanifolds of Euclidean space 33

3.3 Smooth maps on embedded submanifolds 40

3.4 The differential of a smooth map 41

3.5 Vector fields and the tangent bundle 43

3.6 Moving on a manifold: retractions 45

3.7 Riemannian manifolds and submanifolds 47

3.8 Riemannian gradients 48

3.9 Local frames* 52

3.10 Notes and references 54

Page 4: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

4

4 First-order optimization algorithms 59

4.1 A first-order Taylor expansion on curves 60

4.2 First-order optimality conditions 61

4.3 Riemannian gradient descent 62

4.4 Regularity conditions and iteration complexity 65

4.5 Backtracking line-search 67

4.6 Local convergence* 70

4.7 Computing gradients 71

4.8 Numerically checking a gradient 78

4.9 Notes and references 79

5 Embedded geometry: second order 81

5.1 The case for a new derivative of vector fields 83

5.2 Another look at differentials of vector fields in linear spaces 84

5.3 Differentiating vector fields on manifolds: connections 84

5.4 Riemannian connections 86

5.5 Riemannian Hessians 91

5.6 Connections as pointwise derivatives* 94

5.7 Differentiating vector fields on curves 98

5.8 Acceleration and geodesics 102

5.9 A second-order Taylor expansion on curves 103

5.10 Second-order retractions 104

5.11 Notes and references 107

6 Second-order optimization algorithms 113

6.1 Second-order optimality conditions 113

6.2 Riemannian Newton’s method 114

6.3 Computing Newton steps: conjugate gradients 116

6.4 Riemannian trust regions 122

6.5 The trust-region subproblem: truncated CG 134

6.6 Local convergence 136

6.7 Numerically checking a Hessian 138

6.8 Notes and references 139

Page 5: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

5

7 Embedded submanifolds: examples 141

7.1 Euclidean spaces as manifolds 141

7.2 The unit sphere in a Euclidean space 142

7.3 The Stiefel manifold: orthonormal matrices 144

7.4 The orthogonal group and rotation matrices 148

7.5 Fixed-rank matrices 151

7.6 The hyperboloid model 158

7.7 Manifolds defined by h(x) = 0 161

7.8 Notes and references 164

8 General manifolds 167

8.1 A permissive definition 167

8.2 The atlas topology, and a final definition 172

8.3 Embedded submanifolds are manifolds 175

8.4 Tangent vectors and tangent spaces 178

8.5 Differentials of smooth maps 180

8.6 Tangent bundles and vector fields 181

8.7 Retractions 182

8.8 Coordinate vector fields as local frames 183

8.9 Riemannian metrics and gradients 184

8.10 Lie brackets as vector fields 185

8.11 Riemannian connections and Hessians 186

8.12 Covariant derivatives, velocity and geodesics 188

8.13 Taylor expansions and second-order retractions 189

8.14 Submanifolds embedded in manifolds 189

8.15 Notes and references 193

9 Quotient manifolds 195

9.1 A definition and a few facts 199

9.2 Quotient manifolds through group actions 202

9.3 Smooth maps to and from quotient manifolds 205

Page 6: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

6

9.4 Tangent, vertical and horizontal spaces 207

9.5 Vector fields 209

9.6 Retractions 213

9.7 Riemannian quotient manifolds 214

9.8 Gradients 216

9.9 A word about Riemannian gradient descent 217

9.10 Connections 219

9.11 Hessians 221

9.12 A word about Riemannian Newton’s method 222

9.13 Total space embedded in a linear space 224

9.14 Horizontal curves and covariant derivatives 227

9.15 Acceleration, geodesics and second-order retractions 228

9.16 Notes and references 231

10 Additional tools 237

10.1 Distance, geodesics and completeness 238

10.2 Exponential and logarithmic maps 240

10.3 Parallel transport 246

10.4 Lipschitz conditions and Taylor expansions 249

10.5 Transporters 259

10.6 Finite difference approximation of the Hessian 265

10.7 Tensor fields and their covariant differentiation 268

10.8 Notes and references 274

11 Geodesic convexity 279

11.1 Convex sets and functions 279

11.2 Geodesically convex sets and functions 282

11.3 Differentiable geodesically convex functions 286

11.4 Positive reals and geometric programming 288

11.5 Positive definite matrices 292

11.6 Notes and references 293

Bibliography 297

Page 7: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

Preface

This book grew out of the lecture notes for MAT–APC 588, Topics in Nu-merical Analysis: Optimization on Smooth Manifolds, taught in the springsemesters of 2019 and 2020 at Princeton University.

Over the last few decades, optimization on manifolds has garneredincreasing interest in research and engineering, recognized as a wide,beautiful and effective generalization of unconstrained optimization.Undoubtedly, this ascension was accelerated by the release1 in 2008

1 P.-A. Absil, R. Mahony, and R. Sepul-chre. Optimization Algorithms on MatrixManifolds. Princeton University Press,Princeton, NJ, 2008

of the de facto reference book on the matter, Optimization algorithmson Riemannian manifolds by Pierre-Antoine Absil, Robert Mahony andRodolphe Sepulchre.

Optimization problems on smooth manifolds arise often in engi-neering applications, including in machine learning, computer vision,signal processing, dynamical systems and scientific computing. Yet,engineering programs seldom include training in differential geome-try. Furthermore, existing textbooks on this topic usually have a focusmore aligned with the interests of mathematicians than with the needsof engineers and applied mathematicians.

One of my goals in writing this book is to offer a different, if attimes unorthodox, introduction to differential geometry. Definitionsand tools are introduced in a need-based order for optimization. Westart with a restricted setting—that of embedded submanifolds of lin-ear spaces—which allows us to define all necessary concepts in directreference to their usual counterparts from linear spaces. This coversmost applications.

In what is perhaps the clearest departure from standard exposition,charts and atlases are not introduced until quite late. The reason fordoing so is twofold: pedagogically, charts and atlases are more ab-stract than what is needed to work on embedded submanifolds; andpragmatically, charts are seldom if ever useful in practice. It would beunfortunate to give them center stage.

Of course, charts and atlases are the right tool to provide a uni-fied treatment of all smooth manifolds in an intrinsic way. They areintroduced eventually, at which point it becomes possible to discussquotient manifolds: a powerful language to understand symmetry in

Page 8: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

8

optimization. Perhaps this abstraction is necessary to fully appreciatethe depth of optimization on manifolds as more than just a fancy toolfor constrained optimization in linear spaces, and truly a mathemati-cally natural setting for unconstrained optimization in a wider sense.

Readers are assumed to be comfortable with linear algebra and mul-tivariable calculus. For important computational aspects, it is helpfulto have notions of numerical linear algebra, for which I recommend theapproachable textbook by Trefethen and Bau.2 Central to the raison 2 L.N. Trefethen and D. Bau. Numerical

linear algebra. Society for Industrial andApplied Mathematics, 1997

d’être of this book, there are no prerequisites in differential geometryor optimization.

Building on these expectations, the aim is to give full proofs andjustification for all concepts that are introduced, at least for the case ofsubmanifolds of linear spaces. The hope is to equip readers to pursueresearch projects in (or using) optimization on manifolds, involvingboth mathematical analysis and efficient implementation.

While the exposition is original in several ways, and some resultsare hard to locate in the literature, few results are new. The main dif-ferential geometry references I used are the fantastic books by Lee,3,4 3 J.M. Lee. Introduction to Smooth Man-

ifolds, volume 218 of Graduate Texts inMathematics. Springer-Verlag New York,2nd edition, 2012

4 J.M. Lee. Introduction to RiemannianManifolds, volume 176 of Graduate Textsin Mathematics. Springer, 2nd edition,2018

O’Neill,5 and Brickell and Clark.6

5 B. O’Neill. Semi-Riemannian geometry:with applications to relativity, volume 103.Academic Press, 1983

6 F. Brickell and R.S. Clark. Differentiablemanifolds: an introduction. Van NostrandReinhold, 1970

A number of people offered decisive comments. I thank Pierre-Antoine Absil (who taught me most of this) and Rodolphe Sepulchrefor their input at the early stages of planning for this book, as well as(in no particular order) Stephen McKeown, Eitan Levin, Chris Crisci-tiello, Razvan-Octavian Radu, Joe Kileel, Bart Vandereycken, BamdevMishra and Suvrit Sra, for numerous conversations that led to directimprovements. I am also indebted to the mathematics department atPrinceton University for supporting me while I was writing. On adistinct note, I also thank Bil Kleb, Bill Wood and Kevin Godby fordeveloping and freely distributing tufte-latex: the style files used here.

This book is still evolving. Your input on all aspects, however majoror minor, is immensely welcome. Please feel free to contact me.

Nicolas Boumal Princeton, New Jersey,[email protected] May 2020

Page 9: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

1Introduction

Optimization is a staple of mathematical modeling. In this rich frame-work, we consider a set S called the search space—it contains all possibleanswers to our problem, good and bad—and a cost function f : S → R

which associates a cost f (x) to each element x of S. The goal is to findx ∈ S such that f (x) is as small as possible: a best answer. We write

minx∈S

f (x)

to represent both the optimization problem and the minimal cost (if itexists). Occasionally, we wish to denote specifically the subset of S forwhich the minimal cost is attained; the standard notation is:

arg minx∈S

f (x),

bearing in mind that this set might be empty. In Chapter 2, we discussa few simple examples relevant to our discussion.

Rarely, optimization problems admit an analytical solution. Typi-cally, we need numerical algorithms to (try to) solve them. Often, thebest algorithms exploit mathematical structure in S and f .

An important special case arises when S is a linear space such asRn. Minimizing a function f in Rn is called unconstrained optimizationbecause the variable x is free to move around Rn, unrestricted. If fis sufficiently differentiable and Rn is endowed with an inner product(that is, if we make it into a Euclidean space), then we have a notionof gradient and perhaps even a notion of Hessian for f . These objectsgive us a firm understanding of how f behaves locally around anygiven point. Famous algorithms such as gradient descent and New-ton’s method exploit these objects to move around Rn efficiently insearch of a solution. Notice that the Euclidean structure of Rn andthe smoothness of f are irrelevant to the definition of the optimizationproblem: they are merely structures that we may (and as experienceshows: we should) use algorithmically to our advantage.

Beyond linearity, we focus on smoothness as the key structure toexploit: we assume the set S is a smooth manifold and the function f

Page 10: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

10 an introduction to optimization on smooth manifolds

is smooth on S. This calls for precise definitions, constructed first inChapter 3. Intuitively, one can think of smooth manifolds as surfacesin Rn that do not have kinks or boundaries, such as a plane, a sphere,a torus, or a hyperboloid for example.

We could think of optimization over such surfaces as constrained, inthe sense that x is not allowed to move freely in Rn: it is constrained toremain on the surface. Alternatively, and this is the viewpoint favoredhere, we can think of this as unconstrained optimization, in a worldwhere the smooth surface is the only thing that exists: not unlike anant walking on a large ball might feel unrestricted in its movements,aware only of the sphere it lives on; or like the two-dimensional inhab-itants of Flatland1 find it hard to imagine that there exists such a thing 1 E. Abbott. Flatland: A Romance of Many

Dimensions. Seeley & Co., 1884as a third dimension, feeling free as birds in their own subspace.A natural question then is: can we generalize the standard algo-

rithms from unconstrained optimization to handle the broader class ofoptimization over smooth manifolds? The answer is yes, going backto the 70s,2,3 the 80s4 and the 90s,5,6,7,8,9 and generating a significant 2 D.G. Luenberger. The gradient projec-

tion method along geodesics. Manage-ment Science, 18(11):620–631, 1972

3 A. Lichnewsky. Une méthode de gra-dient conjugué sur des variétés: Appli-cation à certains problèmes de valeurspropres non linéaires. Numerical Func-tional Analysis and Optimization, 1(5):515–560, 1979

4 D. Gabay. Minimizing a differentiablefunction over a differential manifold.Journal of Optimization Theory and Appli-cations, 37(2):177–219, 1982

5 C. Udriste. Convex functions and opti-mization methods on Riemannian manifolds,volume 297 of Mathematics and its applica-tions. Kluwer Academic Publishers, 1994

6 S.T. Smith. Optimization techniques onRiemannian manifolds. Fields InstituteCommunications, 3(3):113–135, 1994

7 U. Helmke and J.B. Moore. Optimizationand dynamical systems. Springer Science& Business Media, 1996

8 T. Rapcsák. Smooth Nonlinear Optimiza-tion in Rn, volume 19 of Nonconvex Op-timization and Its Applications. Springer,1997

9 A. Edelman, T.A. Arias, and S.T. Smith.The geometry of algorithms with or-thogonality constraints. SIAM jour-nal on Matrix Analysis and Applications,20(2):303–353, 1998

amount of research in the past two decades.To generalize algorithms such as gradient descent and Newton’s

method, we need a proper notion of gradient and Hessian on smoothmanifolds. In the linear case, this required the introduction of an innerproduct: a Euclidean structure. In our more general setting, we lever-age the fact that smooth manifolds can be linearized locally aroundevery point. The linearization at x is called the tangent space at x.By endowing each tangent space with its own inner product (varyingsmoothly with x, in a sense to be made precise), we construct what iscalled a Riemannian structure on the manifold, turning it into a Rieman-nian manifold.

A Riemannian structure is sufficient to define gradients and Hes-sians on the manifold, paving the way for optimization. There mayexist more than one Riemannian structure on the same manifold, lead-ing to different algorithmic performance. In that sense, identifying auseful structure is part of the algorithm design—as opposed to beingpart of the problem formulation, which ended with the definition ofthe search space (as a crude set) and a cost function.

Chapter 2 covers a few simple applications, mostly to give a senseof how manifolds come up. We then go on to define smooth manifoldsin a restricted10 setting in Chapter 3, where manifolds are embedded in

10 Some readers may know Whitney’scelebrated embedding theorems, whichstate that any smooth manifold can beembedded in a linear space [BC70, p82].The mere existence of an embedding,however, is of little use for computation.

a linear space, much like the unit sphere in three-dimensional space.In this context, we define notions of smooth functions, smooth vectorfields, gradients and retractions (a means to move around on a mani-fold). These tools are sufficient to design and analyze a first optimiza-tion algorithm in Chapter 4: Riemannian gradient descent. As readersprogress through these chapters, it is the intention that they also read

Page 11: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

introduction 11

bits of Chapter 7 from time to time: useful embedded manifolds arestudied there in detail. Chapter 5 provides more advanced geometrictools for embedded manifolds, including the notions of Riemannianconnections and Hessians. These are put to good use in Chapter 6 todesign and analyze Riemannian versions of Newton’s method and thetrust-region method.

Ch. 3

start

Ch. 7 Ch. 4

Ch. 5 Ch. 6

Ch. 8 Ch. 9

Ch. 10

Ch. 11

Figure 1.1: An arrow from A to B meansit is preferable to read chapter A beforereading chapter B. Chapter 7 is meant foron-and-off reading, starting with Chap-ter 3 and continuing into Chapter 5.

The linear embedding space is useful for intuition, to simplify defini-tions, and to design tools. Notwithstanding, all the tools and conceptswe define in the restricted setting are intrinsic, in the sense that theyare well defined regardless of the embedding space. We make thisprecise much later, in Chapter 8, where all the tools from Chapters 3

and 5 are redefined in the full generality of standard treatments of dif-ferential geometry. This is also the time to discuss topological issuesto some extent. Generality notably makes it possible to discuss a moreabstract class of manifolds called quotient manifolds in Chapter 9. Quo-tient manifolds offer a beautiful way to harness symmetry, so commonin applications. In their treatment, we follow Absil et al.11 11 P.-A. Absil, R. Mahony, and R. Sepul-

chre. Optimization Algorithms on MatrixManifolds. Princeton University Press,Princeton, NJ, 2008

In closing, Chapter 10 offers a limited treatment of more advancedgeometric tools such as the Riemannian distance, geodesics, the ex-ponential map and its inverse, parallel transports and transporters,notions of Lipschitz continuity, finite differences, and covariant differ-entiation of tensor fields. Then, Chapter 11 covers elementary notionsof convexity on Riemannian manifolds with simple implications foroptimization.

Little to no space is devoted to the use of existing software packages manopt.orgpymanopt.orgmanoptjl.org

for optimization on manifolds. At the risk of revealing personal biases,see for example Manopt (Matlab), PyManopt (Python) and Manopt.jl(Julia). Such packages may significantly speed up the deployment oftools presented here in new situations.

More than 150 years ago, Riemann invented a new kind of ge-ometry for the abstract purpose of understanding curvature in high-dimensional spaces. Today, this geometry plays a central role in thedevelopment of efficient algorithms to tackle modern applications Rie-mann himself—arguably—could have never envisioned. Through thisbook, my hope is to contribute to making this singularly satisfyingsuccess of mathematics approachable to a wider audience, with an eyeto turn geometry into algorithms.

Page 12: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian
Page 13: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

2Simple examples

Before formally defining what manifolds are, and before introducingany particular algorithms, this chapter surveys simple problems thatare naturally modeled as optimization on manifolds. These problemsare motivated by applications in various scientific and technologicaldomains. We introduce them chiefly to illustrate how manifolds ariseand to motivate the mathematical abstractions in subsequent chapters.

2.1 Logistic regression

Given a large number of images, determine automatically which onescontain the digit 7, and which do not. Given numerical data aboutmany patients, determine which are at risk of a certain health hazard,and which are not. Given word counts and other textual statistics froma large number of e-mails, identify which ones are spam. In all cases,examples are elements of a linear space E (for grayscale images of n×npixels, E = Rn×n; for other scenarios, E = Rn) and each example takeson one of two possible labels: 0 or 1, corresponding to “seven or not,”“at risk or safe,” “spam or legitimate.” These tasks are called binaryclassification.

One popular technique to address binary classification is logistic re-gression. Equip the linear space E with an inner product 〈·, ·〉. The For inner products, see Definition 3.1.

model (the assumption) is that there exists an element θ ∈ E such that,given an example x ∈ E , the probability that its label y is either 0 or 1is given in terms of θ as follows:

Read: the probability that y is 0 or 1,given x and θ.

Prob[y = 1|x, θ] = σ(〈θ, x〉), and

Prob[y = 0|x, θ] = 1− σ(〈θ, x〉) = σ(− 〈θ, x〉),

where σ : R→ (0, 1) is the logistic function (a sigmoid function):

σ(z) =1

1 + e−z .

Page 14: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

14 an introduction to optimization on smooth manifolds

We can rewrite both identities in one, as a function of y ∈ 0, 1:

Prob[y|x, θ] = σ(〈θ, x〉)yσ(− 〈θ, x〉)1−y.

In other words, if we have θ, then we can easily compute the probabil- If we have θ, and if the logistic model isaccurate. . .ity that a new example x belongs to either class. The task is to learn θ

from given, labeled examples.Let x1, . . . , xm ∈ E be given examples, and let y1, . . . , ym ∈ 0, 1

be their labels. For any candidate θ, we can evaluate how compatibleit is with the data under our model by evaluating the correspondinglikelihood function. Assuming the observed examples are independent,the likelihood of θ is:

L(θ) =m

∏i=1

Prob[yi|xi, θ] =m

∏i=1

σ(〈θ, xi〉)yi σ(− 〈θ, xi〉)1−yi .

Intuitively, if L(θ) is large, then θ is doing a good job at classifying theexamples. The maximizer of the function over θ ∈ E is the maximumlikelihood estimator for θ. Equivalently, we may maximize the logarithmof L, known as the log-likelihood. Still equivalently, it is traditional tominimize the negative of the log-likelihood:

`(θ) = − log(L(θ)) = −m

∑i=1

yi log(σ(〈θ, xi〉)) + (1− yi) log(σ(− 〈θ, xi〉)) .

For reasons that we do not get into, it is important to penalize θs thatare too large, for example in the sense of the norm induced by the innerproduct: ‖θ‖ =

√〈θ, θ〉. The competing desires between attaining a

small negative log-likelihood and a small norm for θ are balanced witha regularization weight λ > 0 to be chosen by the user. Overall, logisticregression comes down to solving the following optimization problem:

minθ∈E

`(θ) + λ‖θ‖2.

This problem falls within our framework as the search space E is alinear manifold: admittedly the simplest example of a manifold. Thecost function f (θ) = `(θ) + λ‖θ‖2 is smooth. Furthermore, it is convex:a highly desirable property, but a rare occurrence in our framework.

In closing, we note that, to address possible centering issues in thedata, it is standard to augment the logistic model slightly, as:

Prob[y = 1|x, θ] = σ(θ0 + 〈θ, x〉),

with θ0 ∈ R and θ ∈ E . This can be accommodated seamlessly in theabove notation by replacing the linear space with R×E , examples with(1, xi), the parameter with (θ0, θ), and adapting the metric accordingly.

Page 15: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

simple examples 15

2.2 Sensor network localization from directions

Consider n sensors located at unknown positions t1, . . . , tn in Rd. Weaim to locate the sensors, that is, estimate the positions ti, based onsome directional measurements. Specifically, for some pairs of sensors(i, j) ∈ G, we receive a noisy direction measurement from ti to tj:

vij ≈ti − tj

‖ti − tj‖,

where ‖x‖ =√

x21 + · · ·+ x2

d is the Euclidean norm on Rd induced by

the inner product 〈u, v〉 = u>v = u1v1 + · · ·+ udvd.There are two fundamental ambiguities in this task. First, direc-

tional measurements reveal nothing about the global location of thesensors: translating the sensors as a whole does not affect pairwisedirections. Thus, we may assume without loss of generality that thesensors are centered:

t1 + · · ·+ tn = 0.

Second, the measurements reveal nothing about the global scale of thesensor arrangement. Specifically, scaling all positions ti by a scalarα > 0 as αti has no effect on the directions separating the sensors, sothat the true scale cannot be recovered from the measurements. It isthus legitimate to fix the scale in some arbitrary way. One clever wayis to assume the following:1 1 P. Hand, C. Lee, and V. Voroninski.

ShapeFit: Exact location recovery fromcorrupted pairwise directions. Commu-nications on Pure and Applied Mathematics,71(1):3–50, 2018

∑(i,j)∈G

⟨ti − tj, vij

⟩= 1.

Given a tentative estimator t1, . . . , tn ∈ Rd for the locations, we mayassess its compatibility with the measurement vij by computing

‖(ti − tj)−⟨ti − tj, vij

⟩vij‖.

Indeed, if ti − tj and vij are aligned in the same direction, this eval-uates to zero. Otherwise, it evaluates to a positive number, growingas alignment degrades. Combined with the symmetry-breaking con-ditions, this suggests the following formulation for sensor networklocalization from pairwise direction measurements:

mint1,...,tn∈Rd

∑(i,j)∈G

‖(ti − tj)−⟨ti − tj, vij

⟩vij‖2

subject to t1 + · · ·+ td = 0 and ∑(i,j)∈G

⟨ti − tj, vij

⟩= 1.

The role of the affine constraint is clear: it excludes t1 = · · · = tn = 0,which would otherwise be optimal.

Page 16: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

16 an introduction to optimization on smooth manifolds

Grouping the variables as the columns of a matrix, we find that thesearch space for this problem is an affine subspace of Rd×n: this too isa linear manifold. It is also an embedded submanifold of Rd×n. Hence, itfalls within our framework.

With the simple cost function as above, this problem is in fact a con-vex quadratic minimization problem on an affine subspace. As such,it admits an explicit solution which merely requires solving a linearsystem. Optimization algorithms can be used to solve this system im-plicitly. More importantly, the power of optimization algorithms liesin the flexibility that they offer: alternative cost functions may be usedto improve robustness against specific noise models for example. Inparticular, see the paper by Hand et al. (which is the source for thispresentation of the problem) for a cost function robust against outliers;the resulting algorithm is called ShapeFit.

2.3 Single extreme eigenvalue or singular value

Let Sym(n) denote the set of real, symmetric matrices of size n. By More generally, we may use any innerproduct on a finite dimensional linearspace and consider a linear operator self-adjoint with respect to that inner prod-uct: see Definition 3.3.

the spectral theorem, a matrix A ∈ Sym(n) admits n real eigenval-ues λ1 ≤ · · · ≤ λn and corresponding real, orthonormal eigenvectorsv1, . . . , vn ∈ Rn, where orthonormality is assessed with respect to thestandard inner product over Rn: 〈u, v〉 = u1v1 + · · ·+ unvn.

For now, we focus on computing one extreme eigenpair of A: (λ1, v1)

or (λn, vn) will do. Let Rn∗ denote the set of nonzero vectors in Rn. It

is well-known that the Rayleigh quotient, We will rediscover the properties of theRayleigh quotient through the prism ofoptimization on manifolds as a runningexample.r : Rn

∗ → R : x 7→ r(x) =〈x, Ax〉〈x, x〉 ,

attains its extreme values when x is aligned with ±v1 or ±vn, and thatthe corresponding value of the quotient is λ1 or λn.

Say we are interested in the smallest eigenvalue, λ1. Then, we mustsolve the following optimization problem:

minx∈Rn∗

〈x, Ax〉〈x, x〉 .

The set Rn∗ is open in Rn: it is an open submanifold of Rn. Optimization

over an open set has its challenges (more on this later). Fortunately,we can easily circumvent these issues in this instance.

Since the Rayleigh quotient is invariant under scaling, that is, sincer(αx) = r(x) for all nonzero real α, we may fix the scale arbitrarily.Given the form of the quotient, one particularly convenient way is torestrict our attention to unit-norm vectors: ‖x‖2 = 〈x, x〉 = 1. The setof such vectors is the unit sphere in Rn:

Sn−1 = x ∈ Rn : ‖x‖ = 1 .

Page 17: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

simple examples 17

This is an embedded submanifold of Rn. Our optimization problem be-comes:

minx∈Sn−1

〈x, Ax〉 .

This is perhaps the simplest non-trivial instance of an optimizationproblem on a manifold: we use it recurringly to illustrate concepts asthey occur.

Similarly to the above, we may compute the largest singular valueof a matrix M ∈ Rm×n together with associated left- and right-singularvectors by solving

maxx∈Sm−1,y∈Sn−1

〈x, My〉 .

This is the basis of principal component analysis: see also below. Thesearch space is a Cartesian product of two spheres: this too is a mani-fold; specifically, an embedded submanifold of Rm ×Rn. In general:

Products of manifolds are manifolds.

This is an immensely useful property.

2.4 Dictionary learning

JPEG and its more recent version JPEG 2000 are some of the mostcommonly used compression standards for photographs. At their core,these algorithms rely on basis expansions: discrete cosine transformsfor JPEG, and wavelet transforms for JPEG 2000. That is, an image(or rather, each patch of the image) is written as a linear combinationof a fixed collection of basis images. To fix notations, say an imageis represented as a vector y ∈ Rd (its pixels rearranged into a singlecolumn vector) and the basis images are b1, . . . , bd ∈ Rd (each of unitnorm). There exists a unique set of coordinates c ∈ Rd such that:

y = c1b1 + · · · cdbd.

Since the basis images are fixed (and known to anyone creating orreading image files), it is equivalent to store y or c.

The basis is designed carefully with two goals in mind. First, thetransform between y and c should be fast to compute (one good start-ing point to that effect is orthogonality). Second, images encounteredin practice should lead to many of the coefficients ci being zero, orclose to zero. Indeed, to recover y, it is only necessary to record thenonzero coefficients. To compress further, we may also decide not tostore the small coefficients: if so, y can still be reconstructed approxi-mately. Beyond compression, another benefit of sparse expansions is

Page 18: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

18 an introduction to optimization on smooth manifolds

that they can reveal structural information about the contents of theimage, which in turn may be beneficial for tasks such as classification.

In dictionary learning, we focus on the second goal. As a key depar-ture from the above, the idea here is not to design a basis by hand,but rather to learn a good basis from data automatically. This way, wemay exploit structural properties of images that come up in a partic-ular application. For example, it may be the case that photographsof faces can be expressed more sparsely in a dedicated basis, com-pared to a standard wavelet basis. Pushing this idea further, we relaxthe requirement of identifying a basis, instead allowing ourselves topick more than d images for our expansions. The collection of imagesb1, . . . , bn ∈ Rd forms a dictionary. Its elements are called atoms, andthey normally span Rd in an over-complete way, meaning any imagey can be expanded into a linear combination of atoms in more thanone way. The aim is that at least one of these expansions should besparse, or have small coefficients. For the magnitudes of coefficientsto be meaningful, we further require atoms to have the same norm:‖bi‖ = 1 for all i.

Thus, given a collection of k images y1, . . . , yk ∈ Rd, the task indictionary learning is to find a dictionary b1, . . . , bn ∈ Rd such that(as much as possible) each image yi is a sparse linear combinationof atoms. Collect the input images as the columns of a data ma-trix Y ∈ Rd×k, and the atoms into a matrix D ∈ Rd×n (to be deter-mined). Expansion coefficients for the images in this dictionary formthe columns of a matrix C ∈ Rn×k so that

Y = DC.

Typically, many choices of C are possible. We aim to pick D such thatthere exists a valid (or approximately valid) choice of C with numerouszeros. Let ‖C‖0 denote the number of entries of C different from zero.Then, one possible formulation of dictionary learning balances bothaims with a parameter λ > 0 as (with b1, . . . , bn the columns of D):

minD∈Rd×n ,C∈Rn×k

‖Y− DC‖2 + λ‖C‖0 (2.1)

subject to ‖b1‖ = · · · = ‖bn‖ = 1.

The matrix norm ‖ · ‖ is the Frobenius norm, induced by the standardinner product 〈U, V〉 = Tr(U>V).

Evidently, allowing the dictionary to be overcomplete (n > d) helpssparsity. An extreme case is to set n = k, in which case an optimalsolution consists in letting D be Y with normalized columns. Then,each image can be expressed with a single nonzero coefficient (C isdiagonal). This is useless of course, if only because both parties ofthe communication must have access to the (possibly huge) dictionary,

Page 19: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

simple examples 19

and because this choice may generalize poorly when presented withnew images. Interesting scenarios involve n much smaller than k.

The search space in D is a product of several spheres, which is anembedded submanifold of Rd×n called the oblique manifold:

OB(d, n) = (Sd−1)n =

X ∈ Rd×n : diag(X>X) = 1

,

where 1 ∈ Rn is the all-ones vector and diag : Rn×n → Rn extractsthe diagonal entries of a matrix. The search space in C is the linearmanifold Rn×k. Overall, the search space of the dictionary learningoptimization problem is

OB(d, n)×Rn×k,

which is an embedded submanifold of Rd×n ×Rn×k.We note in closing that the cost function in (2.1) is discontinuous

because of the term ‖C‖0, making it hard to optimize. A standard re-formulation replaces the culprit with ‖C‖1: the sum of absolute valuesof the entries of C. This is continuous but nonsmooth. A possible fur-ther step then is to smooth the cost function, for example exploitingthat |x| ≈

√x2 + ε2 or |x| ≈ ε log(ex/ε + e−x/ε) for small ε > 0.

Regardless of changes to the cost function, the manifold OB(d, n)is non-convex, so that finding a global optimum for dictionary learn-ing as stated above is challenging: see work by Sun et al.2 for some 2 J. Sun, Q. Qu, and J. Wright. Com-

plete dictionary recovery over the sphereII: Recovery by Riemannian trust-regionmethod. IEEE Transactions on InformationTheory, 63(2):885–914, Feb 2017

guarantees.

2.5 Principal component analysis

Let x1, . . . , xn ∈ Rd represent a large collection of centered data pointsin a d-dimensional linear space. We may think of it as a cloud of points.It is often the case that this cloud lies on or near a low-dimensionalsubspace of Rd, and it may be distributed anisotropically in that sub-space, meaning it shows more variations along some directions thanothers. One of the pillars of data analysis is to determine the main di-rections of variation of the data, under the name of principal componentanalysis (PCA).

One way to think of the main direction of variation, called theprincipal component, is as a vector u ∈ Sd−1 such that projecting thedata points to the one-dimensional subspace spanned by u preservesmost of the variance. Specifically, let X ∈ Rd×n be the matrix whosecolumns are the data points and let uu> be the orthogonal projector tothe span of u. We wish to solve See (3.16) below for properties of Frobe-

nius norms and inner products.

maxu∈Sd−1

n

∑i=1‖uu>xi‖2 = ‖uu>X‖2 =

⟨uu>X, uu>X

⟩=⟨

XX>u, u⟩

.

Page 20: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

20 an introduction to optimization on smooth manifolds

We recognize the Rayleigh quotient of XX> to be maximized over Sd−1.Of course, the optimal solution is given by the dominant eigenvectorof XX>, or equivalently by the dominant left singular vector of X.

Let u1 ∈ Sd−1 be a principal component. Targeting a second one, weaim to find u2 ∈ Sd−1, orthogonal to u1, such that projecting the data tothe subspace spanned by u1 and u2 preserves the most variance. Theorthogonal projector to that subspace is u1u>1 + u2u>2 . We maximize:

‖(u1u>1 + u2u>2 )X‖2 =⟨

XX>u1, u1

⟩+⟨

XX>u2, u2

⟩,

over u2 ∈ Sd−1 with u>2 u1 = 0. This search space for u2 is an embeddedsubmanifold of Rd.

It is often more convenient to optimize for both u1 and u2 simulta-neously rather than sequentially. Then, since the above cost function issymmetric in u1 and u2, as is the constraint u>2 u1 = 0, we add weightsto the two terms to ensure u1 captures a principal component and u2

captures a second principal component:

maxu1,u2∈Sd−1,u>2 u1=0

α1

⟨XX>u1, u1

⟩+ α2

⟨XX>u2, u2

⟩,

with α1 > α2 > 0 arbitrary.More generally, aiming for k principal components, we look for a

matrix U ∈ Rd×k with k orthonormal columns u1, . . . , uk ∈ Rd. The setof such matrices is called the Stiefel manifold:

St(d, k) = U ∈ Rd×k : U>U = Ik,

where Ik is the identity matrix of size k. It is an embedded submanifoldof Rd×k. The orthogonal projector to the subspace spanned by thecolumns of U is UU>. Hence, PCA amounts to solving this problem:

maxU∈St(d,k)

k

∑i=1

αi

⟨XX>ui, ui

⟩=⟨

XX>U, UD⟩

, (2.2)

where D ∈ Rk×k is diagonal with diagonal entries α1 > · · · > αk > 0.It is well known that collecting k top eigenvectors of XX> (or, equiv-

alently, k top left singular vectors of X) yields a global optimum of (2.2),meaning this optimization problem can be solved efficiently usingtools from numerical linear algebra. Still, the optimization perspectiveoffers significant flexibility that standard linear algebra algorithms can-not match. Specifically, within an optimization framework, it is possi-ble to revisit the variance criterion by changing the cost function. Thisallows to promote robustness against outliers or sparsity, for exampleto develop variants such as robust PCA [GZAL14, MT11] and sparsePCA [dBEG08, JNRS10]. There may also be computational advantages,for example in tracking and online models, where the dataset changes

Page 21: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

simple examples 21

or grows with time: it may be cheaper to update a previous good esti-mator using few optimization steps than to run a complete eigenvalueof singular value decomposition.

If the top k principal components are of interest but their orderingis not, then we do not need the weight matrix D. In this scenario, weare seeking an orthonormal basis U for a k dimensional subspace ofRd such that projecting the data to that subspace preserves as muchof the variance as possible. This description makes it clear that theparticular basis is irrelevant: only the selected subspace matters. Thisis apparent in the cost function,

f (U) =⟨

XX>U, U⟩

,

which is invariant under orthogonal transformations. Specifically, forall Q in the orthogonal group,

O(k) = Q ∈ Rk×k : Q>Q = Ik,

we have f (UQ) = f (U). This induces an equivalence relation ∼ on the Recall that an equivalence relation ∼ ona set M is a reflexive (a ∼ a), symmet-ric (a ∼ b ⇐⇒ b ∼ a) and transitive(a ∼ b and b ∼ c =⇒ a ∼ c) binaryrelation. The equivalence class [a] is theset of elements of M that are equivalentto a. Each element of M belongs to ex-actly one equivalence class.

Stiefel manifold:

U ∼ V ⇐⇒ U = VQ for some Q ∈ O(k).

This equivalence relation partitions St(d, k) into equivalence classes:

[U] = V ∈ St(d, k) : U ∼ V = UQ : Q ∈ O(k).

The set of equivalence classes is called the quotient space:

St(d, k)/∼ = St(d, k)/O(k) = [U] : U ∈ St(d, k).

Importantly, U, V ∈ St(d, k) are equivalent if and only if their columnsspan the same subspace of Rd. In other words: the quotient space isin one-to-one correspondence with the set of subspaces of dimensionk in Rd. The latter is called the Grassmann manifold: The symbol ≡ reads “is equivalent to”,

where context indicates in what sense.

Gr(d, k) = subspaces of dimension k in Rd ≡ St(d, k)/O(k).

As defined here, the Grassmann manifold is a quotient manifold. Thistype of manifold is more abstract than embedded submanifolds, butwe can still develop numerically efficient ways of working with them.Within our framework, computing the dominant eigenspace of dimen-sion k of the matrix XX> can be written as:

max[U]∈Gr(d,k)

⟨XX>U, U

⟩.

The cost function is well defined over Gr(d, k) since it depends only onthe equivalence class of U, not on U itself.

Page 22: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

22 an introduction to optimization on smooth manifolds

In analogy with the above, for a matrix M in Rm×n, k top left- andright-singular vectors form a solution of the following problem on aproduct of Stiefel manifolds:

maxU∈St(m,k),V∈St(n,k)

〈MV, UD〉 ,

where D is a diagonal weight matrix as above.

2.6 Synchronization of rotations

In structure from motion (SfM), the 3D structure of an object is to bereconstructed from several 2D images of it. For example, in the paperBuilding Rome in a day [ASS+09], the authors automatically construct amodel of the Colosseum from over 2000 photographs freely availableon the Internet. Because the pictures are acquired from an unstruc-tured source, one of the steps in the reconstruction pipeline is to esti-mate camera locations and pose. The pose of a camera is its orientationin space.

In single particle reconstruction through cryo electron microscopy,an electron microscope is used to produce 2D tomographic projectionsof biological objects such as proteins and viruses. Because shape is adetermining factor of function, the goal is to estimate the 3D structureof the object from these projections. Contrary to X-ray crystallography(another fundamental tool of structural biology), the orientations of theobjects in the individual projections are unknown. In order to estimatethe structure, a useful step is to estimate the individual orientations(though we note that high noise levels do not always allow it, in whichcase alternative statistical techniques must be used.)

Mathematically, orientations correspond to rotations of R3. Rota-tions in Rd can be represented with orthogonal matrices:

SO(d) = R ∈ Rd×d : R>R = Id and det(R) = +1.

The determinant condition excludes reflections of Rd. The set SO(d)is the special orthogonal group: it is both a group (in the mathemati-cal sense of the term) and a manifold (an embedded submanifold ofRd×d)—it is a Lie group.

In both applications described above, similar images or projectionscan be compared to estimate relative orientations. Synchronization ofrotations is a mathematical abstraction of the ensuing task: it consistsin estimating n individual rotation matrices,

R1, . . . , Rn ∈ SO(d),

from pairwise relative rotation measurements: for some pairs (i, j) ∈G, we observe a noisy version of RiR

−1j . Let Hij ∈ SO(d) denote such

Page 23: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

simple examples 23

a measurement. Then, one possible formulation of synchronization ofrotations is:

minR1,...,Rn∈SO(d)

∑(i,j)∈G

‖Ri − HijRj‖2.

This is an optimization problem over SO(d)n, which is a manifold.A similar task comes up in simultaneous localization and mapping

(SLAM), whereby a robot must simultaneously map its environmentand locate itself in it as it moves around. An important aspect of SLAMis to keep track of the robot’s orientation accurately, by integrating allpreviously acquired information to correct estimator drift.

2.7 Low-rank matrix completion

Let M ∈ Rm×n be a large matrix of interest. Given some of its en-tries, our task is to estimate the whole matrix. A commonly citedapplication for this setup is that of recommender systems, where row icorresponds to a user, column j corresponds to an item (a movie, abook. . . ) and entry Mij indicates how much user i appreciates item j:positive values indicate appreciation, zero is neutral, and negative val-ues indicate dislike. The known entries may be collected from userinteractions. Typically, most entries are unobserved. Predicting themissing values may be helpful to automate personalized recommen-dations.

Of course, without further knowledge about how the entries of thematrix are related, the completion task is ill-posed. Hope comes formthe notion that certain users may share similar traits, so that their expe-riences may transpose well to one another. Similarly, certain items maybe similar enough that whole groups of users may feel similarly aboutthem. One mathematically convenient way to capture this idea is toassume M has (approximately) low rank. The rationale is as follows:if M has rank r, then it can be factored as

M = LR>,

where L ∈ Rm×r and R ∈ Rn×r are full-rank factor matrices. Row iof L, `i, attributes r numbers to user i, while the jth row of R, rj,attributes r numbers to item j. Under the low-rank model, the ratingof user i for item j is Mij = 〈`i, rj〉. One interpretation is that there arer latent features (these could be movie genres for example), a user hassome positive or negative appreciation for each feature, and an itemhas traits aligned with or in opposition to these features.

Under this model, predicting the user ratings for all items amountsto low-rank matrix completion. Let Ω denote the set of pairs (i, j) such

Page 24: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

24 an introduction to optimization on smooth manifolds

that Mij is observed. Allowing for noise in the observations and inac-curacies in the model, we aim to solve

minX∈Rm×n ∑

(i,j)∈Ω(Xij −Mij)

2

subject to rank(X) = r.

The search space for this optimization problem is the set of matricesof a given size and rank:

Rm×nr = X ∈ Rm×n : rank(X) = r.

This set is an embedded submanifold of Rm×n, frequently useful inmachine learning applications.

Another use for this manifold is solving high-dimensional matrixequations that may come up in systems and control applications: aim-ing for a low-rank solution may be warranted in certain settings, andexploiting this can lower the computational burden substantially. Yetanother context where optimization over low-rank matrices occurs isin completing and denoising approximately separable biviariate func-tions based on sampled values [Van10, Van13, MV13].

The same set can also be endowed with other geometries, that is,it can be made into a manifold in other ways. For example, exploit-ing the factored form more directly, note that any matrix in Rm×n

radmits a factorization as LR> with both L and R of full rank r. Thiscorrespondence is not one-to-one however, since the pairs (L, R) and(LJ−1, RJ>) map to the same matrix in Rm×n

r for all invertible matricesJ: they are equivalent. Similarly to the Grassmann manifold, this leadsto a definition of Rm×n

r as a quotient manifold instead of an embed-ded submanifold. Many variations on this theme are possible, some ofthem more useful than others depending on the application.

2.8 Gaussian mixture models

A common model in machine learning assumes data x1, . . . , xn ∈ Rd

are sampled independently from a mixture of K Gaussians, that is, eachdata point is sampled from a probability distribution with density ofthe form

f (x) =K

∑k=1

wk1√

2π det(Σk)e−

(x−µk)>Σ−1

k (x−µk)2 ,

where the centers µ1, . . . , µK ∈ Rd, covariances Σ1, . . . , Σd ∈ Sym(d)+

and mixing probabilities (w1, . . . , wK) ∈ ∆K−1+ are to be determined.

We use the following notation:

Sym(d)+ = X ∈ Sym(d) : X 0

Page 25: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

simple examples 25

for symmetric, positive definite matrices of size d, and

∆K−1+ = w ∈ RK : w1, . . . , wK > 0 and w1 + . . . + wK = 1

for the positive part of the simplex, that is, the set of non-vanishingdiscrete probability distributions over K objects. In this model, withprobability wk, a point x is sampled from the kth Gaussian, with meanµk and covariance Σk. The aim is only to estimate the parameters, notto estimate which Gaussian each point xi was sampled from.

For a given set of observations x1, . . . , xn, a maximum likelihoodestimator solves:

maxµ1,...,µK∈Rd ,

Σ1,...,ΣK∈Sym(d)+ ,w∈∆K−1

+

n

∑i=1

log

(K

∑k=1

wk1√

2π det(Σk)e−

(x−µk)>Σ−1

k (x−µk)2

).

This is an optimization problem over Rd×K × (Sym(d)+)K × ∆K−1+ ,

which can be made into a manifold because Sym(d)+ and ∆K−1+ can be

given a manifold structure.The direct formulation of maximum likelihood estimation for Gaus-

sian mixture models in (2.3) is however not computationally favorable.See [HS15] for a beneficial reformulation, still on a manifold.

2.9 Smooth semidefinite programs

Semidefinite programs (SDPs) are optimization problems of the form

minX∈Sym(n)

〈C, X〉 subject to A(X) = b and X 0, (2.3)

where 〈A, B〉 = Tr(A>B) and A : Sym(n) → Rm is a linear operatordefined by m symmetric matrices A1, . . . , Am as A(X)i = 〈Ai, X〉.

SDPs are convex and they can be solved to global optimality inpolynomial time using interior point methods. Still, handling the pos-itive semidefiniteness constraint X 0 and the dimensionality of theproblem (namely, the n(n+1)

2 variables required to define X) both posesignificant computational challenges for large n.

A popular way to address both issues is the Burer–Monteiro ap-proach,3 which consists in factorizing X as X = YY>with Y ∈ Rn×p: 3 S. Burer and R.D.C. Monteiro. Lo-

cal minima and convergence in low-ranksemidefinite programming. MathematicalProgramming, 103(3):427–444, 2005

the number p of columns of Y is a parameter. Notice that X is nowautomatically positive semidefinite. If p ≥ n, the SDP can be rewrittenequivalently as

minY∈Rn×p

〈CY, Y〉 subject to A(YY>) = b. (2.4)

If p < n, this corresponds to the SDP with the additional constraintrank(X) ≤ p. There is a computational advantage to taking p as

Page 26: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

26 an introduction to optimization on smooth manifolds

small as possible. Interestingly, if the set of matrices X that are fea-sible for the SDP is compact, then the Pataki–Barvinok bound4,5 assures 4 G. Pataki. On the rank of extreme

matrices in semidefinite programs andthe multiplicity of optimal eigenval-ues. Mathematics of operations research,23(2):339–358, 1998

5 A.I. Barvinok. Problems of dis-tance geometry and convex properties ofquadratic maps. Discrete & ComputationalGeometry, 13(1):189–202, 1995

that at least one of the global optimizers of the SDP has rank r suchthat r(r+1)

2 ≤ m. In other words: assuming compactness, the Burer–Monteiro formulation is equivalent to the original SDP so long as psatisfies p(p+1)

2 ≥ m. This is already the case for p = O(√

m), whichmay be significantly smaller than n.

The positive semidefiniteness constraint disappeared, and the di-mensionality of the problem went from O(n2) to np—a potentiallyappreciable gain. Yet, we lost something important along the way:the Burer–Monteiro problem is not convex. It is not immediately clearhow to solve it.

The search space of the Burer–Monteiro problem is the set of feasiblepoints Y:

M = Y ∈ Rn×p : A(YY>) = b. (2.5)

Assume the map h(Y) = A(YY>) has the property that its differentialat any Y inM has rank m. Then,M is a smooth manifold embeddedin Rn×p. In this special case, we may try to solve the Burer–Monteiroproblem through optimization over that manifold. It turns out thatnon-convexity is mostly benign in that scenario, in a precise sense:6 6 N. Boumal, V. Voroninski, and A.S.

Bandeira. Deterministic guarantees forBurer-Monteiro factorizations of smoothsemidefinite programs. Communica-tions on Pure and Applied Mathematics,73(3):581–608, 2019

IfM is compact and p(p+1)2 > m, then for a generic cost matrix C the

smooth optimization problem minY∈M 〈CY, Y〉 has no spurious localminima, in the sense that any point Y which satisfies first- and second-order necessary optimality conditions is a global optimum.

Additionally, these global optima map to global optima of the SDPthrough X = YY>. This suggests that smooth-and-compact SDPs maybe solved to global optimality via optimization on manifolds. Therequirement that M be a regularly defined smooth manifold is notinnocuous, but it is satisfied in a number of interesting applications.

There has been a lot of work on this front in recent years, includ-ing the early work by Burer and Monteiro [BM03, BM05], the firstmanifold-inspired perspective by Journée et al. [JBAS10], qualificationsof the benign non-convexity at the Pataki–Barvinok threshold [BVB16,BVB19] and below in special cases [BBV16], a proof that in general pcannot be taken much lower than that threshold [WW18], smoothedanalyses to assess whether points which satisfy necessary optimal-ity conditions approximately are also approximately optimal [BBJN18,PJB18, CM19] and extensions to accommodate scenarios where Mis not a smooth manifold but, more generally, a real algebraic vari-ety [BBJN18, Cif19]. See all these references for applications, includingMax-Cut, community detection, the trust-region subproblem, synchro-nization of rotations and more.

Page 27: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

3Embedded submanifolds: first-order geometry

Our goal is to develop optimization algorithms to solve problems ofthe form

minx∈M

f (x), (3.1)

where M is a smooth, possibly nonlinear space, and f : M → R is When we write F : A→ B, we mean thatthe domain of F is all of A. When it isnot, we state so explicitly.

a smooth cost function. In order to do so, our first task is to clarifywhat we mean by a “smooth space,” and a “smooth function” on sucha space. Then, we need to develop any tools required to constructoptimization algorithms in this setting.

For smoothness ofM, our model space is the unit sphere in Rn:

Sn−1 = x ∈ Rn : ‖x‖ = 1, (3.2)

where ‖x‖ =√

x>x is the Euclidean norm on Rn. Intuitively, we thinkof Sn−1 as a smooth nonlinear space in Rn. Our definitions below arecompatible with this intuition, and we call Sn−1 an embedded submani-fold of Rn.

An important element in these definitions is to capture the ideathat Sn−1 can be locally approximated by a linear space around anypoint x: we call these tangent spaces, denoted by TxSn−1. This is asopposed to a cube for which no good linearization exists at the edges.More specifically for our example, Sn−1 is defined by the constraintx>x = 1, and we expect that differentiating this constraint should yielda suitable linearization:

TxSn−1 = v ∈ Rn : v>x + x>v = 0 = v ∈ Rn : x>v = 0. (3.3)

In the same spirit, it stands to reason that linear spaces, or open subsetsof linear spaces, should also be considered smooth.

Regarding smoothness of functions, we may expect that any func-tion f : Sn−1 → R obtained by restriction to Sn−1 of a smooth functionon Rn (smooth in the usual sense for functions from Rn to R) oughtto be considered smooth. We adopt (essentially) this as our definition.

Page 28: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

28 an introduction to optimization on smooth manifolds

In this early chapter, we give a restricted definition of smoothness,focusing on embedded submanifolds. This allows us to build our ini-tial toolbox more rapidly, and is sufficient to handle many applica-tions. We extend our perspective to the general framework later on, inChapter 8.

To get started with a list of required tools, it is useful to reviewbriefly the main ingredients of optimization on a linear space E :

minx∈E

f (x). (3.4)

For example, E = Rn or E = Rn×p. Perhaps the most fundamen-tal algorithm to address this class of problems is gradient descent, alsoknown as steepest descent. Given an initial guess x0 ∈ E , this algorithm Here, xk designates an element in a se-

quence x0, x1, . . . Sometimes, we also usesubscript notation such as xi to select theith entry of a column vector. Contexttells which is meant.

produces iterates on E (a sequence of points on E ) as follows:

xk+1 = xk − αkgrad f (xk), k = 0, 1, 2, . . . (3.5)

where the αk > 0 are appropriately chosen step-sizes and grad f : E →E is the gradient of f . Under mild assumptions, the limit points ofthe sequence x0, x1, x2, . . . have relevant properties for the optimizationproblem (3.4). We study these later, in Chapter 4.

From this discussion, we can identify a list of desiderata for a geo-metric toolbox, meant to solve

minx∈Sn−1

f (x) (3.6)

with some smooth function f on the sphere. The most pressing pointis to find an alternative for the implicit use of linearity in (3.5). Indeed,above, both xk and grad f (xk) are elements of E . Since E is a linearspace, they can be combined through linear combination. Putting asidefor now the issue of defining a proper notion of gradient for a functionf on Sn−1, we must still contend with the issue that Sn−1 is not a linearspace: we have no notion of linear combination here.

TxSn−1

x

v

Rx(v)

Sn−1

Retraction Rx(v) = x+v‖x+v‖ on the sphere.

Alternatively, we can reinterpret iteration (3.5) and say:

To produce xk+1 ∈ Sn−1, move away from xk along the direction−grad f (xk) over some distance, while remaining on Sn−1.

Surely, if the purpose is to remain on Sn−1, it would make little senseto move radially away from the sphere. Rather, using the notion thatsmooth spaces can be linearized around x by a tangent space TxSn−1,we only consider moving along directions in TxSn−1. To this end,we introduce the concept of retraction at x: a map Rx : TxSn−1 → Sn−1

which allows us to move away from x smoothly along a prescribed tan-gent direction while remaining on the sphere. One suggestion mightbe as follows:

Rx(v) =x + v‖x + v‖ . (3.7)

Page 29: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: first order 29

In this chapter, we give definitions that allow for this natural proposal.It remains to make sense of the notion of gradient for a function on

a smooth, nonlinear space. Once more, we take inspiration from thelinear case. For a smooth function f : E → R, the gradient is definedwith respect to an inner product 〈·, ·〉 : E × E → R (see Definition 3.1below for a reminder): grad f (x) is the unique element of E such that,for all v ∈ E ,

D f (x)[v] = 〈v, grad f (x)〉 , (3.8)

where D f (x) : E → R is the differential of f at x, that is, it is the linearoperator defined by:

D f (x)[v] = limt→0

f (x + tv)− f (x)t

. (3.9)

Crucially, the gradient of f depends on a choice of inner product (whilethe differential of f does not).

For example, on E = Rn equipped with the standard inner product

〈u, v〉 = u>v (3.10)

and the canonical basis e1, . . . , en ∈ Rn (the columns of the identitymatrix), the ith coordinate of grad f (x) ∈ Rn if given by

grad f (x)i = 〈ei, grad f (x)〉 = D f (x)[ei]

= limt→0

f (x + tei)− f (x)t

,∂ f∂xi

(x), (3.11)

that is, the ith partial derivative of f as a function of x1, . . . , xn ∈ R.This covers a case so common that it is sometimes presented as the

definition of the gradient: grad f =[

∂ f∂x1

· · · ∂ f∂xn

]>.

Turning to our nonlinear example again, in order to define a propernotion of gradient for f : Sn−1 → R, we find that we need to (a) pro-vide a meaningful notion of differential D f (x) : TxSn−1 → R, and (b)introduce inner products on the tangent spaces of Sn−1. In this outline,we focus on the latter.

Since TxSn−1 is a different linear subspace for various x ∈ Sn−1,we need a different inner product for each point: 〈·, ·〉x denotes ourchoice of inner product on TxSn−1. If this choice of inner productsvaries smoothly with x (in a sense we make precise below), then wecall it a Riemannian metric, and Sn−1 equipped with this metric is calleda Riemannian manifold. This allows us to define the Riemannian gradientof f on Sn−1: grad f (x) is the unique tangent vector at x such that, forall v ∈ TxSn−1,

D f (x)[v] = 〈v, grad f (x)〉x .

Page 30: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

30 an introduction to optimization on smooth manifolds

Thus, first we choose a Riemannian metric, then a notion of gradientensues.

One arguably natural way of endowing Sn−1 with a metric is toexploit the fact that each tangent space TxSn−1 is a linear subspaceof Rn, hence we may define 〈·, ·〉x by restricting the inner product ofRn (3.10) to TxSn−1: for all u, v ∈ TxSn−1, 〈u, v〉x = 〈u, v〉. This isindeed a Riemannian metric, and Sn−1 endowed with this metric iscalled a Riemannian submanifold of Rn.

For Riemannian submanifolds, the Riemannian gradient is partic-ularly simple to compute. As per our definitions, f : Sn−1 → R issmooth if and only if there exists a function f : Rn → R, smooth in theusual sense, such that f and f coincide on Sn−1. Then, we argue belowthat

grad f (x) = Projx(grad f (x)), with Projx(v) = (In − xx>)v,

where Projx : Rn → TxSn−1 is the orthogonal projector from Rn toTxSn−1 (orthogonal with respect to the inner product on Rn.) Thefunctions f and f often have the same analytical expression. For ex-ample, f (x) = x>Ax (for some matrix A ∈ Rn×n) is smooth on Sn−1

because f (x) = x>Ax is smooth on Rn and they coincide on Sn−1. Tosummarize:

For Riemannian submanifolds, the Riemannian gradient is the orthog-onal projection of the “classical” gradient to the tangent spaces.

With these tools in place, we can justify the following algorithm, aninstance of Riemannian gradient descent on Sn−1: given x0 ∈ Sn−1,

xk+1 = Rxk (−αkgrad f (xk)), with grad f (x) = (In − xx>)grad f (x),

and Rx(v) =x + v‖x + v‖ ,

where f is a smooth extension of f to Rn. More importantly, these toolsgive us a formal framework to design and analyze such algorithms ona large class of smooth, nonlinear spaces.

3.1 Euclidean space

The letter E always denotes a linear space (or vector space) over thereals, that is, a set equipped with (and closed under) vector additionand scalar multiplication by real numbers. Frequently used examplesinclude Rn (column vectors of length n), Rn×p (matrices of size n× p),Sym(n) (real, symmetric matrices of size n) and Skew(n) (real, skew-symmetric matrices of size n).

A basis for E is a set of vectors (elements of E ) e1, . . . , ed such thatany vector x ∈ E can be expressed as a unique linear combination

Page 31: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: first order 31

x = a1e1 + · · · + aded. All bases have the same number of elements,called the dimension of E (dim E ): it is always finite in our treatment.Each basis induces a one-to-one mapping between E and Rd: we writeE ≡ Rd. Moreover, E inherits the usual topology of Rd in this way. A Recall that a topology on a set is a col-

lection of subsets called open such that(a) the whole set and the empty set areopen, (b) any union of opens is open,and (c) the intersection of a finite num-ber of opens is open. A subset is closed ifits complement is open. A subset may beopen, closed, both, or neither. Notionssuch as continuity and compactness aredefined just based on a topology. Moreon this in Section 8.2.

neighborhood of x in E is an open subset of E which contains x.For two linear spaces E and E ′ of dimensions d and d′ respectively,

using the identifications E ≡ Rd and E ′ ≡ Rd′ , a function F : E → E ′ issmooth if and only if it is smooth (infinitely differentiable) in the usualsense for a function from Rd to Rd′ . Then, the differential of F at x is alinear map DF(x) : E → E ′ defined by:

DF(x)[v] = limt→0

F(x + tv)− F(x)t

=ddt

F(x + tv)∣∣∣∣t=0

. (3.12)

For a curve c : R→ E , we write c′(t) to denote its velocity at t, ddt c(t).

It is often useful to equip E with a (real) inner product.

Definition 3.1. An inner product on a linear space E is a function 〈·, ·〉 : E ×E → R with the following three properties. For all u, v, w ∈ E and α, β ∈ R:

1. Symmetry: 〈u, v〉 = 〈v, u〉;

2. Linearity: 〈αu + βv, w〉 = α 〈u, w〉+ β 〈v, w〉; and

3. Positive definiteness: 〈u, u〉 ≥ 0 with 〈u, u〉 = 0 ⇐⇒ u = 0.

Definition 3.2. A linear space E with an inner product 〈·, ·〉 is a Euclideanspace. An inner product induces a norm on E called the Euclidean norm:

‖u‖ =√〈u, u〉. (3.13)

The standard inner product over Rn and the associated norm are:

〈u, v〉 = u>v = ∑i

uivi, ‖u‖ =√

∑i

u2i . (3.14)

Similarly, the standard inner product over linear spaces of matricessuch as Rn×p and Sym(n) is the so-called Frobenius inner product, withassociated Frobenius norm:

〈U, V〉 = Tr(U>V) = ∑ij

UijVij, ‖U‖ =√

∑ij

U2ij, (3.15)

where Tr(M) = ∑i Mii is the trace of a matrix. Summations are overall entries. When we omit to specify it, we mean to use the standardinner product and norm.

We often use the following properties of this inner product, withmatrices U, V, W, A, B of compatible sizes:

〈U, V〉 = 〈U>, V>〉, 〈UA, V〉 = 〈U, VA>〉,〈BU, V〉 = 〈U, B>V〉, 〈U W, V〉 = 〈U, V W〉, (3.16)

Page 32: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

32 an introduction to optimization on smooth manifolds

where denotes entrywise multiplication (Hadamard product).Although we only consider linear spaces over the reals, we can still

handle complex matrices. For example, Cn is a real linear space ofdimension 2n. The standard basis for it is e1, . . . , en, ie1, . . . , ien, wheree1, . . . , en form the standard basis of Rn (the columns of the identitymatrix of size n), and i is the imaginary unit. Indeed, any vector in Cn

can be written uniquely as a linear combination of those basis vectorsusing real coefficients. The standard inner product and norm on Cn asa real linear space are:

〈u, v〉 = <u∗v = <

∑k

ukvk

, ‖u‖ =

√∑k|uk|2, (3.17)

where u∗ is the Hermitian conjugate-transpose of u, uk is the complexconjugate of uk, |uk| is its magnitude and <a is the real part of a.This perspective is equivalent to identifying Cn with R2n, with realand imaginary parts considered as two vectors in Rn. Likewise, theset of complex matrices Cn×p is a real linear space of dimension 2np,with standard inner product and norm:

〈U, V〉 = <Tr(U∗V) = <

∑k`

Uk`Vk`

, ‖U‖ =

√∑k`|Uk`|2.

(3.18)

We have similarly useful identities in the complex case:

〈U, V〉 = 〈U∗, V∗〉, 〈UA, V〉 = 〈U, VA∗〉,〈BU, V〉 = 〈U, B∗V〉, 〈U W, V〉 = 〈U, V W〉. (3.19)

We close with the definition of adjoint of a linear operator (or linearfunction, or linear map). This is often useful in deriving gradients offunctions—more on this in Section 4.7.

Definition 3.3. Let E and E ′ be two Euclidean spaces, with inner products〈·, ·〉a and 〈·, ·〉b respectively. Let A : E → E ′ be a linear operator. Theadjoint of A is a linear operator A∗ : E ′ → E defined by this property:

∀u ∈ E , v ∈ E ′, 〈A(u), v〉b = 〈u,A∗(v)〉a .

In particular, if A maps E to E equipped with an inner product 〈·, ·〉 and

∀u, v ∈ E , 〈A(u), v〉 = 〈u,A(v)〉 ,

that is, if A = A∗, we say A is self-adjoint.

Properties laid out above in (3.16) and (3.19) notably define the ad-joints of left- or right-multiplication by a matrix. These illustrate whythe transpose (or Hermitian conjugate-transpose) of a matrix is often

Page 33: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: first order 33

called the adjoint of that matrix, implicitly referring to the standard in-ner product. For the same reason, self-adjoint operators are sometimescalled symmetric or Hermitian.

We conclude with a reminder of the spectral properties of self-adjoint operators.

Theorem 3.4 (spectral theorem). Let A be a self-adjoint linear operatoron the Euclidean space E equipped with the inner product 〈·, ·〉. Then, Aadmits an orthonormal basis of eigenvectors v1, . . . , vd ∈ E associated to realeigenvalues λ1, . . . , λd; that is, with d = dim E :

∀i, j, A(vi) = λivi and 〈vi, vj〉 =

1 if i = j,

0 otherwise.

Definition 3.5. LetA be a self-adjoint linear operator on the Euclidean spaceE equipped with the inner product 〈·, ·〉. We say A is positive semidefiniteif, for all u ∈ E , we have 〈u,A(u)〉 ≥ 0; we write A 0. Owing to thespectral theorem, this is equivalent to all eigenvalues of A being nonnegative.Similarly, A is positive definite if 〈u,A(u)〉 > 0 for all nonzero u ∈ E ; wewrite A 0. This is equivalent to all eigenvalues of A being positive.

3.2 Embedded submanifolds of Euclidean space

Circle: x21 + x2

2 − 1 = 0

One reasonable notion of smoothness for a set M in E captures theidea that a smooth set can be linearized in some meaningful sensearound each point. This readily includes (open subsets of) linearspaces. As a more interesting example, consider the sphere Sn−1. Thisis the set of vectors x ∈ Rn satisfying

h(x) = x>x− 1 = 0.

As we discussed in the introduction, it can be adequately linearizedaround each point by the set (3.3). The perspective we used to obtainthis linearization is that of differentiating the defining equation. Moreprecisely, consider this Taylor expansion of h:

h(x + tv) = h(x) + t Dh(x)[v] + O(t2).

If x is in Sn−1 and v is in ker Dh(x) (so that h(x) = 0 and Dh(x)[v] = 0), kerA denotes the kernel or null space of alinear operator A.then h(x + tv) = O(t2), indicating that x + tv nearly satisfies the defin-

ing equation of Sn−1 for small t. This motivates us to consider thesubspace ker Dh(x) as a linearization of Sn−1 around x. Since

Dh(x)[v] = limt→0

h(x + tv)− h(x)t

= x>v + v>x = 2x>v,

the kernel of Dh(x) is the subspace orthogonal to x in Rn. This coin-cides with (3.3), arguably in line with intuition.

Page 34: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

34 an introduction to optimization on smooth manifolds

At first, one might think that if a set is defined by an equation of theform h(x) = 0 with some smooth function h, then the set is smoothand can be linearized by the kernels of Dh. However, this is not thecase. Indeed, consider the following example in R2:

Cross: x21 − x2

2 = 0

X =

x ∈ R2 : h(x) = x21 − x2

2 = 0

.

The defining function h is smooth, yet the set X is a cross in the planeformed by the union of the lines x1 = x2 and x1 = −x2. We want toexclude such sets because of the kink at the origin. If we blindly usethe kernel of the differential to linearize X , we first determine

Dh(x) =[

∂h∂x1

(x),∂h∂x2

(x)]= [2x1,−2x2] .

At x = 0, Dh(0) = [0, 0], whose kernel is all of R2. The reason a kinkcould arise at the origin is the rank drop: Dh(x) has (full) rank one atall x in X , except at the origin where the rank drops to zero.

These observations form the basis for the following definition. Sincea set M may be equivalently defined by many different functions h,and since it may not be practical to define all of M with a singlefunction h, we phrase the definition locally and in terms of the setMitself (as opposed to phrasing it with respect to a specific function h).

Definition 3.6. Let M be a subset of a linear space E . We say M is a About terminology: M is a submanifoldof the (linear) manifold E . Submanifoldsare manifolds too. We typically omit theword ‘smooth’ as all of our manifoldsare smooth, though bear in mind that inthe literature there exist different kindsof manifolds, not all of them smooth.

(smooth) embedded submanifold of E if either of the following holds:

1. M is an open subset of E . Then, we also callM an open submanifold.IfM = E , we also call it a linear manifold.

2. For a fixed integer k ≥ 1 and for each x ∈ M there exists a neighborhoodU of x in E and a smooth function h : U → Rk such that

(a) If y is in U, then h(y) = 0 if and only if y ∈ M; and

(b) rank Dh(x) = k.

Such a function h is called a local defining function forM at x.

We call E the embedding space or the ambient space ofM.

0

h

U (open in R2)

M (subset of R2)

R

Figure 3.1: Local defining functions: hsmoothly maps an open set U (a disk) toRk (k = 1); exactly the intersection of Uwith the setM (a curve) is mapped to 0.

Condition 2a above can be stated equivalently as:

M∩U = h−1(0) , y ∈ U : h(y) = 0.

It is an exercise to verify that this definition excludes various types ofpathologies such as the cross (x2

1 = x22), the cusp (x2

1 = x32) and the

double parabola (x21 = x4

2).Definition 3.6 is not normally taken to be the definition of an embed-

ded submanifold of E , but it is equivalent to the standard definition:

Page 35: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: first order 35

see Sections 3.10 and 8.14. Differential geometry defines a broaderclass of smooth sets called (smooth) manifolds. Embedded submanifoldsare manifolds. When the statements we make hold true for manifoldsin general, we use that word to signal it. The hope is that this entrypoint will prove natural to build all the tools and intuitions we needfor optimization, in particular because many of the manifolds we en-counter in applications are presented to us as constrained sets withina linear space.

Cusp: x21 − x3

2 = 0

Double parabola: x21 − x4

2 = 0

Let us take some time to build further support for our definition ofsmooth sets. In order to understand the local geometry of a set arounda point, we may want to describe acceptable directions of movementthrough that point. This is close in spirit to the tools we look to de-velop for optimization, as they involve moving away from a pointwhile remaining on the set. Specifically, for a subset M of a linearspace E , consider all the smooth curves on M which pass through agiven point, and record their velocities as they do so.

Definition 3.7. LetM be a subset of E . For all x ∈ M, define: Here, I is an open interval containingt = 0, and c is smooth in the usual senseas a map from (an open subset of) R toE—two linear spaces.

TxM =

c′(0) | c : I →M is smooth around 0 and c(0) = x

. (3.20)

That is, v is in TxM if and only if there exists a smooth curve onM passingthrough x with velocity v.

Note that TxM is a subset of E , but it is not necessarily a linearsubspace. For the sphere, it is easy to convince oneself that TxMcoincides with the subspace in (3.3)—we show in the next theoremthat this is always the case for embedded submanifolds. On the otherhand, for the cross X , the set TxM at x = 0 is actually equal to X ,which is not a linear subspace. (Note though that while the cusp anddouble parabola are not embedded submanifolds, their sets TxM arelinear subspaces of R2.)

Theorem 3.8. Let M be an embedded submanifold of E . Consider x ∈ Mand the set TxM (3.20). If M is an open submanifold, then TxM = E .Otherwise, TxM = ker Dh(x) with h any local defining function at x.

The main tool we need to prove this theorem is the standard inversefunction theorem, stated here without proof.

Theorem 3.9 (Inverse function theorem). Suppose U ⊆ E and V ⊆ E ′ [Lee12, Thm. C.34]For the last claim, differentiate the iden-tity x = F−1(F(x)) on both sides withrespect to x along v; by the chain rule,

v = D(F−1 F)(x)[v]

= DF−1(F(x))[DF(x)[v]],

i.e., DF−1(F(x)) DF(x) is the identity.

are open subsets of linear spaces of the same dimension, and F : U → Vis smooth. If DF(x) is invertible at some point x ∈ U, then there existneighborhoods U′ ⊆ U of x and V′ ⊆ V of F(x) such that F|U′ : U′ → V′

is a diffeomorphism; that is: it is smooth and invertible, and its inverse issmooth. Then, restricting F to U′, we have DF−1(F(x)) = (DF(x))−1.

Equipped with this tool, we proceed to prove our main theorem.

Page 36: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

36 an introduction to optimization on smooth manifolds

Proof of Theorem 3.8. For open submanifolds, the claim is clear. By def-inition, TxM is included in E . The other way around, for any v ∈ E ,consider c(t) = x + tv: this is a smooth curve from some non-emptyinterval around 0 toM such that c(0) = x, hence c′(0) = v is in TxM.This shows E is included in TxM, so that the two coincide.

Considering the other case, let h : U → Rk be any local definingfunction for M at x. The proof is in two steps. First, we show thatTxM is included in ker Dh(x). Then, we show that TxM contains alinear subspace of the same dimension as ker Dh(x). These two factscombined indeed confirm that TxM = ker Dh(x).

Step 1. If v is in TxM, there exists c : I → M, smooth, such thatc(0) = x and c′(0) = v. Since c(t) is in M, we have h(c(t)) = 0 forall t ∈ I (if need be, restrict the interval I to ensure c(t) remains in thedomain of h). Thus, the derivative of h c vanishes at all times:

0 =ddt

h(c(t)) = Dh(c(t))[c′(t)].

In particular, at t = 0 this implies Dh(x)[v] = 0, that is, v ∈ ker Dh(x).This confirms TxM⊆ ker Dh(x).

Step 2. We work in coordinates on E , which is thus identified withRd. Then, we can think of Dh(x) as a matrix of size k× d. By assump-tion, Dh(x) has rank k, which means it is possible to pick k columns ofthat matrix which form a k× k invertible matrix. If needed, permutethe chosen coordinates so that the last k columns have that property.Then, we can write Dh(x) in block form so that

Dh(x) =[

A B]

,

where B ∈ Rk×k is invertible and A is in Rk×(d−k). Now consider thefunction F : U → Rd (where U ⊆ E is the domain of h) defined by:

F(y) = (y1, . . . , yd−k, h1(y), . . . , hk(y))>,

where y1, . . . , yd denote the coordinates of y ∈ E . We aim to apply theinverse function theorem to F at x. Since F is evidently smooth, weonly need to check the differential of F at x. Considering this one rowat a time, we find

DF(x) =

[Id−k 0

A B

],

where Id−k is the identity matrix of size d − k and 0 here denotes azero matrix of size (d− k)× k. This matrix is invertible, with inversegiven by:

(DF(x))−1 =

[Id−k 0−B−1 A B−1

]. (3.21)

Page 37: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: first order 37

(Indeed, their product is Id.) Hence, the inverse function theorem as-serts we may reduce U to a possibly smaller neighborhood of x so thatF (now restricted to that new neighborhood) has a smooth inverse,and:

DF−1(F(x)) = (DF(x))−1. (3.22)

We use F−1 to construct smooth curves on M that go through x.Specifically, pick an arbitrary u ∈ Rd−k and let

c(t) = F−1

(F(x) + t

[u0

]). (3.23)

(Here, 0 denotes a zero vector of size k.) This is indeed smooth for tin some interval around 0 since F−1 is smooth in a neighborhood ofF(x). Clearly, c(0) = x. Furthermore,

F(c(t)) = F(x) + t

[u0

]=

x1 + tu1...

xd−k + tud−k

0...0

.

Since the last k coordinates of F(c(t)) correspond to h(c(t)), we findthat h(c(t)) = 0, so that c is indeed a smooth curve on M passingthrough x. What is the velocity of this curve at x? Applying the chainrule to (3.23),

c′(t) = DF−1

(F(x) + t

[u0

]) [u0

].

In particular, at t = 0, using (3.21) and (3.22):

c′(0) = DF−1(F(x))

[u0

]=

[Id−k 0−B−1 A B−1

] [u0

]=

[Id−k

−B−1 A

]u.

The specific form of c′(0) is unimportant. What matters is that eachc′(0) of this form certainly belongs to TxM (3.20). Since the right-mostmatrix above has rank d− k, this means that TxM contains a subspaceof dimension d − k. But we know from the previous step that TxMis included in a subspace of dimension d − k, namely, ker Dh(x). Itfollows that TxM = ker Dh(x). Since this holds for all x ∈ M, theproof is complete.

Thus, for an embedded submanifold M, for each x ∈ M, the setTxM is a linear subspace of E of some fixed dimension. These sub-spaces are the linearizations of the smooth setM.

Page 38: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

38 an introduction to optimization on smooth manifolds

Definition 3.10. We call TxM the tangent space to M at x. Vectors inTxM are called tangent vectors toM at x. The dimension of TxM (whichis independent of x) is called the dimension ofM, denoted by dimM.

Under Definition 3.6, dimM = dim E for open submanifolds, anddimM = dim E − k otherwise.

We consider three brief examples of embedded submanifolds: twoobvious by now, and one arguably less obvious. It is good to keepall three in mind when assessing whether a certain proposition con-cerning embedded submanifolds is likely to be true. Chapter 7 detailsfurther examples.

Example 3.11. The set Rn is a linear manifold of dimension n with tangentspaces TxM = Rn for all x ∈ Rn.

Example 3.12. The sphere Sn−1 = x ∈ Rn : x>x = 1 is the zero levelset of h(x) = x>x− 1, smooth from Rn to R. Since Dh(x)[v] = 2x>v, it isclear that rank Dh(x) = 1 for all x ∈ Sn−1. As a result, Sn−1 is an embeddedsubmanifold of Rn of dimension n− 1. Furthermore, its tangent spaces aregiven by TxSn−1 = ker Dh(x) = v ∈ Rn : x>v = 0.

Example 3.13. Let Sym(2)1 denote the set of symmetric matrices of size twoand rank one, that is,

Sym(2)1 =

X =

[x1 x2

x2 x3

]: rank X = 1

.

This is a subset of Sym(2), the linear space of symmetric matrices of size two.The rank function is not a smooth map (it is not even continuous), hence wecannot use it as a local defining function. Nevertheless, we can construct localdefining functions for Sym(2)1. Indeed, a matrix of size 2× 2 has rank oneif and only if it is nonzero and its determinant is zero, hence:

Sym(2)1 =

X =

[x1 x2

x2 x3

]: x1x3 − x2

2 = 0 and X 6= 0

.

Consider h : U → R defined by h(X) = x1x3 − x22 with U = Sym(2)\0:

the open subset of Sym(2) obtained by removing the zero matrix. Clearly, his smooth and h−1(0) = Sym(2)1 ∩U = Sym(2)1. Furthermore,

Dh(X)[X] = x1x3 + x1 x3 − 2x2 x2 =[

x3 −2x2 x1

] x1

x2

x3

.

This linear operator has rank one provided X 6= 0, which is always the case in

Here, X is a matrix in Sym(2); the dot isa visual indication that we should thinkof X as a perturbation of X.

the domain of h. Hence, h is a defining function for Sym(2)1 around any Xin Sym(2)1. This confirms the latter is an embedded submanifold of Sym(2)

Page 39: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: first order 39

of dimension dim Sym(2)− 1 = 3− 1 = 2. Its tangent space at X is givenby ker Dh(X):

TXSym(2)1 =

X =

[x1 x2

x2 x3

]: x1x3 + x1 x3 − 2x2 x2 = 0

.

Contrary to the two previous examples, this manifold is neither open norclosed in its embedding space. It is also not connected. Visualized in R3, itcorresponds to a double, infinite elliptic cone. Indeed, X 6= 0 is in Sym(2)1

if and only if

(x1 + x3)2 = (2x2)

2 + (x1 − x3)2.

After the linear change of variables z1 = x1− x3, z2 = 2x2 and z3 = x1 + x3,the defining equation becomes z2

1 + z22 = z2

3, omitting the origin.

We can combine manifolds to form new ones. For example, it is anexercise to show that Cartesian products of manifolds are manifolds.

Proposition 3.14. Let M,M′ be embedded submanifolds of E , E ′ (respec-tively). Then,M×M′ is an embedded submanifold of E × E ′ of dimensiondimM+ dimM′ such that

T(x,x′)(M×M′) = TxM× Tx′M′.

For example, after showing that the sphere Sn−1 is an embeddedsubmanifold of Rn, it follows that Sn−1 × · · · × Sn−1 = (Sn−1)k is anembedded submanifold of (Rn)k ≡ Rn×k: it is called the oblique mani-fold OB(n, k).

In closing this section, we equip embedded submanifolds of E withthe topology induced by E . Having a topology notably allows us todefine notions such as local optima and convergence of sequences onM. Both are useful when studying iterative optimization algorithms.

Definition 3.15. A subset U ofM is open (resp., closed) inM if U is the About terminology: the general defini-tion of submanifolds allows for othertopologies. The qualifier ‘embedded’(some say ‘regular’) indicates we use theinduced topology. More on this in Sec-tion 8.14.

intersection ofM with an open (resp., closed) subset of E . This is called thesubspace topology.

Definition 3.16. A neighborhood of x ∈ M is an open subset ofM whichcontains x. By extension, a neighborhood of a subset of M is an open set ofM which contains that subset.

It is an exercise to show that open subsets of a manifold M aremanifolds; we call them open submanifolds ofM.

Proposition 3.17. Let M be an embedded submanifold of E . Any opensubset ofM is also an embedded (but not necessarily open) submanifold of E ,with same dimension and tangent spaces asM.

Exercise 3.18. Give a proof of Proposition 3.14.

Page 40: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

40 an introduction to optimization on smooth manifolds

Exercise 3.19. Give a proof of Proposition 3.17. In particular, deduce thatthe relative interior of the simplex,

∆n−1+ = x ∈ Rn : x1 + · · ·+ xn = 1 and x1, . . . , xn > 0, (3.24)

is an embedded submanifold of Rn. This is useful to represent non-vanishingdiscrete probability distributions. See also Exercise 3.33.

Exercise 3.20. Show that the cross X = x ∈ R2 : x21 = x2

2 is not anembedded submanifold. (It is not sufficient to show that x 7→ x2

1 − x22 is not

a local defining function at the origin: it is necessary to show that no localdefining function exists at that point.) Hint: proceeding by contradiction,assume there exists a local defining function around the origin and show thatits kernel is too large.

Exercise 3.21. Show that the cusp C = x ∈ R2 : x21 = x3

2 is not anembedded submanifold. Hint: argue that T0C (as defined by (3.20)) is toolow-dimensional.

Exercise 3.22. Show that the double parabola P = x ∈ R2 : x21 = x4

2is not an embedded submanifold, yet TxP as defined by (3.20) is a linearsubspace of dimension one in R2 for all x ∈ P . This shows that Defini-tion 3.6 is more restrictive than just requiring all sets TxP to be subspacesof the same dimension. Hint: proceeding by contradiction, assume P is anembedded submanifold and construct a diffeomorphism F as in the proof ofTheorem 3.8; then, derive a contradiction from the fact that P around theorigin does not look like a one-dimensional curve. This exercise touches upona more fundamental feature of Definition 3.6, namely, the fact that it onlyadmits surfaces which, upon “zooming very close” to a point on the surface,can hardly be distinguished from linear subspaces of the same dimension inthe same embedding space. The cross, cusp and double parabola all fail.

3.3 Smooth maps on embedded submanifolds

Now that we have a notion of smooth sets, we can introduce the all im-portant notion of smooth maps between smooth sets. It relies heavilyon the classical notion of smooth maps between (open subsets of) lin-ear spaces. In optimization, two examples of maps between manifoldsare cost functions (M→ R) and iteration maps (M→M); more willcome up.

Definition 3.23. Let M and M′ be embedded submanifolds of E and E ′(respectively). A map F : M → M′ is smooth at x ∈ M if there exists afunction F : U → E ′ which is smooth (in the usual sense) on a neighborhoodU of x in E and such that F and F coincide onM∩U, that is, F(y) = F(y)for all y ∈ M∩U. We call F a (local) smooth extension of F around x.We say F is smooth if it is smooth at all x ∈ M.

Page 41: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: first order 41

The following proposition states that a smooth map admits a smooth A neighborhood of M in E is an opensubset of E which containsM.extension F in a neighborhood of all ofM. While this is not needed to

establish results hereafter, it is convenient to shorten proofs and dis-cussions; so much so that we typically think of it as the definition of asmooth map. See Section 3.10 for a proof sketch.

Proposition 3.24. Let M and M′ be embedded submanifolds of E and E ′.A map F : M→M′ is smooth if and only if it admits a smooth extensionF : U → E ′ in a neighborhood U of M in E , so that F(x) = F(x) for allx ∈ M, that is, F is the restriction of F toM: F = F|M.

In particular, a function f : M → R is smooth if and only if thereexists a smooth extension f : U ⊆ E → R which coincides with f onM: f = f |M.

Definition 3.25. A scalar field on a manifoldM is a function f : M→ R.If f is a smooth function, we say it is a smooth scalar field. The set ofsmooth scalar fields onM is denoted by F(M).

Exercise 3.26. Give an example of an embedded submanifoldM in a linearspace E and a smooth function f : M → R for which there does not exist asmooth extension f : E → R smooth on all of E . Hint: use Example 3.13, oruse Exercise 3.19 and consider a circle with a missing point.

3.4 The differential of a smooth map

Let F : U ⊆ E → E ′ be a smooth function between two linear spaces,possibly restricted to an open subset U. Given a point x ∈ U, thedifferential of F at x is a linear operator DF(x) : E → E ′ defined by:

DF(x)[v] = limt→0

F(x + tv)− F(x)t

. (3.25)

This tells us how F(x) changes when we push x along v. Applyingthis definition to a smooth map F : M→M′ between two embeddedsubmanifolds is problematic because x + tv generally does not belongtoM, even for tiny nonzero values of t: F may not be defined there.

A natural alternative is to rely on Definition 3.7: for any tangent One could also propose to resort to asmooth extension of F: we show in amoment that these two perspectives areequivalent. The smooth curve approachis preferred because it generalizes better.

vector v ofM at x, there exists a smooth curve c onM passing throughx with velocity v. Then, t 7→ F(c(t)) itself defines a smooth (why?)curve onM′ passing through F(x) at t = 0, with a certain velocity. Bydefinition, that velocity is a tangent vector ofM′ at F(x).

Definition 3.27. The differential of F : M → M′ at x is a linear operatorDF(x) : TxM→ TF(x)M′ defined by:

DF(x)[v] =ddt

F(c(t))∣∣∣∣t=0

, (3.26)

where c is a smooth curve onM passing through x at t = 0 with velocity v.

Page 42: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

42 an introduction to optimization on smooth manifolds

M M′

F

c(t) F(c(t))

xv

F(x) DF(x)[v] Figure 3.2: F : M → M′ is a map be-tween two manifolds. Given x ∈ Mand v tangent at x, we select a smoothcurve c(t) passing through x with ve-locity v. Then, F(c(t)) is a curve onM’ passing through F(x) with velocityDF(x)[v]. The latter tells us how F(x)changes when we push x along v.

We must clarify two things: (a) that (3.26) does not depend on thechoice of curve c (as many may satisfy the requirements), and (b) thatDF(x) is indeed linear. LetM andM′ be embedded submanifolds ofE and E ′. Then, for a smooth map F : M→M′, there exists a smoothextension F : U ⊆ E → E ′ such that F = F|M. Using that F c = F cand the usual chain rule for F c (since it is a composition of functionsbetween open subsets of linear spaces), we find:

DF(x)[v] =ddt

F(c(t))∣∣∣∣t=0

=ddt

F(c(t))∣∣∣∣t=0

= DF(c(0))[c′(0)] = DF(x)[v]. (3.27)

This can be summarized as follows.

Proposition 3.28. With notation as above, DF(x) = DF(x)|TxM.

This proposition confirms that DF(x) is linear since DF(x) is linear.It also shows that the definition by equation (3.26) depends on c onlythrough c(0) and c′(0), as required. One may wonder whether (3.27)depends on the choice of smooth extension F: it does not. Indeed, ifF is another smooth extension of F, then for all smooth curves c withc(0) = x and c′(0) = v we have

DF(x)[v] = (F c)′(0) = (F c)′(0) = DF(x)[v].

Example 3.29. Given a real, symmetric matrix A ∈ Sym(n), the Rayleighquotient at a nonzero vector x ∈ Rn is given by x>Ax

x>x . Since this quotientis invariant under scaling of x, we may restrict our attention to unit-normvectors. This yields a function on the sphere:

f : Sn−1 → R : x 7→ x>Ax.

As we will gradually rediscover, the extreme points (maxima and minima)of f are tightly related to extremal eigenvectors of A. The function f canbe smoothly extended to Rn by f (x) = x>Ax, hence f is smooth accord-ing to Definition 3.23. Using this smooth extension, we can also obtain an

Page 43: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: first order 43

expression for its differential. Indeed, for all v ∈ Rn,

D f (x)[v] = limt→0

f (x + tv)− f (x)t

= limt→0

(x + tv)>A(x + tv)− x>Axt

= v>Ax + x>Av

= x>(A + A>)v = 2x>Av.

Hence, by (3.27), for all v ∈ TxSn−1 = v ∈ Rn : x>v = 0,

D f (x)[v] = D f (x)[v] = 2x>Av.

Exercise 3.30. For smooth maps F1, F2 : M → E ′ and real numbers a1, a2,show that F : x 7→ a1F1(x) + a2F2(x) is smooth and we have linearity:

DF(x) = a1DF1(x) + a2DF2(x).

Exercise 3.31. For smooth maps f ∈ F(M) and G : M → E ′, show thatf G : x 7→ f (x)G(x) is smooth fromM to E ′ and we have a product rule:

D( f G)(x)[v] = G(x)D f (x)[v] + f (x)DG(x)[v].

Exercise 3.32. Let F : M → M′ and G : M′ → M′′ be smooth, whereM,M′,M′′ are embedded submanifolds of E , E ′, E ′′ respectively. Showcomposition preserves smoothness, that is, G F : x 7→ G(F(x)) is smooth.Furthermore, show that we have a chain rule:

D(G F)(x)[v] = DG(F(x))[DF(x)[v]]. (3.28)

Exercise 3.33. LetM be an embedded submanifold of a linear space E , andlet N be a subset of M defined by N = g−1(0), where g : M → R` issmooth and rank Dg(x) = ` for all x ∈ N . Show that N is itself anembedded submanifold of E , of dimension dimM− `, with tangent spacesTxN = ker Dg(x) ⊂ TxM. Here, we assume ` ≥ 1; see also Exercise 3.19.We call N an embedded submanifold ofM; see also Section 8.14.

3.5 Vector fields and the tangent bundle

For a function f : M→ R, the gradient (still to be defined) associates atangent vector to each point ofM. Such a map V from x to an elementof TxM is called a vector field on M. In order to define a notion ofsmooth vector field, we need to present V as a map between manifolds.Since the range of V includes tangent vectors from all possible tangentspaces ofM, the first step is to introduce the tangent bundle: this is thedisjoint union of all the tangent spaces of M. By “disjoint” we meanthat, for each tangent vector v ∈ TxM, we retain the pair (x, v) rather

Page 44: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

44 an introduction to optimization on smooth manifolds

than simply v. This is important to avoid ambiguity because sometangent vectors, seen as vectors in E , may belong to more than onetangent space (for example, the zero vector belongs to all of them).

Definition 3.34. The tangent bundle of a manifoldM is the disjoint unionof the tangent spaces ofM:

TM = (x, v) : x ∈ M and v ∈ TxM. (3.29)

With some abuse of notation, for a tangent vector v ∈ TxM, we sometimesconflate the notions of v and (x, v). We may write (x, v) ∈ TxM, or evenv ∈ TM if it is clear from context that the foot or base of v is x.

Theorem 3.35. IfM is an embedded submanifold of E , the tangent bundle The topology we choose for TM is theembedded submanifold topology, as inDefinition 3.15. This is different from theso-called disjoint union topology, whichwe never use.

TM is an embedded submanifold of E × E of dimension 2 dimM.

Proof. For open submanifolds, the claim is clear: TxM = E for eachx ∈ M, hence TM =M×E . This is an open subset of E × E , henceit is an open submanifold of that space.

Considering the other case, pick an arbitrary point x ∈ M and leth : U → Rk be a local defining function for M at x, that is: U is aneighborhood of x in E , h is smooth, M∩U = x ∈ U : h(x) = 0,and Dh(x) : E → Rk has rank k.

We restrict the domain U if need be to secure the stronger propertyrank Dh(x) = k for all x ∈ U: this is always possible, see Lemma 3.62.Then, we can claim that TxM = ker Dh(x) for all x ∈ M∩U. Con-sequently, a pair (x, v) ∈ U × E is in TM if and only if it satisfies thefollowing equations:

h(x) = 0 and Dh(x)[v] = 0.

Accordingly, define the smooth function H : U × E → R2k as:

H(x, v) =

[h(x)

Dh(x)[v]

].

The aim is to show that H is a local defining function for TM. We al-ready have that TM∩ (U×E) = H−1(0). If we establish that DH(x, v)has rank 2k for all (x, v) ∈ TM∩ (U×E), we will have shown that TMis an embedded submanifold of E × E . Let us compute the differentialof H (we know it exists since h is smooth):

DH(x, v)[x, v] =

[Dh(x)[x]

L(x, v)[x] + Dh(x)[v]

]=

[Dh(x) 0L(x, v) Dh(x)

] [xv

],

where L(x, v) : E → E is some linear operator which depends on bothx and v (it involves the second derivative of h, but its specific formis irrelevant to us.) The block triangular form of DH(x, v) allows us

Page 45: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: first order 45

to conclude that rank DH(x, v) = rank Dh(x) + rank Dh(x) = 2k, as The rank is at most 2k because H mapsinto R2k , and the rank is at least 2k be-cause the two diagonal blocks each haverank k.

required. Since we can build such H on a neighborhood of any pointin TM, we conclude that TM is indeed an embedded submanifoldof E × E . For the dimension, use T(x,v)TM = ker DH(x, v) and therank-nullity theorem to conclude that dim TM = dim T(x,v)TM =

2 dim E − 2k = 2 dimM. (We mention that the tangent spaces to TMare not of the form TxM×TxM: see the discussion in Section 5.1.)

Since TM is a manifold, we can now use Definition 3.23 to definesmooth vector fields as particular smooth maps fromM to TM.

Definition 3.36. A vector field on a manifoldM is a map V : M→ TM Some authors call smooth vector fieldssimply vector fields.such that V(x) is in TxM for all x ∈ M. If V is a smooth map, we say it is

a smooth vector field. The set of smooth vectors fields is denoted by X(M).

A vector field on an embedded submanifold is smooth if and onlyif it is the restriction of a smooth vector field on a neighborhood ofMin the ambient space.

Proposition 3.37. For M an embedded submanifold of E , a vector field VonM is smooth if and only if there exists a smooth vector field V on U ⊆ E(a neighborhood ofM) such that V = V|M.

Proof. Assume V : M → TM is a smooth vector field on M. Then,since TM is an embedded submanifold of E × E , by Proposition 3.24,there exists a neighborhood U of M in E and a smooth function¯V : U → E × E such that V = ¯V|M. Denote the two components

of ¯V as ¯V(x) = ( ¯V1(x), ¯V2(x)). Of course, ¯V1, ¯V2 : U → E are smooth.Define V(x) = (x, ¯V2(x)): this is a smooth vector field on U such thatV = V|M. The other direction is clear.

Exercise 3.38. For f ∈ F(M) and V, W ∈ X(M), show that the vector For pointwise scaling, we purposefullywrite f V and not V f . Later, we will givea different meaning to the notation V f .

fields f V and V + W defined by ( f V)(x) = f (x)V(x) and (V + W)(x) =V(x) + W(x) are smooth.

In closing, we note a useful identification for the tangent bundle ofa product manifoldM×M′, based on a reordering of parameters:

T(M×M′) =((x, x′), (v, v′)) : x ∈ M, v ∈ TxM, x′ ∈ M′, v′ ∈ Tx′M′

≡((x, v), (x′, v′)) : x ∈ M, v ∈ TxM, x′ ∈ M′, v′ ∈ Tx′M′

= TM× TM′. (3.30)

3.6 Moving on a manifold: retractions

Given a point x ∈ M and a tangent vector v ∈ TxM, we often need tomove away from x along the direction v while remaining on the man-ifold: this is the basic operation of a gradient descent algorithm, and

Page 46: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

46 an introduction to optimization on smooth manifolds

of essentially all Riemannian optimization algorithms. We can achievethis by following any smooth curve c : I →M such that c(0) = x andc′(0) = v, but of course there exist many such curves. A retractionpicks a particular curve for every possible (x, v) ∈ TM. Furthermore,this choice of curve depends smoothly on (x, v), in a sense we makeprecise below. Let us start with an example.

x

vRx(v)

M

Figure 3.3: Retractions allow us to moveaway from x along v ∈ TxM while stay-ing onM.Example 3.39. Let x be a point on the sphere Sn−1 and let v be tangent at

x, that is, x>v = 0. To move away from x along v while remaining on thesphere, one way is to take the step in Rn then to project back to the sphere: This is an example of a retraction based

on metric projection: we study them laterin Proposition 5.42.Rx(v) ,

x + v‖x + v‖ =

x + v√1 + ‖v‖2

. (3.31)

Consider the curve c : R→ Sn−1 defined by:

c(t) = Rx(tv) =x + tv√

1 + t2‖v‖2.

Evidently, c(0) = x. This holds because Rx(0) = x. Furthermore, one cancompute c′(0) = v, that is: locally around x, up to first order, the retractioncurve moves along v. Another way to state this is via the chain rule:

v = c′(0) = DRx(0)[v],

where DRx(0) is understood as per Definition 3.27 for Rx : TxSn−1 → Sn−1.In other words: DRx(0) : TxSn−1 → TxSn−1 is the identity map.

Another reasonable choice is to move away from x along the great circle on Such curves are called geodesics: westudy them in Section 5.8. The retractionis called the exponential map: we studythose later, in Section 10.2.

Sn−1 traced out by v. Specifically,

Rx(v) , cos(‖v‖)x +sin(‖v‖)‖v‖ v, (3.32)

with the usual convention sin(0)/0 = 1. Indeed, the curve

c(t) = Rx(tv) = cos(t‖v‖)x +sin(t‖v‖)‖v‖ v

traces out the great circle on Sn−1 passing through x at t = 0 with velocityc′(0) = v.

More generally, we consider the following important definition.

Definition 3.40. A retraction onM is a smooth map R: TM→M withthe following properties. For each x ∈ M, let Rx : TxM → M be therestriction of R at x, so that Rx(v) = R(x, v). Then,

1. Rx(0) = x, and

2. DRx(0) : TxM→ TxM is the identity map: DRx(0)[v] = v.

Equivalently, each curve c(t) = Rx(tv) satisfies c(0) = x and c′(0) = v.

Page 47: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: first order 47

Smoothness of R is understood in the sense of Definition 3.23 fora map from TM to M, that is, R is smooth if and only if thereexists a smooth function R from a neighborhood of TM in E × Einto E such that R = R|TM. In Example 3.39, consider R(x, v) =

(x + v)/√

1 + ‖v‖2: this is a smooth extension of (3.31) to all of E × E ,confirming smoothness. It is instructive to check that, for linear mani-folds, Rx(v) = x + v is a retraction.

Sometimes, it is convenient to relax the definition of retraction toallow maps R that are defined only on an open subset of the tangentbundle, provided all zero vectors belong to the domain. For example,this is the case for the manifold of fixed-rank matrices (Section 7.5).

Exercise 3.41. Let M,M′ be equipped with retractions R, R′. Show thatR′′ : T(M×M′)→M×M′ defined by R′′(x,x′)(v, v′) = (Rx(v), R′x′(v

′))

is a valid retraction for the product manifoldM×M′.

3.7 Riemannian manifolds and submanifolds

It is convenient to equip each tangent space of the manifoldM with aan inner product: this is the key ingredient to define gradients in thenext section. Since there are now many inner products (one for eachpoint on the manifold), we distinguish them with a subscript, unlessit is clear from context in which case we often omit it.

Definition 3.42. An inner product on TxM is a bilinear, symmetric, positivedefinite function 〈·, ·〉x : TxM× TxM→ R. It induces a norm for tangentvectors: ‖u‖x =

√〈u, u〉x. A metric on M is a choice of inner product

〈·, ·〉x for each x ∈ M.

Of particular interest are metrics which, in some sense, vary smoothlywith x. To give a precise meaning to this requirement, the followingdefinition builds upon the notions of smooth scalar and vector fields.

Definition 3.43. A metric 〈·, ·〉x onM is a Riemannian metric if it variessmoothly with x, in the sense that if V, W are two smooth vector fields onMthen the function x 7→ 〈V(x), W(x)〉x is smooth fromM to R.

Definition 3.44. A manifold with a Riemannian metric is a Riemannianmanifold.

A Euclidean space is a linear space E with an inner product 〈·, ·〉(the same at all points)—we call it the Euclidean metric. WhenM is anembedded submanifold of a Euclidean space E , the tangent spaces ofM are linear subspaces of E . This suggests a particularly convenientway of defining an inner product on each tangent space: simply restrictthe inner product of E to each one. The resulting metric on M iscalled the induced metric. As we now show, the induced metric is aRiemannian metric, leading to the notion of Riemannian submanifold.

Page 48: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

48 an introduction to optimization on smooth manifolds

Proposition 3.45. Let M be an embedded submanifold of E , and let 〈·, ·〉be the Euclidean metric on E . Then, the metric on M defined at each x byrestriction, 〈u, v〉x = 〈u, v〉 for u, v ∈ TxM, is a Riemannian metric.

Proof. For any two smooth vector fields V, W ∈ X(M), let V, W betwo smooth extensions of V, W to a neighborhood U ofM in E . Then,consider g(x) = 〈V(x), W(x)〉x (a function on M) and let g(x) =

〈V(x), W(x)〉 (a function on U). Clearly, g is smooth and g = g|M.Hence, g is smooth.

Definition 3.46. Let M be an embedded submanifold of a Euclidean space This is arguably the most common typeof Riemannian manifold in applications.Notice that a Riemannian submanifoldis not merely a submanifold with someRiemannian structure: the words singleout a precise choice of metric.

E . Equipped with the Riemannian metric obtained by restriction of the metricof E , we callM a Riemannian submanifold of E .

Example 3.47. Endow Rn with the standard metric 〈u, v〉 = u>v and con-sider the sphere Sn−1 = x ∈ Rn : ‖x‖ = 1, embedded in Rn. With theinherited metric 〈u, v〉x = 〈u, v〉 = u>v on each tangent space TxSn−1, thesphere becomes a Riemannian submanifold of Rn.

3.8 Riemannian gradients

Let M be a Riemannian manifold, that is, a manifold endowed witha Riemannian metric. Given a smooth function f : M → R, we arefinally in a position to define its gradient.

Definition 3.48. Let f : M → R be a smooth function on a Riemannianmanifold M. The Riemannian gradient of f is the vector field grad f onM uniquely defined by these identities:

∀(x, v) ∈ TM, D f (x)[v] = 〈v, grad f (x)〉x , (3.33)

where D f (x) is as in Definition 3.27 and 〈·, ·〉x is the Riemannian metric.

It is an exercise to show that grad f (x) is indeed uniquely deter-mined by (3.33) for each x inM, confirming grad f is well defined.

Following the definition, to compute the gradient of f , a direct ap-proach is to obtain an expression for D f (x)[v] and to manipulate it un-til it takes the form 〈v, ·〉x: this yields the gradient by identification—more on this in Section 4.7. An indirect approach is through the fol-lowing proposition, based on retractions.

Proposition 3.49. Let f : M → R be a smooth function on a Riemannian See also Exercise 10.67.

manifoldM equipped with a retraction R. Then, for all x ∈ M,

grad f (x) = grad( f Rx)(0), (3.34)

where f Rx : TxM → R is defined on a Euclidean space ( TxM with theinner product 〈·, ·〉x), hence its gradient is a “classical” gradient.

Page 49: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: first order 49

Proof. By the chain rule, for all tangent vectors v ∈ TxM,

D( f Rx)(0)[v] = D f (Rx(0))[DRx(0)[v]] = D f (x)[v],

since Rx(0) = x and DRx(0) is the identity map (these are the definingproperties of retractions). Using the definition of gradient for bothf Rx and f we conclude that, for all v ∈ TxM,

〈grad( f Rx)(0), v〉x = 〈grad f (x), v〉x .

The claim follows by uniqueness of the gradient.

For the important special case of Riemannian submanifolds, we canmake a more explicit statement. Indeed, E is then itself equipped witha metric 〈·, ·〉, so that combining (3.27) with (3.33) we find:

∀(x, v) ∈ TM, 〈v, grad f (x)〉x = D f (x)[v]

= D f (x)[v] =⟨v, grad f (x)

⟩, (3.35)

where f is a smooth extension of f . Now comes the crucial observa-tion: TxM is a subspace of E , and grad f (x) is a vector in E ; as such,the latter can be uniquely decomposed in E as

grad f (x) = grad f (x)‖ + grad f (x)⊥,

with one component in TxM and another orthogonal to TxM, that is,grad f (x)‖ ∈ TxM and

∀v ∈ TxM,⟨v, grad f (x)⊥

⟩= 0.

As a result, we get from (3.35) that, for all (x, v) in TM,

〈v, grad f (x)〉x =⟨v, grad f (x)

⟩=⟨

v, grad f (x)‖ + grad f (x)⊥⟩=⟨

v, grad f (x)‖⟩

.

Now we use that grad f (x)‖ is tangent at x and that the Riemannianmetric is merely a restriction of the Euclidean metric to the tangentspaces to state:

∀(x, v) ∈ TM, 〈v, grad f (x)〉x =⟨

v, grad f (x)‖⟩

x.

Since the gradient is uniquely defined, it follows that, for Riemanniansubmanifolds,

grad f (x) = grad f (x)‖. (3.36)

In other words: to compute grad f , first obtain an expression for the(classical) gradient of any smooth extension of f , then orthogonallyproject to the tangent spaces. Since an expression for f is typicallyavailable in optimization, this is a practical recipe.

This key formula motivates us to introduce orthogonal projectors.

Page 50: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

50 an introduction to optimization on smooth manifolds

Definition 3.50. Let M be an embedded submanifold of a Euclidean spaceE equipped with the metric 〈·, ·〉. With

Projx : E → TxM⊆ E ,

we denote the projector from E to TxM, orthogonal with respect to 〈·, ·〉.Being a projector, Projx is a linear operator such that Projx Projx = Projx.Being orthogonal,

⟨u− Projx(u), v

⟩= 0 for all v ∈ TxM and u ∈ E .

The above discussion can be summarized into the following usefulproposition. Note that, for an open submanifold, Projx is the identityoperator.

Proposition 3.51. LetM be a Riemannian submanifold of E endowed withthe metric 〈·, ·〉 and let f : M → R be a smooth function. The Riemanniangradient of f is given by

grad f (x) = Projx(grad f (x)), (3.37)

where f is any smooth extension of f to a neighborhood ofM in E .

Example 3.52. We continue with the Rayleigh quotient from Example 3.29:f (x) = x>Ax. Equip Rn with the standard Euclidean metric 〈u, v〉 = u>v.Then, using A = A>, for all v ∈ Rn,

D f (x)[v] = 2x>Av = 〈2Ax, v〉 .

Hence, by identification with Definition 3.48,

grad f (x) = 2Ax.

To get a notion of gradient for f on Sn−1, we need to choose a Riemannianmetric for Sn−1. One convenient choice is to turn Sn−1 into a Riemanniansubmanifold of Rn by endowing it with the induced Riemannian metric. Inthat scenario, Proposition 3.51 suggests we should determine the orthogonalprojectors of Sn−1. Since, for the Euclidean metric,

TxSn−1 = v ∈ Rn : x>v = 0 = v ∈ Rn : 〈x, v〉 = 0

is the orthogonal complement of x in Rn, orthogonal projection from Rn tothat tangent space simply removes any component aligned with x:

Projx(u) = u− (x>u)x = (In − xx>)u. (3.38)

It follows that the Riemannian gradient of f on Sn−1 is:

grad f (x) = Projx(grad f (x)) = 2(

Ax− (x>Ax)x)

.

Notice something quite revealing: for x ∈ Sn−1,

grad f (x) = 0 ⇐⇒ Ax = (x>Ax)︸ ︷︷ ︸some scalar

x.

Page 51: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: first order 51

In other words: all points where the gradient vanishes are eigenvectors of A.(Conversely: the gradient vanishes at all unit-norm eigenvectors of A.) Thisfact is crucially important to understand the behavior of optimization algo-rithms for f on Sn−1.

Orthogonal projectors are self-adjoint (Definition 3.3)—this fact willprove useful later on.

Proposition 3.53. Let Projx be the orthogonal projector from E to a linearsubspace of E . Then, Projx is self-adjoint, that is,

∀u, v ∈ E ,⟨u, Projx(v)

⟩=⟨Projx(u), v

⟩,

where 〈·, ·〉 is the Euclidean metric on E .

Proof. From the properties of orthogonal projectors, for all u, v ∈ E :

0 =⟨u− Projx(u), Projx(v)

⟩=⟨u, Projx(v)

⟩−⟨Projx(u), Projx(v)

⟩=⟨u, Projx(v)

⟩−⟨Projx(u), v− (v− Projx(v))

⟩=⟨u, Projx(v)

⟩−⟨Projx(u), v

⟩+⟨Projx(u), v− Projx(v)

⟩︸ ︷︷ ︸=0

.

This concludes the proof.

Exercise 3.54. Show that grad f (x) is uniquely defined by (3.33).

The following exercise provides an example where grad f (x) is notsimply the projection of grad f (x) to TxM; this is because, whileM isan embedded submanifold of Rn and it is a Riemannian manifold, itis not a Riemannian submanifold of Rn.

Exercise 3.55. In Exercise 3.19, we considered the relative interior of thesimplex,

M = ∆n−1+ = x ∈ Rn : x1, . . . , xn > 0 and x1 + · · ·+ xn = 1,

as an embedded submanifold of Rn. Its tangent spaces are given by

TxM = v ∈ Rn : v1 + · · ·+ vn = 0.

Show that 〈u, v〉x = ∑ni=1

uivixi

defines a Riemannian metric on M. Then, This is called the Fisher–Rao metric.

considering a smooth function f : M → R and a smooth extension f on aneighborhood of M in Rn (equipped with the canonical Euclidean metric),give an expression for grad f (x) in terms of grad f (x).

Exercise 3.56. Let E be a Euclidean space, and let L(E , E) denote the set of It is true in general that the Riemanniangradient of a smooth function is smooth,but with the tools we have developedso far the proof is substantially simplerfor Riemannian submanifolds—see Sec-tion 3.9 for the more general case.

linear operators from E into itself: this is a linear space. If E is identified with

Page 52: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

52 an introduction to optimization on smooth manifolds

Rd, then L(E , E) is identified with Rd×d. ForM an embedded submanifoldof E , show that the map

Proj : x 7→ Projx

fromM to L(E , E) is smooth. Deduce that ifM is a Riemannian subman-ifold of E then the Riemannian gradient of a smooth function f : M→ R isa smooth vector field.

Exercise 3.57. LetM,M′ be Riemannian manifolds with metrics 〈·, ·〉a and〈·, ·〉b. The productM×M′ is itself a manifold. Make it into a Riemannianmanifold with the product metric: for all (u, u′), (v, v′) in the tangent spaceT(x,x′)(M×M′),⟨

(u, u′), (v, v′)⟩(x,x′) = 〈u, v〉ax +

⟨u′, v′

⟩bx′ .

For a smooth function f : M×M′ → R, show that

grad f (x, y) =(gradgy(x), gradgx(y)

),

where gy(x) = f (x, y) is a function onM (fixed y) and gx(y) = f (x, y) isa function onM′ (fixed x).

3.9 Local frames*

This section introduces a technical tool which proves useful in certainproofs: the reader can safely skip it for a first reading. We show thatembedded submanifolds admit local frames (as defined below) aroundany point. As a first application, we use local frames to show that thegradient of a smooth function is a smooth vector field. Contrast thiswith Exercise 3.56 which is restricted to Riemannian submanifolds.

Definition 3.58. Given a point x on a manifoldM of dimension d, a local [Lee12, pp177–179]

frame around x is a set of smooth vector fields W1, . . . , Wd defined on aneighborhood of x inM such that, for all y in that neighborhood, the vectorsW1(y), . . . , Wd(y) form a basis for the tangent space TyM.

Proposition 3.59. Let M be an embedded submanifold of a linear space E .There exists a local frame around any x ∈ M.

Proof. IfM is open in E , the statement is clear: pick a basis e1, . . . , ed ofE and corresponding constant vector fields E1(y) = e1, . . . , Ed(y) = ed.The restriction of these vector fields toM forms a local frame.

Otherwise, let h : U → Rk be a local defining function forM around We construct a rather special local framecalled a coordinate frame: compare withSections 8.3 and 8.8.

x, with U open in E and dimM = d− k. As we did in the proof ofTheorem 3.8, identify E with Rd by picking a basis e1, . . . , ed of E ,ordered so that

Dh(x) =[

A B]

Page 53: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: first order 53

with B ∈ Rk×k invertible. Consider anew the function F : U → Rd:

F(y) = (y1, . . . , yd−k, h1(y), . . . , hk(y))>,

where y1, . . . , yd denote the coordinates of y ∈ E . Following the sameargument based on the inverse function theorem, possibly after re-stricting the domain U to a smaller neighborhood of x, the function Fadmits a smooth inverse. Thus, for all y ∈ M∩U, we may considerthese smooth curves, for i = 1, . . . , d− k:

ci(t) = F−1 (F(y) + tei) ,

where ei is here conflated with its coordinate representation: a canon-ical basis vector in Rd. Since

F(ci(t)) = F(y) + tei

has its last k entries all equal to zero (owing to y ∈ M ∩ U and1 ≤ i ≤ d− k), it follows that h(ci(t)) = 0 for all t in the domain of ci

(a neighborhood of t = 0), so that ci is a smooth curve onM. Further-more, ci(0) = y. As a result, we may define vector fields W1, . . . , Wd−k

onM∩U as

Wi(y) = c′i(0).

These vector fields are smooth since F and F−1 are smooth. It remainsto verify that they form a local frame. To this end, use the chain ruleand the identity DF−1(F(y)) = (DF(y))−1 to see that

Wi(y) = DF−1(F(y))ei = (DF(y))−1ei. (3.39)

Since DF(x) is invertible, DF(y) is invertible for y in a neighborhoodof x in E . If need be, reduce the domain U so that DF(y) is invertiblefor all y ∈ M∩ U. Then, equation (3.39) shows W1(y), . . . , Wd−k(y)are linearly independent for all y in U =M∩U: a neighborhood of xinM.

This allows us to prove the following statement for embedded sub-manifolds equipped with a Riemannian metric.

Proposition 3.60. Let f : M → R be a smooth function on a RiemannianmanifoldM. The gradient vector field grad f is a smooth vector field onM.

Proof. Pick an arbitrary point x ∈ M and a local frame W1, . . . , Wd

defined on a neighborhood U of x in M, where dimM = d. By theproperties of local frames, there exist unique functions g1, . . . , gd : U →R such that

grad f (y) = g1(y)W1(y) + · · ·+ gd(y)Wd(y)

Page 54: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

54 an introduction to optimization on smooth manifolds

for all y ∈ U . If we show g1, . . . , gd are smooth, then grad f is smoothon U ; showing this in a neighborhood of each point, it follows thatgrad f is a smooth vector field onM. To show that the gi’s are indeedsmooth, consider this linear system which defines them: taking theinner product of the above identity with each of the local frame fieldsagainst the Riemannian metric yields

〈W1(y), W1(y)〉y · · · 〈Wd(y), W1(y)〉y

......

〈W1(y), Wd(y)〉y · · · 〈Wd(y), Wd(y)〉y

g1(y)...

gd(y)

=

〈grad f (y), W1(y)〉y

...〈grad f (y), Wd(y)〉y

=

D f (y)[W1(y)]

...D f (y)[Wd(y)]

.

The matrix of this system is invertible for all y in U and dependssmoothly on y. Likewise, the right-hand side depends smoothly ony (justify this). Hence, The solution depends smoothly on y.

It is sometimes useful to orthonormalize a local frame: the Gram–Schmidt procedure achieves this while preserving smoothness [Lee12,Prop. 13.6], [Lee18, Prop. 2.8].

3.10 Notes and references

The main sources for this chapter are [AMS08], [Lee12], [Lee18] and[O’N83]. The definitions given here in a restricted setting are compat-ible with the general theory of differential geometry. As it is useful tobe able to connect the definitions we use to a broader body of work,this section gives a detailed outline of equivalence to a modern accountby Lee [Lee12]. When we say “in the usual sense,” we mean accordingto the standard definitions in that reference. See also Section 8.14.

A (finite dimensional) linear space E is a smooth manifold in a nat-ural way [Lee12, Example 1.24]. Our definition of embedded submani-fold of a linear space is equivalent to the usual definition. Its statementis in fact very close to the one by Darling [Dar94, p56], who introducesit with the same motivation, namely, to avoid charts at first.

Proposition 3.61. A subsetM of E is an embedded submanifold of E in theusual sense [Lee12, pp98–99] if and only if it is an embedded submanifold ofE under Definition 3.6.

Proof. By [Lee12, Example 1.26, Prop. 5.1], open subsets of E are em-bedded submanifolds of E of codimension 0, and vice versa. Further-more, by [Lee12, Prop. 5.16], M is an embedded submanifold of E of

Page 55: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: first order 55

positive codimension k if and only if every x ∈ M has a neighbor-hood U in E satisfying M∩ U = h−1(0) for some smooth functionh : U → Rk such that rank Dh(x′) = k for all x′ ∈ U. The only differ-ence with Definition 3.6 is that, in that definition, we only require Dhto have rank k at x. This is easily resolved by Lemma 3.62 below.

Lemma 3.62. Let U be a neighborhood of x in E . If h : U → Rk is smooth [Lee12, Prop. 4.1]

and rank Dh(x) = k, one can always restrict the domain U to another neigh-borhood U′ ⊆ U of x such that rank Dh(x′) = k for all x′ in U′.

Proof. The set U′ ⊆ U of points x′ where Dh(x′) has rank k is an openset in E . Indeed, let A(x′) ∈ Rk×d be the matrix representing Dh(x′)in some basis of E , with d = dim E . Consider this continuous functionon U: g(x′) = det(A(x′)A(x′)>). Notice that U′ = U\g−1(0). Sinceg−1(0) is closed (because it is the preimage of the closed set 0), itfollows that U′ is open. Furthermore, by assumption, x is in U′. Hence,it suffices to restrict the domain of h to U′.

All maps we call smooth under Definition 3.23 are smooth in theusual sense and vice versa.

Proposition 3.63. Let M,M′ be embedded submanifolds of linear spacesE , E ′. A map F : M →M′ is smooth in the sense of Definition 3.23 if andonly if it is smooth in the usual sense [Lee12, p34].

Proof. Assume F is smooth in the usual sense. We must show it ad-mits smooth local extensions. Since M is embedded in E , by [Lee12,Thm. 5.8, Ex. 1.22], for each x ∈ M, there exists a slice chart (U, ϕ)

for M around x, that is, U is a neighborhood of x in E and ϕ : U →ϕ(U) ⊆ Rd is a diffeomorphism (smooth map with smooth inverse)such that ϕ(y) = (ϕ(y), 0, . . . , 0) for every y ∈ M∩U, with dim E = dand ϕ : U → Rd−k, where dimM = d − k. Let T : Rd → Rd be thelinear operator that zeros out the last k entries of a vector. Then,ϕ−1 T ϕ is a map from U to U which “projects” U to M∩U. Itis smooth as the composition of smooth maps [Lee12, Prop. 2.10]. Wemay restrict its codomain to M∩U and it is still smooth since M isembedded in E [Lee12, Cor. 5.30]: this allows us to compose it with F.Further consider i : M′ → E ′, defined by i(z) = z: this is the inclusionmap, smooth by definition of embedded submanifolds [Lee12, pp98–99]. Then, consider F : U → E ′, defined by F = i F ϕ−1 T ϕ.This is indeed smooth since it is a composition of smooth maps, andF(y) = F(y) for all y ∈ M∩U, hence this is a local smooth extension.Since such an extension exists for arbitrary x ∈ M, we conclude thatF is smooth in the sense of Definition 3.23.

The other way around, assume F is smooth in the sense of Def-inition 3.23. For an arbitrary x ∈ M, use that M,M′ are embed-ded in E , E ′ to pick slice charts as above: with U a neighborhood

Page 56: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

56 an introduction to optimization on smooth manifolds

of x in E and V a neighborhood of F(x) in E ′, let ϕ : U → ϕ(U) ⊆Rd and ψ : V → ψ(V) ⊆ Rd′ be diffeomorphisms such that ϕ(y) =

(ϕ(y), 0, . . . , 0) for y ∈ M ∩ U and ψ(z) = (ψ(z), 0, . . . , 0) for z ∈M′ ∩ V. Then, (M∩U, ϕ) and (M′ ∩ V, ψ) are charts of M,M′, re-spectively [AMS08, Prop. 3.3.2]. To show that F is smooth in the usualsense, it is sufficient to show that the coordinate representation of Fin these charts, ψ F ϕ−1, is smooth (in the usual sense)—if need be,replace U by U ∩ F−1(V) to ensure the composition is well defined.To this end, use our assumption that there exists a local smooth ex-tension F : U → V for F—if need be, the neighborhoods U, V of thecharts and of the smooth extension can be reduced to their respectiveintersections. Then, ψ F ϕ−1 = T1 ψ F ϕ−1 T2, where T2 padsits input with zeros and T1 trims the trailing entries of its input (allzeros in this case), so as to ensure equality. This shows smoothness asit is a composition of smooth maps.

Thus, there is no need to distinguish between these two notionsof smoothness. Proposition 3.24 states that any smooth map betweenembedded submanifolds of linear spaces can be smoothly extended toa neighborhood of its domain, and vice versa. We give a proof below,based on the tubular neighborhood theorem [Lee12, Thm. 6.24], [Lee18,Thm. 5.25].

Proof of Proposition 3.24. LetM,M′ be embedded submanifolds of lin-ear spaces E , E ′ and let F : M → M′ be a smooth map. We need toshow it can be smoothly extended to a map F from a neighborhood ofM to E ′. Since M is embedded in E ≡ Rd, it admits a tubular neigh-borhood: there exists a neighborhood U of M in E and a smooth mapr : U →M such that r(x) = x for all x ∈ M [Lee12, Prop. 6.25]. Since r is a (topological) retraction: this is dif-

ferent from (but related to) our notion ofretraction.

composition preserves smoothness [Lee12, Prop. 2.10], F r : U →M′

is smooth. Finally, since M′ is embedded in E ′, the inclusion mapi : M′ → E ′, defined by i(x) = x, is smooth—this is part of the def-inition [Lee12, pp98–99]. Overall, the map F = i F r : U → E ′ issmooth, and it verifies F(x) = i(F(r(x))) = F(x) for all x ∈ M. Thisis a smooth extension for F around M. As a side note, observe thatF(x) ∈ M′ for all x ∈ U.

The other way around, given a map F : M → M′, assume thereexists F : U ⊆ E → E ′, smooth on a neighborhood U of M in E , suchthat F(x) = F(x) for all x ∈ M. Then, by [Lee12, Thm. 5.27], sinceM is an embedded submanifold of E ,1 the map F|M : M → E ′ is a 1 Formally: M is an embedded subman-

ifold of E , and it is included in U whichis an open submanifold of E , henceM isan embedded submanifold of U: simplyintersect the domain of any local defin-ing map of M in E with U and ap-ply [Lee12, Prop. 5.16]. It is to F as asmooth map from U to M′ that we ap-ply [Lee12, Thm. 5.27].

smooth map. Furthermore, since the image of F|M is contained inM′, we may restrict the codomain. By [Lee12, Cor. 5.30], since M′

is an embedded submanifold of E ′, the map F = F|M : M → M′ issmooth.

Page 57: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: first order 57

The converse follows from Proposition 3.63: a map F : M → M′

which admits a smooth extension on a neighborhood of M in E issmooth since this smooth extension can be used as a local smoothextension around every point. Thus, we could also present the charac-terization of smoothness offered by Proposition 3.24 as the definitionof smooth maps. This is indeed practical in many situations, and thisis why we introduced that result early on. However, adopting this asour definition would make it harder to prove, for example, that thegradient vector field of a smooth function is smooth.

For the special case of a smooth function f : M → R where M isembedded and closed in E , it is also possible to smoothly extend f toall of E . Indeed, by [Lee12, Prop. 5.5],M is properly embedded in E ifand only if it is closed, and smooth functions on properly embeddedsubmanifolds can be globally smoothly extended [Lee12, Lem. 5.34,Exercise 5-18]. This result (and others referenced above) relies on par-titions of unity [Lee12, pp40–47]. Importantly, this is not generally truefor manifolds that are merely embedded: see Exercise 3.26.

The proof of Proposition 3.60 generalizes seamlessly to establisha broader result known as the musical isomorphism, or the tangent–cotangent isomorphism [Lee12, pp341–343][O’N83, Prop. 3.10]: throughthe Riemannian metric, smooth vector fields onM are one-to-one withsmooth one-forms or covector fields onM; these maps transform smoothvector fields into smooth scalar fields—D f is an example.

Definition 3.46 restricts the notion of Riemannian submanifolds of Eto embedded submanifolds of E . This is compatible with O’Neill, whoreserves the word submanifold for embedded submanifolds [O’N83,pp19, 57]. Certain authors adopt a more general definition, also allow-ing an immersed submanifold to be called a Riemannian submanifold;this is the case of Lee for example [Lee18, p15].

The rank condition in Definition 3.6 is key. Indeed, contrast thiswith the following fact: any closed subset of a linear space E is thezero-set of a smooth function from E to R [Lee12, Thm. 2.29] (and Ecan be replaced by a manifold in this statement). For example, thereexists a smooth function h : R2 → R such that h−1(0) is a square inR2. Of course, a square is not smoothly embedded in R2 due to itscorners, so we deduce that Dh must necessarily have rank drops.

Here is an example: consider h : R2 → R defined by h(x) = (x1x2)2.

Its zero-set is a cross in R2. Yet, Dh(x) = [ 2x1x22 , 2x2

1x2 ] has constantrank on the cross: it is zero everywhere. Thus, we see that in order toexclude pathological sets such as this cross it is not sufficient to ask forthe rank of Dh(x) to be constant along the zero-set of h: it has to havemaximal rank too. (As we mention in Section 8.14, it is also acceptableto require a constant rank on a neighborhood of the zero-set: h failsthat test.)

Page 58: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian
Page 59: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

4First-order optimization algorithms

In this chapter, we consider a first algorithm to solve problems of theform

minx∈M

f (x), (4.1)

whereM is a (smooth) manifold and f : M→ R is a smooth function,called the cost function or objective function. Discussions in this chapterapply for general manifolds: embedded submanifolds as defined inthe previous chapter form one class of examples, and we detail furthermanifolds in later chapters.

A (global) minimizer or (global) optimizer for (4.1) is a point x ∈ Msuch that f (x) ≤ f (y) for all y ∈ M. There may not exist a global Formally, if no minimizer exists, prob-

lem (4.1) should read “infx∈M f (x)”.minimizer. Global minimizers may also not be unique. Defining thisnotion merely requires M to be a set and f to be a function: theirsmoothness is irrelevant.

While it is typically our goal to compute a global minimizer, ingeneral, this goal is out of reach. A more realistic goal is to aim fora local minimizer or local optimizer, that is, a point x ∈ M such thatf (x) ≤ f (y) for all y in a neighborhood of x in M. In other words:a local minimizer appears to be optimal when compared only to itsimmediate surroundings. Likewise, a strict local minimizer satisfiesf (x) < f (y) for all y 6= x in some neighborhood around x. Recallthat a neighborhood of x inM is an open subset ofM which containsx. Hence, the notion of local minimizer relies on the topology of M. The topology of embedded submani-

folds is specified in Definition 3.15.Just as for global minimizers, it does not rely on smoothness of eitherM or f .

Thus, importantly,

The problem we set out to solve is defined independently of the smoothstructures we impose.

Yet, smoothness plays a crucial role in helping us solve that problem.As we discuss below, the notions of retraction and gradient afford us

Page 60: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

60 an introduction to optimization on smooth manifolds

efficient means of moving on the manifold while making progress to-ward our goal. In this sense, the smooth geometry we impose on theproblem is entirely ours to choose, and an integral part of our respon-sibilities as algorithm designer.

Since optimization algorithms generate sequences of points on M,it is important to define terms pertaining to convergence. These arephrased in terms of the topology onM.

Definition 4.1. Consider a sequence S of points x0, x1, x2, . . . on a manifoldM. Then,

1. A point x ∈ M is a limit of S if, for every neighborhood U of x in M, If the topology onM is Hausdorff, whichis the case for embedded submanifoldsof linear spaces and is typically part ofthe general definition of a manifold (seeSection 8.2), then a sequence on M hasat most one limit.

there exists an integer K such that xK, xK+1, xK+2, . . . are in U . Then, wewrite limk→∞ xk = x and we say the sequence converges to x.

2. A point x ∈ M is an accumulation point of S if it is a limit of a sub-sequence of S, that is, if every neighborhood U of x in M contains aninfinite number of elements of S.

This chapter focuses on Riemannian gradient descent. With justone additional geometry tool, namely, the notion of vector transport ortransporter introduced in Section 10.5, a number of other first-orderoptimization algorithms can be addressed, including Riemannian ver-sions of nonlinear conjugate gradients and BFGS: see Section 4.9 forpointers.

Exercise 4.2. Give an example of a sequence that has no limit point. Give anexample of a sequence that has a single accumulation point yet no limit point.Give an example of a sequence that has two distinct accumulation points.Show that if a sequence converges to x, then all its accumulation points areequal to x. Now consider the particular case ofM an embedded submanifoldof a linear space E . Show that a sequence onM may have a limit in E yet nolimit inM. Show that this cannot happen ifM is closed in E .

4.1 A first-order Taylor expansion on curves

Optimization algorithms move from point to point on a manifold byfollowing smooth curves. In order to analyze these algorithms, weneed to understand how the cost function varies along these curves.In Rn for example, we could be interested in how f (x + tv) varies as afunction of t close to t = 0. The tool of choice for this task is a Taylorexpansion. We now extend this concept to manifolds.

Let c : I →M be a smooth curve onM with c(0) = x and c′(0) = v,where I is an open interval of R around t = 0. Evaluating f along thiscurve yields a real function:

g : I → R : t 7→ g(t) = f (c(t)).

Page 61: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

first-order optimization algorithms 61

Since g = f c is smooth by composition and it maps real numbers toreal numbers, it admits a Taylor expansion:

g(t) = g(0) + tg′(0) + O(t2).

Clearly, g(0) = f (x). Furthermore, by the chain rule,

g′(t) = D f (c(t))[c′(t)] =⟨grad f (c(t)), c′(t)

⟩c(t) ,

so that g′(0) = 〈grad f (x), v〉x. Overall, we get this Taylor expansion: See Section 5.9 for a second-order Taylorexpansion.

f (c(t)) = f (x) + t 〈grad f (x), v〉x + O(t2). (4.2)

In particular, if the curve is obtained by retraction as c(t) = Rx(tv),

f (Rx(tv)) = f (x) + t 〈grad f (x), v〉x + O(t2). (4.3)

Equivalently, we may eliminate t by introducing s = tv:

f (Rx(s)) = f (x) + 〈grad f (x), s〉x + O(‖s‖2x). (4.4)

The latter is a statement about the composition f R: TM→ R, called It is called this way as it quite literallypulls the cost function back to the tan-gent spaces.

the pullback of f to the tangent spaces. In particular, f Rx : TxM→ R

is the pullback of f to the tangent space at x. Importantly, this is asmooth function on a linear space: it has many uses, as we shall soonsee.

Exercise 4.3. Given a smooth curve c : [0, 1] → M with c(0) = x andc(1) = y, show there exists t ∈ (0, 1) such that

f (y) = f (x) +⟨grad f (c(t)), c′(t)

⟩c(t) . (4.5)

(See Exercise 5.34 for the next order.)

4.2 First-order optimality conditions

In general, checking whether a point x on M is a local optimizer forf : M → R is difficult. We can however identify certain simple nec-essary conditions for a point x to be a local optimizer. The followingproposition states such a condition. It is called the first-order necessaryoptimality condition, because it involves first-order derivatives, namely,the gradient of f . At the very least, we should ensure accumulationpoints of sequences generated by optimization algorithms satisfy thiscondition.

Proposition 4.4. Let f : M → R be a smooth function on a Riemannian The Riemannian structure is optional todefine necessary optimality conditions:we could state Proposition 4.4 as sayingD f (x) = 0 instead.

manifold. If x is a local minimizer of f , then grad f (x) = 0.

Page 62: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

62 an introduction to optimization on smooth manifolds

Proof. For contradiction, assume grad f (x) 6= 0. Since −grad f (x) is atangent vector to M at x, there exists a smooth curve c : I →M suchthat c(0) = x and c′(0) = −grad f (x). Applying the Taylor expan-sion (4.2) to f c we find:

f (c(t)) = f (x)− t‖grad f (x)‖2x + O(t2).

Combining with the assumption ‖grad f (x)‖x > 0, we conclude thatthere exists ε > 0 such that f (c(t)) < f (x) for all t ∈ (0, ε), whichcontradicts local optimality of x.

More formally, since x is a local minimizer, there exists a neighbor-hood U of x in M such that f (x) ≤ f (y) for all y ∈ U . Since c iscontinuous, c−1(U ) = t ∈ I : c(t) ∈ U is open, and it contains 0since c(0) = x ∈ U . Hence, c−1(U ) ∩ (0, ε) is non-empty: there existst ∈ (0, ε) (implying f (c(t)) < f (x)) such that c(t) is in U (implyingf (c(t)) ≥ f (x)): a contradiction.

This result justifies our interest in points where the gradient van-ishes. We give them a name.

Definition 4.5. Given a smooth function f on a Riemannian manifold M,we call x ∈ M a critical point or a stationary point of f if grad f (x) = 0.

4.3 Riemannian gradient descent

The standard gradient descent algorithm in Euclidean space iterates

xk+1 = xk − αkgrad f (xk), k = 0, 1, 2, . . . ,

starting with some x0 ∈ E . Inspired by this, the first algorithm weconsider for optimization on manifolds is Riemannian gradient descent(RGD): given x0 ∈ M and a retraction onM, iterate

xk+1 = Rxk (−αkgrad f (xk)), k = 0, 1, 2, . . . .

See Algorithm 4.1. Importantly, the choice of retraction is part of thealgorithm specification.

Input: x0 ∈ M

For k = 0, 1, 2, . . .

Pick a step-size αk > 0

xk+1 = Rxk (sk), with step sk = −αkgrad f (xk)

Algorithm 4.1: Riemannian gradient de-scent (RGD)

Page 63: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

first-order optimization algorithms 63

To complete the specification of RGD, we need an explicit procedureto pick the step-size αk at each iteration. This is called the line-searchphase, and it can be done in various ways. Define

g(t) = f (Rxk (−tgrad f (xk))). (4.6)

Line-search is about minimizing g approximately: sufficiently well tomake progress, yet bearing in mind that this is only a means to anend; we should not invest too much resources into it. Three commonstrategies include:

1. Fixed step-size: αk = α for all k.

2. Optimal step-size: αk minimizes g(t) exactly; in rare cases, this canbe done cheaply.

3. Backtracking: starting with a guess t0 > 0, iteratively reduce it bya factor as ti+1 = τti with τ ∈ (0, 1) until ti is deemed acceptable,and set αk = ti. There are various techniques to pick t0.

We discuss this more in Section 4.5. For now, we focus on identifyingassumptions that lead to favorable behavior.

Our first assumption about problem (4.1) simply requires that thecost function f be globally lower-bounded. This is normally the casefor a well-posed optimization problem.

A1. There exists flow ∈ R such that f (x) ≥ flow for all x ∈ M.

We expect that the algorithm may converge (or at least produceinteresting points) provided it makes some progress at every iteration.This is the object of the second assumption.

A2. At each iteration, the algorithm achieves sufficient decrease, in that Going forward in this chapter, we mostoften write 〈·, ·〉 and ‖ · ‖ instead of 〈·, ·〉xand ‖ · ‖x when the base point x is clearfrom context.

there exists a constant c > 0 such that, for all k,

f (xk)− f (xk+1) ≥ c‖grad f (xk)‖2. (4.7)

It is the responsibility of the line-search procedure to ensure thisassumption holds. This can be done under some conditions on f andthe retraction, as we discuss later. When both assumptions hold, itis straightforward to guarantee that RGD produces points with smallgradient. There are no conditions on the initialization x0.

Proposition 4.6. Let f be a smooth function satisfying A1 on a Rieman-nian manifold M. Let x0, x1, x2, . . . be iterates generated by Algorithm 4.1satisfying A2 with constant c. Then,

limk→∞‖grad f (xk)‖ = 0.

Page 64: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

64 an introduction to optimization on smooth manifolds

In particular, all accumulation points (if any) are critical points. Furthermore,for all K ≥ 1, there exists k in 0, . . . , K− 1 such that

‖grad f (xk)‖ ≤√

f (x0)− flowc

1√K

.

Proof. The proof is based on a standard telescoping sum argument.For all K ≥ 1, we get the inequality as follows:

f (x0)− flowA1≥ f (x0)− f (xK) =

K−1

∑k=0

f (xk)− f (xk+1)

A2≥ Kc min

k=0,...,K−1‖grad f (xk)‖2.

To get a limit statement, observe that f (xk+1) ≤ f (xk) for all k by A2.Then,

f (x0)− flow ≥∞

∑k=0

f (xk)− f (xk+1)

is a bound on a series of nonnegative numbers. This implies the sum-mands converge to zero:

0 = limk→∞

f (xk)− f (xk+1) ≥ c limk→∞‖grad f (xk)‖2,

which confirms the limit statement. Now let x be an accumulationpoint of the sequence of iterates. By definition, there exists a subse-quence of iterates x(0), x(1), x(2), . . . which converges to x. Then, sincethe norm of the gradient of f is a continuous function, it commuteswith the limit and we find:

0 = limk→∞‖grad f (xk)‖ = lim

k→∞‖grad f (x(k))‖

= ‖grad f ( limk→∞

x(k))‖ = ‖grad f (x)‖,

showing all accumulation points are critical points.

Importantly, the limit statement does not say that the sequence ofiterates converges to a critical point. It only states that, under the pre-scribed conditions, the accumulation points of the sequence of iterates(of which there may be one, more than one, or none) are critical points.To preserve conciseness, assuming there exists at least one accumula-tion point (which is often the case), this property may be summarizedas: gradient descent converges to critical points (note the plural). See also Section 4.9.

In the next section, we explore regularity conditions to help us guar-antee sufficient decrease using simple line-search procedures. The con-dition we introduce is inspired by the Taylor expansion of f alongcurves generated by the retraction.

Page 65: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

first-order optimization algorithms 65

4.4 Regularity conditions and iteration complexity

In order to guarantee sufficient decrease as per A2, we need to un-derstand how f (xk+1) compares to f (xk). Let sk be the tangent vectorsuch that xk+1 = Rxk (sk). Then, the Taylor expansion (4.4) states:

f (xk+1) = f (Rxk (sk)) = f (xk) + 〈grad f (xk), sk〉+ O(‖sk‖2).

If the quadratic remainder term stays under control during all itera-tions, we may deduce a guarantee on the progress f (xk) − f (xk+1).This motivates the following assumption on the pullback f R.

A3. For a given subset S of the tangent bundle TM, there exists a constant See Corollary 10.48 and Exercises 10.51

and 10.52.L > 0 such that, for all (x, s) ∈ S,

f (Rx(s)) ≤ f (x) + 〈grad f (x), s〉+ L2‖s‖2. (4.8)

Under this assumption (on an appropriate set S to be specified),there exists a range of step-sizes that lead to sufficient decrease.

Proposition 4.7. Let f be a smooth function on a Riemannian manifoldM.For a retraction R, let f R satisfy A3 on a set S ⊆ TM with constant L. Ifthe pairs (x0, s0), (x1, s1), (x2, s2), . . . generated by Algorithm 4.1 with step-sizes

αk ∈ [αmin, αmax] ⊂ (0, 2/L)

all lie in S, then the algorithm produces sufficient decrease. Specifically, A2holds with

c = min(

αmin −L2

α2min, αmax −

L2

α2max

)> 0.

Proof. By assumption on the pullback, for all k,

f (xk+1) = f (Rxk (sk)) ≤ f (xk) + 〈grad f (xk), sk〉+L2‖sk‖2.

Reorganizing and using sk = −αkgrad f (xk) shows

f (xk)− f (xk+1) ≥(

αk −L2

α2k

)‖grad f (xk)‖2.

The coefficient, quadratic in αk, is symmetric around its maximizer1/L, positive between its roots at 0 and 2/L. By assumption on αk,

αk −L2

α2k ≥ min

(αmin −

L2

α2min, αmax −

L2

α2max

)> 0,

which concludes the proof.

As a particular case, if the constant L is known beforehand, thenwe get an explicit algorithm and associated guarantee as a corollary ofPropositions 4.6 and 4.7.

Page 66: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

66 an introduction to optimization on smooth manifolds

Corollary 4.8. Let f be a smooth function satisfying A1 on a Riemannianmanifold M. For a retraction R, let f R satisfy A3 on a set S ⊆ TMwith constant L. Let (x0, s0), (x1, s1), (x2, s2), . . . be the pairs generated byAlgorithm 4.1 with constant step-size αk = 1/L. If all these pairs are in S,then

limk→∞‖grad f (xk)‖ = 0.

Furthermore, for all K ≥ 1, there exists k in 0, . . . , K− 1 such that In particular, for all ε > 0 there exists kin 0, . . . , K− 1 such that ‖grad f (xk)‖ ≤ εprovided K ≥ 2L( f (x0)− flow) 1

ε2 .‖grad f (xk)‖ ≤√

2L( f (x0)− flow)1√K

.

How reasonable is A3? Let us contemplate it through the Euclideanlens. Consider f smooth on a Euclidean space E equipped with thecanonical retraction Rx(s) = x + s. If f R satisfies A3 on the wholetangent bundle TE = E × E , then

∀x, s ∈ E , f (x + s) ≤ f (x) + 〈grad f (x), s〉+ L2‖s‖2. (4.9)

This expresses that the difference between f and its first-order Taylorexpansion is uniformly upper-bounded by a quadratic. This propertyholds if (and only if) the gradient of f is Lipschitz continuous with con-stant L, that is, if

∀x, y ∈ E , ‖grad f (y)− grad f (x)‖ ≤ L‖y− x‖. (4.10)

Indeed, under that condition, by the fundamental theorem of calculusand Cauchy–Schwarz:

f (x + s)− f (x)− 〈grad f (x), s〉 =∫ 1

0D f (x + ts)[s]dt− 〈grad f (x), s〉 With c(t) = x + ts, we start with

f (x + s)− f (x) = f (c(1))− f (c(0))

=∫ 1

0( f c)′(t)dt

=∫ 1

0D f (c(t))[c′(t)]dt.

≤∣∣∣∣∫ 1

0〈grad f (x + ts)− grad f (x), s〉dt

∣∣∣∣≤∫ 1

0‖grad f (x + ts)− grad f (x)‖‖s‖dt

≤ ‖s‖∫ 1

0L‖ts‖dt

=L2‖s‖2. (4.11)

Lipschitz continuity of the gradient (4.10) is a common assumption inEuclidean optimization, valued for the upper-bounds it provides (4.11).When working on manifolds, generalizing (4.10) requires substantialwork due to the comparison of gradients at two distinct points (henceof vectors in two distinct tangent spaces). Sections 10.3, 10.4 and 10.5provide a detailed discussion involving a special retraction. On theother hand, generalizing (4.11) poses no particular difficulty once aretraction is chosen. This is the reasoning that lead to A3, which wehenceforth call a Lipschitz-type assumption.

Page 67: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

first-order optimization algorithms 67

Exercise 4.9. For the cost function f (x) = 12 x>Ax on the sphere Sn−1 as a

Riemannian submanifold of Rn equipped with the retraction Rx(s) = x+s‖x+s‖ ,

determine L such that A3 holds over the whole tangent bundle.

4.5 Backtracking line-search

The simplest result in the previous section is Corollary 4.8, which as-sumes a constant step-size of 1/L. In practice however, the constantL is seldom known. Even when it is known, it may be large due to aparticular behavior of f R in a limited part of the domain, thus seem-ingly forcing us to take small steps for the whole sequence of iterates,which evidently is not necessary: only the local behavior of the costfunction around xk matters to ensure sufficient decrease at iteration k.Thus, we favor line-search algorithms that are adaptive.

A common adaptive strategy to pick the step-sizes αk for RGD iscalled the backtracking line-search: see Algorithm 4.2. For a specifiedinitial step-size α, this procedure iteratively reduces the tentative step-size by a factor τ ∈ (0, 1) (often set to 0.8 or 0.5) until the Armijo–Goldstein condition is satisfied, namely,

f (x)− f (Rx(−αgrad f (x))) ≥ rα‖grad f (x)‖2, (4.12)

for some constant r ∈ (0, 1) (often set to 10−4).

Parameters: τ, r ∈ (0, 1)

Input: x ∈ M, α > 0

Set α← α

While f (x)− f (Rx(−αgrad f (x))) < rα‖grad f (x)‖2

Set α← τα

Output: α

Algorithm 4.2: Backtracking line-search

The following lemma and corollary show that, under the regularitycondition A3, backtracking line-search produces sufficient decrease,with a constant c which depends on various factors. Importantly, theregularity constant L affects the guarantee but need not be known.

Lemma 4.10. Let f be a smooth function on a Riemannian manifold M.For a retraction R, a point x ∈ M and an initial step-size α > 0, let A3hold for f R on (x,−αgrad f (x)) : α ∈ [0, α] with constant L. Then,

Page 68: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

68 an introduction to optimization on smooth manifolds

Algorithm 4.2 with parameters τ, r ∈ (0, 1) outputs a step-size α such that

f (x)− f (Rx(−αgrad f (x))) ≥ r min(

α,2τ(1− r)

L

)‖grad f (x)‖2

after computing at most

max(

1, 2 + logτ−1

(αL

2(1− r)

))retractions and cost function evaluations (assuming f (x) and grad f (x) werealready available).

Proof. Consider grad f (x) 6= 0 (otherwise, the claim is clear). For allstep-sizes α considered by Algorithm 4.2, the regularity assumptionguarantees

f (x)− f (Rx(−αgrad f (x))) ≥ α‖grad f (x)‖2 − L2

α2‖grad f (x)‖2.

On the other hand, if the algorithm does not terminate for a certainvalue α, then

f (x)− f (Rx(−αgrad f (x))) < rα‖grad f (x)‖2.

If both are true simultaneously, then

α >2(1− r)

L.

Thus, if α drops below this bound, the line-search algorithm termi- Of course, it might also terminate earlierwith a longer step-size: we consider theworst case.

nates. This happens either because α itself is smaller than 2(1−r)L , or

as the result of a reduction of α by the factor τ. We conclude that thereturned α satisfies:

α ≥ min(

α,2τ(1− r)

L

).

Furthermore, the returned α is of the form α = ατn−1 where n is thenumber of retractions and cost function evaluations issued by Algo-rithm 4.2. Hence,

n = 1 + logτ

α

)= 1 + logτ−1

α

)≤ 1 + max

(0, logτ−1

(αL

2τ(1− r)

)),

which concludes the proof.

When used in conjunction with RGD, one may want to pick the ini-tial step-size α dynamically as αk at iteration k. As long as the initializa-tions αk remain bounded away from zero, we retain our convergenceresult.

Page 69: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

first-order optimization algorithms 69

Corollary 4.11. Let f be a smooth function satisfying A1 on a Riemannianmanifold M. For a retraction R, let f R satisfy A3 on a set S ⊆ TMwith constant L. Let x0, x1, x2, . . . be the iterates generated by RGD (Algo-rithm 4.1) with backtracking line-search (Algorithm 4.2) using fixed param-eters τ, r ∈ (0, 1) and initial step-sizes α0, α1, α2, . . . If for every k the set(xk,−αgrad f (xk)) : α ∈ [0, αk] is in S and if lim infk→∞ αk > 0, then

limk→∞‖grad f (xk)‖ = 0.

Furthermore, for all K ≥ 1, there exists k in 0, . . . , K− 1 such that

‖grad f (xk)‖ ≤√√√√ f (x0)− flow

r min(

α0, . . . , αK−1, 2τ(1−r)L

) 1√K

.

The amount of work per iteration is controlled as in Lemma 4.10.

Proof. By Lemma 4.10, backtracking line-search guarantees decreasein the form

f (x)− f (xk+1) ≥ ck‖grad f (xk)‖2, with ck = r min(

αk,2τ(1− r)

L

).

Following the same proof as for Proposition 4.6,

f (x0)− flow ≥K−1

∑k=0

f (xk)− f (xk+1) ≥K−1

∑k=0

ck‖grad f (xk)‖2

≥ K · mink=0,...,K−1

ck · mink=0,...,K−1

‖grad f (xk)‖2.

This establishes the first claim. For the limit statement, observe thattaking K → ∞ on the first line above shows

limk→∞

ck‖grad f (xk)‖2 = 0.

Since lim infk→∞ ck > 0, we deduce limk→∞ ‖grad f (xk)‖2 = 0.

As a concluding remark, consider replacing the cost function f (x)by a shifted and positively scaled version of itself, say g(x) = 8 f (x) +3. Arguably, the optimization problem did not change, and we mightexpect a reasonable optimization algorithm initialized at x0 to pro-duce the same iterates to minimize f or to minimize g. It is easilychecked that the combination of Algorithms 4.1 and 4.2 has this in-variance property, provided the initial step-sizes αk are chosen in sucha way that the first step considered, namely, −αkgrad f (xk) is invariantunder positive scaling of f . For the first iteration, this can be done forexample by setting

α0 =`0

‖grad f (x0)‖

Page 70: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

70 an introduction to optimization on smooth manifolds

with some constant `0, which is then the length of the first retractedstep: it can be set relative to the scale of the search space or to theexpected distance between x0 and a solution (this does not need to beprecise). For subsequent iterations, a useful heuristic is (see [NW06,§3.5, eq. (3.60)] for more)

αk = 2f (xk−1)− f (xk)

‖grad f (xk)‖2 , (4.13)

which also yields the desired invariance. It is common to initializewith a slightly larger value, say, by a factor of 1/τ. One may also setαk to be the maximum between the above value and a small referencevalue, to ensure the first step-size remains bounded away from zero(as required by our convergence theorem).

4.6 Local convergence*

We discussed global convergence of RGD, establishing that, under some Importantly, global convergence doesnot mean convergence to a global opti-mizer; it merely means convergence re-gardless of initialization x0.

assumptions, all accumulation points of the sequence of iterates arecritical points. We further discussed how fast the gradient norm con-verges to zero.

These results, however, do not predict convergence to a single point,and the worst-case rate is slow (it is called sublinear), whereas in prac-tice we typically do observe convergence to a single point, and the rateof convergence is, eventually, linear, as we define now.

Definition 4.12. In a metric space equipped with a distance dist, a sequence This is also called R-linear convergence,as opposed to the more restricted no-tion of Q-linear convergence which forcesεk = dist(ak , a).

a0, a1, a2, . . . converges at least linearly to a? if there exists a sequence ofpositive reals ε0, ε1, ε2, . . . converging to zero such that dist(ak, a?) ≤ εk

and limk→∞εk+1

εk= µ for some µ ∈ (0, 1). Then, log10(1/µ) is the rate of

convergence. If the above holds with µ = 0, the convergence is superlinear.

This definition applies to sequences of real numbers (for example,f (xk) or ‖grad f (xk)‖) using the absolute value distance, as well as tosequences of iterates onM using a notion of distance on the manifold:see Section 10.1.

The observed behavior is elucidated in two important results calledthe capture theorem [AMS08, 4.4.2] and the local convergence theo-rem for line-search–based methods [AMS08, Thm. 4.5.6]. Informally,these state that, if x? is a critical point and the Hessian at x? (definedin Section 5.5) is positive definite, then there exists a neighborhood ofx? such that, if the sequence of iterates enters that neighborhood, thenRGD (under some conditions on the cost function and on the step-sizes) converges to x?, and the sequence f (x0), f (x1), f (x2), . . . con-verges at least linearly to f (x?). Using this, one can show x0, x1, x2, . . .also converges at least linearly (to x?), with half the convergence rate.

Page 71: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

first-order optimization algorithms 71

Furthermore, the rate of convergence is better if the condition numberof the Hessian, that is, the ratio of its largest to smallest eigenvalue, issmaller.

4.7 Computing gradients

The gradient1 of a function f : M → R on a Riemannian manifold is 1 See Definitions 3.48 and 8.52.

defined in full generality as the unique vector field grad f on M suchthat, for all x ∈ M and v ∈ TxM,

D f (x)[v] = 〈grad f (x), v〉x .

This suggests a general strategy to obtain an explicit expression forgrad f :

1. Determine an expression for D f (x)[v], and

2. Re-arrange it until it is of the form 〈g, v〉x, with some g ∈ TxM.

At this point, we get the gradient by identification: grad f (x) = g. Thisrequires essentially two steps: first, to write out D f (x)[v] somewhatexplicitly as an inner product between two quantities; then, to use thenotion of adjoint2 of a linear operator to isolate v. 2 See Definition 3.3.

In working out directional derivatives, three rules get most of thework done:

1. The chain rule: as for (3.28), let F : M → M′ and G : M′ → M′′

be smooth maps between manifoldsM,M′,M′′. The compositionH = G F defined by H(x) = G(F(x)) is smooth with differential:

DH(x)[v] = DG(F(x))[DF(x)[v]]. (4.14)

2. The product rule: let F, G be two smooth maps from a manifoldMto matrix spaces such that F(x) and G(x) can be matrix-multipliedto form the product map H = FG defined by H(x) = F(x)G(x). Forexample, F maps M to Rn×k and G maps M to Rk×d. Then, H issmooth with differential:

DH(x)[v] = DF(x)[v]G(x) + F(x)DG(x)[v]. (4.15)

This rule holds for any type of product. For example, with theentrywise product H(x) = F(x) G(x), we have

DH(x)[v] = DF(x)[v] G(x) + F(x)DG(x)[v]. (4.16)

Likewise, with the Kronecker product H(x) = F(x)⊗ G(x),

DH(x)[v] = DF(x)[v]⊗ G(x) + F(x)⊗DG(x)[v]. (4.17)

Page 72: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

72 an introduction to optimization on smooth manifolds

3. Inner product rule: let F, G : M → E be two smooth maps from a To differentiate inner products of twosmooth vector fields on a manifold, weneed more tools: see Sections 5.4 and 5.7,specifically Theorems 5.4 and 5.26.

manifold M to a linear space E equipped with an inner product〈·, ·〉. Then, the scalar function h(x) = 〈F(x), G(x)〉 is smooth withdifferential:

Dh(x)[v] = 〈DF(x)[v], G(x)〉+ 〈F(x), DG(x)[v]〉 . (4.18)

In many cases, it is sufficient to work out the gradient of a functiondefined on a Euclidean space, then to use a rule to convert it to a Rie-mannian gradient. For example, Proposition 3.51 shows how to obtainthe Riemannian gradient of a function f defined on a Riemannian sub-manifold of a Euclidean space E by orthogonal projection to tangentspaces. Thus, here we focus on the Euclidean case.

Let f : E → R be defined by f (x) = 〈F(x), G(x)〉, where F and G E.g., f (X) = Tr(F(X)) = 〈F(X), I〉 orf (X) = ‖F(X)‖2 = 〈F(X), F(X)〉.This discussion extends directly to com-plex matrices with inner product (3.18).

map E to E ′: two possibly distinct Euclidean spaces of real matrices(that is, matrices in E and E ′ may have different sizes). We equipboth of them with the standard inner product 〈U, V〉 = Tr(U>V) forreal matrices (3.15), bearing in mind that, formally, these are differentinner products since they are defined on different spaces. To stress thisdistinction, we write 〈·, ·〉E and 〈·, ·〉E ′ , so that f (x) = 〈F(x), G(x)〉E ′ .From (4.18), we know

D f (x)[v] = 〈DF(x)[v], G(x)〉E ′ + 〈F(x), DG(x)[v]〉E ′ .

Letting DF(x)∗ denote the adjoint of DF(x) with respect to the innerproducts on E and E ′, and similarly for DG(x)∗, we get

D f (x)[v] = 〈v, DF(x)∗[G(x)]〉E + 〈DG(x)∗[F(x)], v〉E .

Using symmetry and linearity of the inner product and the definitionof gradient of f , it follows that

grad f (x) = DF(x)∗[G(x)] + DG(x)∗[F(x)]. (4.19)

This highlights the importance of computing adjoints of linear opera-tors in obtaining gradients. Formulas (3.16) and (3.19) are particularlyhelpful in this respect. We illustrate this in examples below.

Example 4.13. Consider F : Rn×n → Rn×n defined by F(X) = Xk for somepositive integer k. Using the product rule repeatedly, it is easy to see that

DF(X)[U] = UXk−1 + XUXk−2 + X2UXk−3 + · · ·+ Xk−2UX + Xk−1U

=k

∑`=1

X`−1UXk−`. (4.20)

Equipping Rn×n with the usual trace inner product, we find that the adjoint

Page 73: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

first-order optimization algorithms 73

is simply DF(X)∗ = DF(X>). Indeed, for all U, V ∈ Rn×n, using (3.16),

〈DF(X)[U], V〉 =k

∑`=1

⟨X`−1UXk−`, V

⟩=

k

∑`=1

⟨U, (X>)`−1V(X>)k−`

⟩=⟨

U, DF(X>)[V]⟩

. (4.21)

Similarly, for F(X) = Xk defined on Cn×n equipped with the usual innerproduct (3.18), the expression for DF(X) is unchanged, and DF(X)∗ =

DF(X∗).

Example 4.14. Consider F(X) = X−1 defined over square matrices (real orcomplex). This function is characterized by

F(X)X = I

whenever X is invertible. Differentiating at X along U on both sides, theproduct rule yields

DF(X)[U]X + F(X)U = 0.

Hence,

DF(X)[U] = −X−1UX−1. (4.22)

Equipping Rn×n or Cn×n with its usual inner product, the adjoint DF(X)∗

is DF(X>) or DF(X∗), as in the previous example.

Example 4.15. Consider a differentiable scalar function g : R → R, andlet g : Rn×m → Rn×m denote its entrywise application to matrices so thatg(X)ij = g(Xij). Then, with g′ the derivative of g,

∀i, j, (Dg(X)[U])ij = Dg(Xij)[Uij] = g′(Xij)Uij.

Letting g′ : Rn×m → Rn×m denote the entrywise application of g′ to matri-ces, we can summarize this as

Dg(X)[U] = g′(X)U. (4.23)

This differential is self-adjoint with respect to the usual inner product, that is,Dg(X)∗ = Dg(X), since for all U, V ∈ Rn×m, using (3.16), we have

〈Dg(X)[U], V〉 =⟨

g′(X)U, V⟩=⟨U, g′(X)V

⟩= 〈U, Dg(X)[V]〉 .

(In general, there does not exist a complex equivalent because for g : C→ C,even if Dg(x)[u] is well defined, there may not exist a function g′ : C → C

such that Dg(x)[u] = g′(x)u, i.e., g is not necessarily complex differen-tiable. Fortunately, this is not an obstacle to computing directional deriva-tives: it merely means there may not exist as simple an expression as above.)

Page 74: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

74 an introduction to optimization on smooth manifolds

Example 4.16. Consider a function g from R to R or from C to C with aconvergent Taylor series, that is,

g(x) =∞

∑k=0

akxk

for some coefficients a0, a1, . . ., with x possibly restricted to a particular do- Important examples include the matrixexponential, matrix logarithm and ma-trix square root functions. In Matlab,these are available as expm, logm andsqrtm respectively. In Manopt, the dif-ferentials are available as dexpm, dlogm

and dsqrtm.

main. Such functions can be extended to matrix functions, that is, to func-tions from Rn×n to Rn×n or from Cn×n to Cn×n simply by defining

G(X) =∞

∑k=0

akXk. (4.24)

We can gain insight into this definition by considering the ubiquitous specialcase where X is diagonalizable, that is, X = VDV−1 for some diagonalmatrix D = diag(λ1, . . . , λn) containing the eigenvalues of X and someinvertible matrix V. Indeed, in this case,

G(X) =∞

∑k=0

ak(VDV−1)k

= V

(∞

∑k=0

akDk

)V−1 = V diag(g(λ1), . . . , g(λn))V−1.

Thus, G is well defined at X provided the eigenvalues of X belong to thedomain of definition of g. In this case, the matrix function G transforms theeigenvalues through g.

This view of matrix functions is sufficient for our discussion but it has itslimitations. In particular, the Taylor series expansion does not make it imme-diately clear why the matrix logarithm and matrix square root can be definedfor all matrices whose real eigenvalues (if any) are positive. For a more for-mal discussion of matrix functions, including definitions that allow us to gobeyond Taylor series and diagonalizable matrices, as well as details regardingdomains of definition and numerical computation, see [Hig08]. Generalizedmatrix functions (which apply to non-square matrices) and their differentialsare discussed in [Nof17].

Provided one can compute the matrix function, a theorem by Mathias offersa convenient way to compute its directional derivatives (also called Gâteauxand, under stronger conditions, Fréchet derivative) [Mat96], [Hig08, §3.2,Thm. 3.6, 3.8, eq. (3.16)]: if g is 2n− 1 times continuously differentiable onsome open domain in R or C and the eigenvalues of X belong to this domain,then,

G

([X U0 X

])=

[G(X) DG(X)[U]

0 G(X)

]. (4.25)

Thus, for the cost of one matrix function computation on a matrix of size2n× 2n, we get G(X) and DG(X)[U]. This is useful, though we should bear

Page 75: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

first-order optimization algorithms 75

in mind that computing matrix functions is usually easier for symmetric orHermitian matrices: here, even if X is favorable in that regard, the structureis lost by forming the block matrix. If the matrices are large or poorly condi-tioned, it may help to explore alternatives [AMH09], [Hig08, §10.6, §11.8].If an eigenvalue decomposition of X is available, there exists an explicit ex-pression for DG(X)[U] involving Loewner matrices [Hig08, Cor. 3.12].

We can gain insight into the adjoint of the directional derivative of a matrixfunction through (4.24) and Example 4.13. Indeed,

DG(X)[U] =∞

∑k=0

akD(

X 7→ Xk)(X)[U]

=∞

∑k=0

ak

k

∑`=1

X`−1UXk−`. (4.26)

From this identity, assuming the Taylor expansion coefficients ak are real, it is This holds for matrix exponential, loga-rithm and square root.straightforward to see that the adjoint with respect to the usual inner product

obeys DG(X)∗ = DG(X∗). Indeed,

〈DG(X)[U], V〉 =⟨

∑k=0

ak

k

∑`=1

X`−1UXk−`, V

=∞

∑k=0

ak

k

∑`=1

⟨X`−1UXk−`, V

⟩=

∑k=0

ak

k

∑`=1

⟨U, (X∗)`−1V(X∗)k−`

⟩= 〈U, DG(X∗)[V]〉 .

(4.27)

Of course, X∗ = X> in the real case.

Example 4.17. Formulas for the directional derivatives of factors of certainmatrix factorizations are known, including QR, LU, Cholesky, polar fac-torization, eigenvalue decomposition and SVD. See [Deh95, §3.1], [DMV99,DE99, Fep17, FL19] and [AMS08, Ex. 8.1.5] among others.

Example 4.18. The directional derivative of g(X) = log(det(X)) is givenby Dg(X)[U] = Tr(X−1U), provided that if det(X) is real, then it is pos-itive. Indeed, using det(AB) = det(A)det(B) and log(ab) = log(a) +log(b),

log(det(X + tU)) = log(det(X(In + tX−1U)))

= log(det(X)) + log(det(In + tX−1U))

= log(det(X)) + t Tr(X−1U) + O(t2), (4.28)

where we also used det(In + tA) = 1 + t Tr(A) + O(t2). This can be seenin various ways; one of them is that if λ1, . . . , λn denote the eigenvalues ofA, then log(det(In + tA)) = ∑n

i=1 log(1 + λit), then using log(1 + λt) =

Page 76: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

76 an introduction to optimization on smooth manifolds

λt + O(t2). In particular, if we restrict X to be positive definite then g isreal valued and we conclude that gradg(X) = X−1 with respect to the usualinner product. The related function

h(X) = log(det(X−1)) = log(1/ det(X)) = − log(det(X)) = −g(X)

has directional derivative Dh(X)[U] = −Tr(X−1U).

Example 4.19. We now work out a gradient as a full example. Consider thissilly function which maps a pair of square matrices (X, Y) to a real number,with A and B two given real matrices (A, B, X, Y are all in Rn×n):

f (X, Y) =12‖A exp(X−1B)Y‖2.

Here, exp denotes the matrix exponential and denotes entrywise multi-plication. See Exercise 3.57 for pointers regarding gradients on a productmanifold. Define Q(X, Y) = A

[exp(X−1B)Y

], so that

f (X, Y) =12‖Q(X, Y)‖2 =

12〈Q(X, Y), Q(X, Y)〉 .

Then, using the product rule on the inner product 〈·, ·〉, we get the directionalderivative of f at (X, Y) along the direction (X, Y) (a pair of matrices of thesame size as (X, Y)):

D f (X, Y)[X, Y] =⟨DQ(X, Y)[X, Y], Q(X, Y)

⟩.

We focus on the differential of Q for now. Using that A is constant, theproduct rule on exp(·)Y and the chain rule on exp, we get:

DQ(X, Y)[X, Y] = A[Dexp(X−1B)[U]Y + exp(X−1B)Y

],

where Dexp is the differential of the matrix exponential, and U is the differen-tial of (X, Y) 7→ X−1B at (X, Y) along (X, Y), that is, U = −X−1XX−1B.Combining and using W = X−1B for short, we find

D f (X, Y)[X, Y] =⟨

A[Dexp(W)[−X−1XW]Y + exp(W)Y

], Q(X, Y)

⟩.

We must now re-arrange the terms in this expression to reach the form 〈X, ·〉+〈Y, ·〉. This mostly requires using the notion of adjoint of linear operators:recall Section 3.1. First using the adjoint of entrywise multiplication withrespect to the usual inner product as in (3.16), then linearity of the innerproduct:

D f (X, Y)[X, Y] =⟨

Dexp(W)[−X−1XW]Y, AQ(X, Y)⟩

+⟨exp(W)Y, AQ(X, Y)

⟩.

Let Z = A Q(X, Y) for short; using the adjoint of matrix multiplicationfor both terms:

D f (X, Y)[X, Y] =⟨

Dexp(W)[−X−1XW], ZY>⟩+⟨

Y, exp(W)>Z⟩

.

Page 77: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

first-order optimization algorithms 77

The gradient with respect to Y is readily apparent from the second term. Wefocus on the first term. Using the adjoint of the differential of the matrixexponential at X−1B (denoted by a star), we get:⟨

Dexp(W)[−X−1XW], ZY>⟩=⟨−X−1XW, Dexp(W)∗[ZY>]

⟩=⟨

X,−(X−1)>Dexp(W)∗[ZY>]W>⟩

.

This reveals the gradient of f with respect to X. We can go one step furtherusing the fact that Dexp(W)∗ = Dexp(W>). To summarize:

grad f (X, Y) =(− (X−1)>Dexp(W>)[ZY>]W>, exp(W)>Z

).

Considering that W, exp(W) and Q must be computed in order to evaluatef , it is clear that computing grad f is not significantly more expensive, andmuch of the computations can be reused. If A, B, X, Y are in Cn×n and weuse the usual real inner product over complex matrices, grad f takes on thesame expression except all transposes are replaced by conjugate-transposes,and Z = AQ(X, Y).

Something to keep in mind. The “cheap gradient principle” [GW08,p88] asserts that, for a wide class of functions f , computing the gra-dient of f at a point requires no more than a multiple (often five orless) of the number of arithmetic operations required to evaluate f it-self at that point. Furthermore, much of the computations requiredto evaluate the cost function can be reused to evaluate its gradient atthe same point. Thus, if it appears that computing the gradient takesinordinately more time than it takes to evaluate the cost, chances arethe code can be improved. Anticipating the introduction of Hessians,we note that a similar fact holds for Hessian-vector products [Pea94].

These principles are at the heart of automatic differentiation (AD):algorithms that can automatically compute the derivatives of a func-tion, from code to compute that function. AD can significantly speedup development time. Packages such as PyManopt offer AD for opti-mization on manifolds [TKW16].

Exercise 4.20. Prove rules (4.14), (4.15), (4.16), (4.17) and (4.18).

Exercise 4.21. The (principal) matrix square root function F(X) = X1/2 iswell defined provided any real eigenvalue of X is positive [Hig08, Thm. 1.29].Show that DF(X)[U] = E, where E is the matrix which solves the Sylvesterequation EX1/2 + X1/2E = U. Hint: consider G(X) = X2 and F = G−1.

Exercise 4.22. For a matrix function whose Taylor series has real coeffi-cients, show DF(X)[U∗] = (DF(X∗)[U])∗. Combining with (4.27), thisyields another expression for the adjoint of the differential of a matrix func-tion: DF(X)∗[U] = DF(X∗)[U] = (DF(X)[U∗])∗.

Page 78: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

78 an introduction to optimization on smooth manifolds

4.8 Numerically checking a gradient

After writing code to evaluate a cost function f (x) and its Riemannian In Manopt, these tests are implementedas checkgradient.See Section 6.7 to check Hessians.

gradient grad f (x), it is often helpful to run numerical tests to catchpossible mistakes early. The first thing to test is that grad f (x) is indeedin the tangent space at x. This being secured, consider the Taylorexpansion (4.3):

f (Rx(tv)) = f (x) + t 〈grad f (x), v〉x + O(t2).

This says that, for all x ∈ M and v ∈ TxM, with all retractions,

E(t) ,∣∣ f (Rx(tv))− f (x)− t 〈grad f (x), v〉x

∣∣ = O(t2). (4.29)

Taking the logarithm on both sides, we find that log(E(t)) must growapproximately linearly in log(t), with a slope of two (or more3) when 3 If the Taylor remainder happens to be

O(tk) with k > 2, we would get a slopeof k. This is rare.

t is small:

log(E(t)) ≈ 2 log(t) + constant.

This suggests a procedure to check the gradient numerically:

1. Generate a random point x ∈ M;

2. Generate a random tangent vector v ∈ TxM with ‖v‖x = 1;

3. Compute f (x) and grad f (x). Check that grad f (x) is in TxM, andcompute 〈grad f (x), v〉x;

4. Compute E(t) for several values of t logarithmically spaced on theinterval [10−8, 100];

5. Plot E(t) as a function of t, in a log–log plot;

6. Check that the plot exhibits a slope of two (or more) over severalorders of magnitude.

We do not expect to see a slope of two over the whole range: On theone hand, for large t, the Taylor approximation may be poor; On theother hand, for small t, floating-point arithmetic strongly affects thecomputation of E(t) (see also the discussion in Section 6.4.5). Still, wedo expect to see a range of values of t for which the numerical compu-tation is accurate and the Taylor expansion is valid. If the curve doesnot exhibit a slope of two over at least one or two orders of magnitude,this is a strong sign that there is a mistake in the computation of thegradient (or the cost function, or the retraction, or the inner product).

Example 4.23. With some symmetric matrix A and size n, recall the costfunction f (X) = − 1

2 Tr(X>AX) defined on the Stiefel manifold St(n, p). Its

Page 79: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

first-order optimization algorithms 79

gradient is the orthogonal projection of −AX to the tangent space at X. Fig-ure 4.1 plots the numerical gradient check described above obtained first withan incorrect gradient (the minus sign was forgotten), then with the correctgradient. Notice how for the incorrect gradient the blue curve has (mostly) aslope of one, whereas for the correct gradient it has (mostly) a slope of two.This figure is obtained with the following Matlab code, using Manopt.

Wrong gradientDashed line:slope 2

Correct gradientDashed line:slope 2

Figure 4.1: Example 4.23 illustrates a nu-merical procedure to check one’s gradi-ent computation code. The dashed linehas a slope of two: this serves as a vi-sual reference. The blue curve repre-sents the function E(t) (4.29), in a log–log plot. Part of the blue curve is over-laid with red. The (average) slopes ofthose red parts are nearly 1 (top) and2 (bottom), strongly suggesting the topgradient is incorrect, and suggesting thebottom gradient is correct (as is indeedthe case).

n = 50;A = randn(n, n);A = A + A';

inner = @(U, V) U(:)'*V(:); % = trace(U'*V)St = stiefelfactory(n, 3);problem.M = St;problem.cost = @(X) -.5*inner(X, A*X);

problem.grad = @(X) St.proj(X, A*X); % Oops: forgot minus signcheckgradient(problem); % Top panel

problem.grad = @(X) St.proj(X, -A*X); % This is bettercheckgradient(problem); % Bottom panel

4.9 Notes and references

Absil et al. give a thorough treatment and history of Riemannian gra-dient descent in [AMS08, §4], with references going back to [Lue72,Gab82, Smi94, Udr94, HM96, Rap97, EAS98]. Gabay [Gab82] detailsthe important (but now difficult to find) work of Lichnewsky [Lic79],who generalized Luenberger’s pioneering paper [Lue72] from Rieman-nian submanifolds of Euclidean space to general manifolds, and de-signed a Riemannian nonlinear conjugate gradients method for non-linear eigenvalue problems.

The first iteration complexity analyses in the Riemannian settingappear around the same time on public repositories in [ZS16, BAC18,BFM17], under various related models. The analysis presented here islargely based on [BAC18]. Before that, analyses with similar ingredi-ents including Lipschitz-type assumptions (but phrased as asymptoticconvergence results) appear notably in [dCNdLO98, Thm. 5.1].

Several first-order optimization algorithms on Riemannian mani-folds are available, including nonlinear conjugate gradients [AMS08,SI15, Sat16] (pioneered by Lichnewsky), BFGS [BM06, QGA10b, RW12,HGA15, HAG16] (pioneered by Gabay) and (variance reduced) stochas-tic gradients [Bon13, ZRS16a, ZRS16b, KSM18, SKM19].

There is also recent work focused on nonsmooth cost functions onsmooth manifolds, including proximal point methods and subgradientmethods [BFM17, CMSZ18], gradient sampling [HU17] and ADMM-type algorithms [KGB16].

Page 80: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

80 an introduction to optimization on smooth manifolds

Many of these more advanced algorithms require transporters orvector transports, which we cover in Section 10.5: these are tools totransport tangent vectors and linear maps from one tangent space toanother.

In (4.11), we considered the standard proof that Lipschitz continuityof the gradient of f (in the Euclidean case) implies uniform bounds onthe truncation error of first-order Taylor expansions of f . If f is twicecontinuously differentiable, it is not difficult to show that the conversealso holds because the gradient is Lipschitz-continuous if and only ifthe Hessian is bounded. See [BAJN20, Cor. 5.1] for a more generaldiscussion assuming Hölder continuity of the gradient.

First-order necessary optimality conditions are described withoutreference to a Riemannian structure in [BH18], for a broader class ofoptimization problems where x, in addition to living on a manifoldM, may be further restricted by equality and inequality constraints.Second-order optimality conditions are also investigated in Section 6.1and in [YZS14], with reference to the Riemannian structure.

After Proposition 4.6, we observed that (under the stated condi-tions) the statement guarantees all limit points of RGD are criticalpoints, but it does not guarantee convergence of the iterates: therecould be more than one limit point. This type of behavior is undesir-able, and by all accounts uncommon. The local convergence resultsoutlined in Section 4.6 exclude such pathological cases near criticalpoints where the Riemannian Hessian (introduced in Section 5.5) ispositive definite. For more general conditions based on analyticity,see notably [AK06]. See [Lag07] and [BH15, Thm. 4.1, Cor. 4.2] forconnections to optimization on manifolds. At their core, these resultsrely on the (Kurdyka, Polyak)–Łojasiewicz inequality for real analyticfunctions [Łoj65].

Page 81: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

5Embedded submanifolds: second-order geometry

In previous chapters, we developed a notion of gradient for smoothfunctions on manifolds. We explored how this notion is useful bothto analyze problems and to design algorithms. In particular, we foundthat local minimizers are critical points, that is, their gradient vanishes.Furthermore, we showed that following the negative gradient allowsus to compute critical points, under a regularity condition.

A tool of choice in these developments has been a type of first-orderTaylor expansion of the cost function along a curve (typically obtainedthrough retraction.) Concretely, with c : I →M a smooth curve onMpassing through x at t = 0 with velocity c′(0) = v, we considered thecomposition g = f c (a smooth function from reals to reals), and itstruncated Taylor expansion

g(t) = g(0) + tg′(0) + O(t2) = f (x) + t 〈grad f (x), v〉x + O(t2).

To gain further control over g, it is natural to ask what happens if wetruncate the expansion one term later, that is, if we write

g(t) = f (x) + t 〈grad f (x), v〉x +t2

2g′′(0) + O(t3).

In the same way we expressed g′(0) in terms of f through its gradient,our target now is to express g′′(0) in terms of properties of f .

Evidently, g′′(0) involves second-order derivatives of f , which leadsus to ponder: can we define an equivalent of the Hessian of a functionon a manifold? Let us first review the case of a function defined on Rn

equipped with the canonical inner product 〈u, v〉 = u>v.In a first encounter, the gradient and Hessian of f : Rn → R are

often defined in terms of partial derivatives as follows:

grad f (x) =

∂ f∂x1

(x)...

∂ f∂xn

(x)

, Hess f (x) =

∂2 f

∂x1∂x1(x) · · · ∂2 f

∂xn∂x1(x)

......

∂2 f∂x1∂xn

(x) · · · ∂2 f∂xn∂xn

(x)

.

Page 82: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

82 an introduction to optimization on smooth manifolds

This casts the Hessian as a symmetric matrix of size n. It is morerevealing to think of that matrix as a linear operator instead. Specif-ically, consider the directional derivative of the gradient vector fieldgrad f (x) along v ∈ Rn (this tells us how much the gradient changes ifx is perturbed along v, up to first order):

D(grad f )(x)[v] =

D(

∂ f∂x1

)(x)[v]

...

D(

∂ f∂xn

)(x)[v]

=

∂2 f

∂x1∂x1(x)v1 + · · ·+ ∂2 f

∂xn∂x1(x)vn

...∂2 f

∂x1∂xn(x)v1 + · · ·+ ∂2 f

∂xn∂xn(x)vn

=

∂2 f

∂x1∂x1(x) · · · ∂2 f

∂xn∂x1(x)

......

∂2 f∂x1∂xn

(x) · · · ∂2 f∂xn∂xn

(x)

v1...

vn

= Hess f (x)[v].

In other words, the Hessian of f at x is the linear operator which,applied to v, yields the directional derivative of the gradient vectorfield at x along v. We adopt this perspective as the definition of theHessian in Euclidean spaces.

Thus, to extend the concept of Hessian to manifolds, we need toidentify a good notion of derivative of vector fields on Riemannianmanifolds: we call it a connection or covariant derivative. It naturallyleads to a notion of covariant derivative of a vector field along a curve.With a particularly apt choice of connection called the Riemannian con-nection or Levi–Civita connection, we will be able to complete the Taylorexpansion above:

f (c(t)) = f (x) + t 〈grad f (x), v〉x +t2

2〈Hess f (x)[v], v〉x

+t2

2⟨grad f (x), c′′(0)

⟩x + O(t3),

where Hess f (x) is the Riemannian Hessian of f we are about to de-fine and c′′(t) is the acceleration along c: the covariant derivative ofits velocity vector field c′(t). Importantly, Hess f (x) retains essentialproperties. For example, as a linear operator from TxM to TxM, it isself-adjoint with respect to the Riemannian metric 〈·, ·〉x.

We already mentioned the role of the Riemannian Hessian in study-ing the local convergence behavior of gradient descent in Section 4.6.In Chapter 6, we use the notion of Riemannian Hessian and the ex-tended Taylor expansion to develop so-called second-order optimizationalgorithms.

Page 83: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: second order 83

For example, one famous optimization algorithm in Rn is Newton’smethod. For a cost function f : Rn → R and a current iterate xk ∈ Rn,this method approximates the cost function locally around xk with aquadratic model in v:

f (xk + v) ≈ m(v) = f (xk) + 〈grad f (xk), v〉+ 12〈Hess f (xk)[v], v〉 .

Assuming the Hessian of f at xk is positive definite, m has a uniqueminimizer, located at its critical point. The gradient of the quadraticmodel with respect to v is grad m(v) = grad f (xk) + Hess f (xk)[v],hence the minimizer is attained at the solution of the linear system

Hess f (xk)[v] = −grad f (xk).

With this v, the point xk+1 = xk + v minimizes m. This reasoning leadsto Newton’s method: given an initial guess x0 ∈ Rn, iterate

xk+1 = xk − (Hess f (xk))−1[grad f (xk)].

Once we have a proper notion of Hessian for functions on a manifold,it is straightforward to generalize this algorithm. For all its qualities,Newton’s method is not without critical flaws and limitations: we ad-dress these too.

5.1 The case for a new derivative of vector fields

Remember the function f (x) = 12 x>Ax defined on the sphere Sn−1 as See Example 3.52.

a Riemannian submanifold of Rn with the canonical Euclidean metric(A is some symmetric matrix). Its gradient is the following smoothvector field on Sn−1:

V(x) = grad f (x) = Ax− (x>Ax)x.

Since V is a smooth map fromM to TM (two manifolds), we already There is some notational abuse here inthat points of TM are pairs (x, v): as iscommon, we omit the first component.

have a notion of differential for it, as put forward by Definition 3.27.Explicitly, with the smooth extension

V(x) = Ax− (x>Ax)x

defined on all of Rn, apply (3.27) with a tangent vector u ∈ TxM:

DV(x)[u] = DV(x)[u] = Au− (x>Ax)u− (u>Ax + x>Au)x

= Projx(Au)− (x>Ax)u− (u>Ax)x, (5.1)

where Projx(v) = v − (x>v)x is the orthogonal projector from Rn toTxM. Evidently, DV(x)[u] is not (in general) tangent to M at x: thefirst two terms in (5.1) are tangent, but the third one is not if it is

Page 84: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

84 an introduction to optimization on smooth manifolds

nonzero. Thus, if we were to use this notion of differential to de-fine Hessians as derivatives of gradient vector fields, we would findourselves in the uncomfortable situation where Hess f (x)[u], definedas D(grad f )(x)[u], might not be a tangent vector at x. As a result,Hess f (x) would not be a linear operator to and from TxM, and termssuch as 〈Hess f (x)[u], u〉x would make no sense. We need a newderivative for vector fields.

5.2 Another look at differentials of vector fields in linear spaces

We aim to define a new notion of derivative for vector fields on Rie-mannian manifolds. In so doing, we follow the axiomatic approach,that is: we prescribe properties we would like that derivative to have,and later we show there exists a unique operator that satisfies them.Of course, classical differentiation of vector fields on Euclidean spacesshould qualify: let us have a look at some elementary properties of thelatter for inspiration.

Let E be a linear space. Recall that the differential of a smoothvector field V ∈ X(E) at a point x along u is given by:

DV(x)[u] = limt→0

V(x + tu)−V(x)t

. (5.2)

Given three smooth vector fields U, V, W ∈ X(E), two vectors u, w ∈ E(we think of them as being “tangent at x”), two real numbers a, b ∈ R

and a smooth function f ∈ F(E), we know from classical calculus thatthe following properties hold:

1. DV(x)[au + bw] = aDV(x)[u] + bDV(x)[w];

2. D(aV + bW)(x)[u] = aDV(x)[u] + bDW(x)[u]; and

3. D( f V)(x)[u] = D f (x)[u] ·V(x) + f (x)DV(x)[u].

Furthermore, the map x 7→ DV(x)[U(x)] is smooth since U and V aresmooth, and it defines a vector field on E . This constitutes a first set ofproperties we look to preserve on manifolds.

5.3 Differentiating vector fields on manifolds: connections

Our new notion of derivative for vector fields on manifolds is called aconnection, traditionally denoted by ∇. We do not need a Riemannian Read “nabla” for ∇.

metric yet.

Definition 5.1. A connection on a manifoldM is an operator This is also called an affine connection.Formally, we should write ∇(x,u)V, butthe base point x is typically clear fromcontext. The standard definition intro-duces (U, V) 7→ ∇UV as a map ∇ fromX(M)×X(M) to X(M). Definition 5.1is equivalent (see Section 5.6) and sim-plifies a number of discussions.

∇ : TM×X(M)→ TM : (u, V) 7→ ∇uV

such that ∇uV is in TxM whenever u is in TxM and which satisfies theseproperties for arbitrary U, V, W ∈ X(M), u, w ∈ TxM and a, b ∈ R:

Page 85: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: second order 85

0. Smoothness: (∇UV)(x) , ∇U(x)V defines a smooth vector field ∇UV;

1. Linearity in u: ∇au+bwV = a∇uV + b∇wV;

2. Linearity in V: ∇u(aV + bW) = a∇uV + b∇uW; and

3. Leibniz rule: ∇u( f V) = D f (x)[u] ·V(x) + f (x)∇uV.

The field ∇UV is the covariant derivative of V along U with respect to ∇.

For example, on a linear space E ,

∇uV = DV(x)[u] (5.3)

is a connection by design. More interestingly, there exist connectionson manifolds. Here is an example for M embedded in a Euclideanspace E : based on the discussion in Section 5.1, one may surmise thata possible fix for the standard notion of derivative of vector fields is toproject the result to tangent spaces, for example as follows:

∇uV = Projx(DV(x)[u]) , (5.4)

where Projx is the projector from E to TxM orthogonal with respect tothe Euclidean metric on E , and V is any smooth extension of V. Thisis indeed a valid connection.

Theorem 5.2. Let M be an embedded submanifold of a Euclidean space E .The operator ∇ defined by (5.4) is a connection onM.

Proof. It is helpful to denote the connection (5.3) on E by ∇. Then,

∇uV = Projx(∇uV

). (5.5)

If M is an open submanifold of E , the claim is clear since Projx isidentity. We now handleM not open in E . Consider U, V, W ∈ X(M)

together with smooth extensions U, V, W ∈ X(O) defined on a neigh-borhood O of M in E . As we just argued, ∇ is a connection on Osince O is an open submanifold of E . Also consider a, b ∈ R andu, w ∈ TxM. Using repeatedly that ∇ is a connection and that Projx islinear, it is straightforward to verify linearity in the first argument:

∇au+bwV = Projx(∇au+bwV

)= Projx

(a∇uV + b∇wV

)= a∇uV + b∇wV,

then linearity in the second argument:

∇u(aV + bW) = Projx(∇u(aV + bW)

)= Projx

(a∇uV + b∇uW

)= a∇uV + b∇uW,

Page 86: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

86 an introduction to optimization on smooth manifolds

and the Leibniz rule (with f ∈ F(M) and smooth extension f ∈ F(O)):

We use that f V is a smooth extension forf V on O.

∇u( f V) = Projx(∇u( f V)

)= Projx

(D f (x)[u] · V(x) + f (x)∇uV

)= D f (x)[u] ·V(x) + f (x)∇uV.

Finally, we can see that ∇UV is smooth as per Exercise 3.56.

Not only do connections exist, but actually: there exist infinitelymany of them on any manifold M. For example, we could con-sider (5.4) with other projectors. As a result, the connection (5.4) mayseem arbitrary. In the next section, we show that the number of con-nections can be reduced to one if we require further properties to holdin relation to the Riemannian structure on M. As it turns out, con-nection (5.4) satisfies these additional properties ifM is a Riemanniansubmanifold of E .

5.4 Riemannian connections

There exist many connections on a manifold, which means we haveleeway to be more demanding. Upon equipping the manifold witha Riemannian metric, we require two further properties so that theconnection and the metric interact nicely. This is the object of ournext theorem, called the fundamental theorem of Riemannian geometry. Inparticular, the two additional properties ensure the Hessian as definedlater in this chapter is a self-adjoint operator on each tangent space.

In order to state the desired properties, we need to introduce a fewnotational definitions.

Definition 5.3. For U, V ∈ X(M) and f ∈ F(U ) with U open inM, let:

(a) U f ∈ F(U ) such that (U f )(x) = D f (x)[U(x)]; Mind the difference between U f and f U.

(b) [U, V] : F(U )→ F(U ) such that [U, V] f = U(V f )−V(U f ); and Even in linear spaces [U, V] f is nonzeroin general. For example, in R2 considerU(x) = [ 1, 0 ]>, V(x) = [ 0, x1x2 ]

> andf (x) = x2. Then, [U, V] f = f .

(c) 〈U, V〉 ∈ F(M) such that 〈U, V〉(x) = 〈U(x), V(x)〉x.

The notation U f captures the action of a smooth vector field U ona smooth function f through derivation, transforming f into anothersmooth function. The commutator of such action, [U, V], is called theLie bracket. The last definition illustrates how the Riemannian metricallows us to take the product of two vector fields to form a scalar field.Notice that

U f = 〈grad f , U〉 , (5.6)

owing to definitions (a) and (c).

Page 87: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: second order 87

Theorem 5.4. On a Riemannian manifoldM, there exists a unique connec-tion ∇ which satisfies two additional properties for all U, V, W ∈ X(M):

4. Symmetry: [U, V] f = (∇UV −∇VU) f for all f ∈ F(M); and A connection which satisfies the sym-metry property is a symmetric connection.The other property is a type of productrule for differentiation of inner products.5. Compatibility with the metric: U〈V, W〉 = 〈∇UV, W〉+ 〈V,∇UW〉.

This connection is called the Levi–Civita or Riemannian connection.

Before we prove this theorem, let us check its statement against theconnections we know. As expected, the Riemannian connection on Eu-clidean spaces is nothing but classical vector field differentiation (5.3).

Proposition 5.5. The Riemannian connection on a Euclidean space E withany Euclidean metric 〈·, ·〉 is ∇uV = DV(x)[u]. It is called the canonicalEuclidean connection.

Proof. We first establish compatibility with the metric, as it will beuseful to prove symmetry. To this end, we go back to the definitionof derivatives as limits. Consider three vector fields U, V, W ∈ X(E).Owing to smoothness of the latter and to the definition of ∇,

V(x + tU(x)) = V(x) + tDV(x)[U(x)] + O(t2)

= V(x) + t(∇UV)(x) + O(t2).

Define the function f = 〈V, W〉. Using bilinearity of the metric,

(U f )(x) = D f (x)[U(x)]

= limt→0

〈V(x + tU(x)), W(x + tU(x))〉 − 〈V(x), W(x)〉t

= limt→0

〈V(x) + t(∇UV)(x), W(x) + t(∇UW)(x)〉 − 〈V(x), W(x)〉t

=(〈∇UV, W〉+ 〈V,∇UW〉

)(x)

for all x, as desired.To establish symmetry, we develop the left-hand side first. Recall

the definition of Lie bracket: [U, V] f = U(V f )−V(U f ). Focusing onthe first term, note that

(V f )(x) = D f (x)[V(x)] = 〈grad f (x), V(x)〉x .

We can now use compatibility with the metric:

U(V f ) = U〈grad f , V〉 = 〈∇U(grad f ), V〉+ 〈grad f ,∇UV〉 .

Consider the term ∇U(grad f ): this is the derivative of the gradientvector field of f along U. By definition, this is the (Euclidean) Hessianof f along U. We write ∇U(grad f ) = Hess f [U], with the understand-ing that (Hess f [U])(x) = Hess f (x)[U(x)] = ∇U(x)(grad f ). Overall,

U(V f ) = 〈Hess f [U], V〉+ 〈grad f ,∇UV〉 .

Page 88: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

88 an introduction to optimization on smooth manifolds

Likewise for the other term,

V(U f ) = 〈Hess f [V], U〉+ 〈grad f ,∇VU〉 .

It is a standard fact from multivariate calculus that the Euclidean Hes- This is the Clairaut–Schwarz theorem,which you may remember as the factthat the Hessian matrix is symmetric.

sian is self-adjoint, that is: 〈Hess f [U], V〉 = 〈Hess f [V], U〉. Hence,

[U, V] f = U(V f )−V(U f )

= 〈grad f ,∇UV −∇VU〉= (∇UV −∇VU) f ,

concluding the proof.

For embedded submanifolds of Euclidean spaces, the connection wedefined by projection to tangent spaces is always symmetric. To showthis, it is convenient to introduce this notation in analogy with (5.5):

∇UV = Proj(∇UV

), (5.7)

where ∇ is the canonical Euclidean connection on E , and Proj takes asinput a smooth vector field on a neighborhood ofM in E and returnsa smooth vector field onM obtained by orthogonal projection at eachpoint, that is, (∇UV)(x) = Projx((∇UV)(x)) = Projx(∇U(x)V).

Theorem 5.6. Let M be an embedded submanifold of a Euclidean space E .The connection ∇ defined by (5.4) is symmetric onM.

Proof. Let ∇ denote the canonical Euclidean connection on E . IfM isan open submanifold of E , the claim is clear since ∇ is then nothingbut ∇ with restricted domains. We now consider M not open in E .To establish symmetry of ∇, we rely heavily on the fact that ∇ is itselfsymmetric on (any open subset of) the embedding space E .

Consider U, V ∈ X(M) and f , g ∈ F(M) together with smoothextensions U, V ∈ X(O) and f , g ∈ F(O) to a neighborhood O ofM inE . We use the identity U f = (U f )|M repeatedly, then the fact that ∇is symmetric on O:

[U, V] f = U(V f )−V(U f )

= U((V f )|M

)−V

((U f )|M

)=(U(V f )

)|M −

(V(U f )

)|M

=([U, V] f

)|M

=((∇UV − ∇VU) f

)|M

= (W f )|M, (5.8)

where we defined W = ∇UV − ∇VU ∈ X(O). Assume for now that We know from Section 5.1 that the indi-vidual vector fields ∇UV and ∇VU neednot be tangent on M. Yet, we are aboutto show that their difference is.

W is a smooth extension of a vector field W on M. If that is the case,then,

W = W|M = Proj(W) = Proj(∇UV − ∇VU

)= ∇UV −∇VU.

Page 89: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: second order 89

Furthermore, (W f )|M = W f , so that continuing from (5.8):

[U, V] f = (W f )|M = W f = (∇UV −∇VU) f ,

which is exactly what we want. Thus, it only remains to show thatW(x) is indeed tangent toM for all x ∈ M.

To this end, let x ∈ M be arbitrary and let h : O′ → Rk be a localdefining function for M around x so that M∩O′ = h−1(0), and weensure O′ ⊆ O. Consider the restriction h = h|M∩O′ : of course, h isnothing but the zero function. Applying (5.8) to h, we find:

0 = [U, V]h = (Wh)|M∩O′ .

Evaluate this at x:

0 = (Wh)(x) = Dh(x)[W(x)] .

In other words: W(x) is in the kernel of Dh(x), meaning it is in thetangent space at x. This concludes the proof.

If furthermoreM inherits the metric from its embedding Euclideanspace, then ∇ as defined above is the Riemannian connection.

Theorem 5.7. Let M be a Riemannian submanifold of a Euclidean space.The connection ∇ defined by (5.4) is the Riemannian connection onM.

Proof. In light of Theorem 5.6, it remains to check compatibility withthe metric, that is, property 5 in Theorem 5.4. Consider U, V, W ∈X(M) together with smooth extensions U, V, W ∈ X(O) defined ona neighborhood O of M in E . Let 〈·, ·〉 denote the metric on theembedding space E (which M inherits). Since 〈V, W〉 = 〈V, W〉|Mand U f = (U f )|M, setting f = 〈V, W〉 and f = 〈V, W〉 we find thatU〈V, W〉 = (U〈V, W〉)|M. Using compatibility of ∇ with the metric:

U〈V, W〉 = (U〈V, W〉) |M =( ⟨∇UV, W

⟩+⟨V, ∇UW

⟩ )∣∣∣M

. (5.9)

Pick x ∈ M. Then, W(x) = W(x) = Projx(W(x)). Furthermore, recallthat Projx is self-adjoint (Proposition 3.53). Consequently, For any two vectors u, v ∈ E ,⟨

u, Projx(v)⟩=⟨Projx(u), v

⟩.⟨

∇UV, W⟩(x) =

⟨(∇UV)(x), Projx(W(x))

⟩=⟨Projx

((∇UV)(x)

), W(x)

⟩x

= 〈∇UV, W〉(x).

Combining twice with (5.9), we find indeed that

U〈V, W〉 = 〈∇UV, W〉+ 〈V,∇UW〉 .

This concludes the proof.

Page 90: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

90 an introduction to optimization on smooth manifolds

The previous theorem gives a conveniently clear picture of how todifferentiate vector fields on a Riemannian submanifoldM embeddedin a Euclidean space: first differentiate the vector field in the linearspace (a classical derivative), then orthogonally project the result tothe tangent spaces of M. More generally, if M is not a Riemanniansubmanifold, then this still defines a symmetric connection, but it maynot be the Riemannian connection.

We return to Theorem 5.4 and provide the missing proof using thefollowing technical observation: a Lie bracket “is” a smooth vectorfield.

Proposition 5.8. Let U, V be two smooth vector fields on a manifold M.There exists a unique smooth vector field W onM such that [U, V] f = W ffor all f ∈ F(M). We may identify [U, V] with that smooth vector field.

Proof. Say M is embedded in the Euclidean space E . In Theorem 5.6 Importantly, [U, V] is defined indepen-dently of any connection. The proofshows that for any symmetric connec-tion ∇ it so happens that [U, V] is equiv-alent to ∇UV −∇VU, independently ofthe choice of symmetric connection.

we have shown that ∇ as defined by (5.4) is a symmetric connectionforM. Thus, [U, V] f = W f for all f ∈ F(M) with W = ∇UV −∇VU.That vector field is unique because two vector fields W1, W2 ∈ X(M)

such that W1 f = W2 f for all f ∈ F(M) are necessarily equal. Indeed,for contradiction, assume W1 f = W2 f for all f ∈ F(M) yet W3 =

W1 −W2 6= 0: there exists x ∈ M such that W3(x) 6= 0. Consider thelinear function f (x) = 〈x, W3(x)〉 and its restriction f = f |M; we have

(W1 f )(x)− (W2 f )(x) = (W3 f )(x) = D f (x)[W3(x)] = ‖W3(x)‖2 6= 0,

which is a contradiction. (Here, 〈·, ·〉 and ‖ · ‖ come from E .)

Proof of Theorem 5.4. We first prove uniqueness. Assume ∇ is a con-nection satisfying the two listed properties. As per Proposition 5.8, wecan treat Lie brackets as vector fields. With this in mind, consider theso-called Koszul formula:

2 〈∇UV, W〉 = U〈V, W〉+ V〈W, U〉 −W〈U, V〉− 〈U, [V, W]〉+ 〈V, [W, U]〉+ 〈W, [U, V]〉 . (5.10)

The right-hand side is independent of the connection ∇. This beingsaid, because ∇ is symmetric, we know that [U, V] = ∇UV −∇VU.Using this and compatibility with the metric, it is straightforward tocheck that (5.10) holds. Moreover,1 if two vector fields U1, U2 ∈ X(M) 1 With d = dimM and any x ∈ M, con-

sider vector fields W1, . . . , Wd ∈ X(M)such that W1(x), . . . , Wd(x) form a basisfor TxM. These imply U1(x) = U2(x).Repeat this argument for each x.

satisfy 〈U1, W〉 = 〈U2, W〉 for all W ∈ X(M), then U1 = U2. Thisimplies that ∇UV is uniquely defined by the Koszul formula, that is,the Riemannian connection is unique.

The Koszul formula also shows how to compute the Riemannianconnection, thus showing existence. That ∇UV as defined by (5.10) issmooth can be reasoned using the musical isomorphism mentioned in

Page 91: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: second order 91

Section 3.10. The other basic properties of connections as well as thetwo special properties of Riemannian connections can all be checkedfrom (5.10).

Exercise 5.9. A derivation onM is a map D : F(M)→ F(M) such that,for all V ∈ X(M), f , g ∈ F(M) and a, b ∈ R, we have:

1. Linearity: D(a f + bg) = aD( f ) + bD(g), and

2. Leibniz rule: D( f g) = gD( f ) + fD(g).

Show that the action of a smooth vector field on a smooth function (as inDefinition 5.3) is a derivation.

Exercise 5.10. Show that the Lie bracket [U, V] of two smooth vector fieldsU, V ∈ X(M) is a derivation, as per the definition in the previous exercise.It is instructive to do so without using connections or Proposition 5.8.

5.5 Riemannian Hessians

The Riemannian Hessian is defined as the covariant derivative of thegradient vector field with respect to the Riemannian connection ∇(Theorem 5.4). At any point x on the manifold, the Hessian definesa linear operator from the tangent space TxM into itself.

Definition 5.11. Let M be a Riemannian manifold with its Riemannianconnection ∇. The Riemannian Hessian of f ∈ F(M) at x ∈ M is alinear operator Hess f (x) : TxM→ TxM defined as follows:

Hess f (x)[u] = ∇ugrad f .

Equivalently, Hess f maps X(M) to X(M) as Hess f [U] = ∇Ugrad f .

In practical terms, for a Riemannian submanifold of a Euclideanspace E , this means that to compute the Riemannian Hessian we canconsider a smooth extension of the Riemannian gradient vector fieldto E , differentiate it in the classical sense, then orthogonally project theresult to the tangent space.

Corollary 5.12. LetM be a Riemannian submanifold of a Euclidean space. G is any smooth vector field defined ona neighborhood ofM in the embeddingspace such that G(x) = grad f (x) for allx ∈ M. See also Corollary 5.15 below.

Considering a smooth function f : M → R, let G be a smooth extension ofgrad f . Then, by Definition 5.11 and Theorem 5.7,

Hess f (x)[u] = Projx(DG(x)[u]) .

Chapter 7 derives consequences of this corollary for various mani-folds. In practice, the analytic expression for grad f typically providesa suitable smooth extension G automatically. Section 4.7 provides fur-ther details on how to compute the directional derivatives of G. Weillustrate the overall procedure in the following example.

Page 92: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

92 an introduction to optimization on smooth manifolds

Example 5.13. Consider the cost function f (x) = 12 x>Ax for some symmet-

ric matrix A ∈ Rn×n and its restriction f = f |Sn−1 to the sphere. We alreadydetermined the Euclidean and Riemannian gradients of f and f , respectively:

grad f (x) = Ax,

grad f (x) = Projx(grad f (x)) = (In − xx>)Ax = Ax− (x>Ax)x.

To obtain the Riemannian Hessian of f , we further differentiate a smoothextension of grad f in Rn, and project the result. A valid smooth extension ofgrad f is the smooth vector field in Rn given by:

G(x) = Ax− (x>Ax)x.

Applying the usual product rule (see also Section 4.7), its differential is:

DG(x)[u] = Au− (u>Ax + x>Au)x− (x>Ax)u.

Project to the tangent space at x to reveal the Hessian:

Hess f (x)[u] = Projx(DG(x)[u]) = Projx(Au)− (x>Ax)u

= Au− (x>Au)x− (x>Ax)u.

This operator is formally defined only on TxSn−1 (not on all of Rn).

The next proposition illustrates how both special properties of theRiemannian connection together lead to symmetry of the Hessian.By the spectral theorem (Theorem 3.4), this implies Hess f (x) admitsdimM real eigenvalues as well as a basis of eigenvectors in TxM,orthonormal with respect to 〈·, ·〉x.

Proposition 5.14. The Riemannian Hessian is self-adjoint with respect tothe Riemannian metric. That is, for all x ∈ M and u, v ∈ TxM,

〈Hess f (x)[u], v〉x = 〈u, Hess f (x)[v]〉x .

Proof. Pick any two vector fields U, V ∈ X(M) such that U(x) = u andV(x) = v. Recalling the notation for vector fields acting on functionsas derivations and using compatibility of the Riemannian connectionwith the Riemannian metric,

〈Hess f [U], V〉 = 〈∇Ugrad f , V〉= U〈grad f , V〉 − 〈grad f ,∇UV〉= U(V f )− (∇UV) f .

Similarly,

〈U, Hess f [V]〉 = V(U f )− (∇VU) f .

Page 93: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: second order 93

Thus, recalling the definition of Lie bracket,

〈Hess f [U], V〉 − 〈U, Hess f [V]〉 = U(V f )−V(U f )− (∇UV) f + (∇VU) f

= [U, V] f − (∇UV −∇VU) f

= 0,

by symmetry of the Riemannian connection.

In closing this section, let us detail implications of Corollary 5.12:we do not need these going forward, but they are instructive. Considera smooth function f on a Riemannian submanifold M of a Euclideanspace E . Let f be a smooth extension of f to a neighborhood of Min E . By Proposition 3.51, we know that grad f (x) = Projx(grad f (x)):call this vector field G. We claim that

G(x) = Projx(grad f (x))

is a meaningful smooth extension of G to a neighborhood of M in E .Indeed, grad f (x) is defined in such a neighborhood. Moreover, fromExercise 3.56 we remember that x 7→ Projx is a smooth map from Mto the space L(E , E) of linear maps from E to E , that is, there exists asmooth extension of x 7→ Projx to a neighborhood ofM in E : pick anysuch extension to define G. By a standard product rule, we work outthe differential of G at x along u ∈ TxM to be

DG(x)[u] = Pu(grad f (x)) + Projx(Hess f (x)[u]),

where we introduced this notation for the differentials of the projector:

Pu , D(x 7→ Projx)(x)[u] =ddt

Projc(t)

∣∣∣∣t=0

, (5.11)

with any smooth curve c : I →M such that c(0) = x and c′(0) = u—this last identity is merely Definition 3.27. Returning to Corollary 5.12,we have found that

Hess f (x)[u] = Projx(Hess f (x)[u]) + Projx(Pu(grad f (x))

). (5.12)

We can say more if we study Pu. To this end, define P(t) = Projc(t)with a curve c as above. In particular, P(0) = Projx and P′(0) = Pu.By definition of projectors, P(t)P(t) = P(t) for all t. Differentiate withrespect to t to find that P′(t)P(t) + P(t)P′(t) = P′(t) for all t. At t = 0,this reveals a useful identity:

Pu = Pu Projx + Projx Pu. (5.13)

Let Proj⊥x = Id−Projx denote the orthogonal projector to the normalspace NxM, that is, the orthogonal complement of TxM in E . Then,the identity above can be reorganized in two ways to find:

Pu Proj⊥x = Projx Pu and Pu Projx = Proj⊥x Pu. (5.14)

Combining (5.12) and (5.14) warrants the following statement.

Page 94: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

94 an introduction to optimization on smooth manifolds

Corollary 5.15. Let M be a Riemannian submanifold of a Euclidean space [AMT13]

E . Considering a smooth function f : M→ R with smooth extension f to aneighborhood ofM in E , the Riemannian Hessian of f is given by:

Hess f (x)[u] = Projx(Hess f (x)[u]) + Pu(Proj⊥x (grad f (x))),

where Pu is the differential of x 7→ Projx at x along u and Proj⊥x = Id−Projx.

This shows that, for Riemannian submanifolds of Euclidean spaces,the Riemannian Hessian is the projected Euclidean Hessian plus a cor-rection term which depends only on the normal part of the Euclideangradient. See Section 5.11 for a discussion of Pu and Hess f (x) in rela-tion to the second fundamental form and the Weingarten map.

Exercise 5.16. Continuing Example 5.13, show that if grad f (x) = 0 and See also Exercise 9.48.

Hess f (x) is positive semidefinite on TxSn−1 (i.e., 〈u, Hess f (x)[u]〉x ≥ 0 forall u ∈ TxSn−1), then x is a global minimizer of f , i.e., x is an eigenvectorof A associated to its smallest (left-most) eigenvalue. (This is an unusualproperty: we do not normally expect to be able to certify global optimality ofa point simply by imposing conditions on derivatives at that point.)

5.6 Connections as pointwise derivatives*

Definition 5.1 is not standard: the standard definition follows. In thissection, we argue that they are equivalent.

Definition 5.17. A connection on a manifoldM is an operator

∇ : X(M)×X(M)→ X(M) : (U, V) 7→ ∇UV

which satisfies these properties for arbitrary U, V, W ∈ X(M), f , g ∈ F(M)

and a, b ∈ R:

1. F(M)-linearity in U: ∇ f U+gWV = f∇UV + g∇WV;

2. R-linearity in V: ∇U(aV + bW) = a∇UV + b∇UW; and

3. Leibniz rule: ∇U( f V) = (U f )V + f∇UV.

The field ∇UV is the covariant derivative of V along U with respect to ∇.

It is clear that if ∇ is a connection as per Definition 5.1 then it isalso a connection as per Definition 5.17, with (∇UV)(x) , ∇U(x)V.The other way around is less clear.

Specifically, we must show that a connection in the sense of Defini-tion 5.17 acts pointwise with respect to U, that is, (∇UV)(x) dependson U only through U(x). This gives meaning to the notation ∇uV asbeing equal to (∇UV)(x) for arbitrary U ∈ X(M) such that U(x) = u.

Page 95: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: second order 95

This is the object of the following proposition. It is a consequence ofF(M)-linearity in U. Note that dependence on V is through more thanjust V(x) (and indeed, connections are not F(M)-linear in V). Themain tool of the proof is the existence of local frames, as introduced inSection 3.9. Furthermore, a technical point requires some extra work,which we defer until after the proof. In the remainder of this section,the word ‘connection’ refers to Definition 5.17.

Proposition 5.18. For any connection ∇ and smooth vector fields U, V ona manifoldM, the vector field ∇UV at x depends on U only through U(x).

Proof. It is sufficient to show that if U(x) = 0, then (∇UV)(x) = 0.Indeed, let U1, U2 ∈ X(M) be two vector fields with U1(x) = U2(x).Then, using the claim,

(∇U1 V)(x)− (∇U2 V)(x) = (∇U1 V −∇U2 V)(x) = (∇U1−U2 V)(x) = 0.

To prove the claim, consider a local frame W1, . . . , Wd on a neighbor-hood U of x in M (Proposition 3.59). Given a vector field U ∈ X(M)

with U(x) = 0, there exist unique smooth functions g1, . . . , gd ∈ F(U )such that

U|U = g1W1 + · · ·+ gdWd.

Clearly, U(x) = 0 implies g1(x) = · · · = gd(x) = 0. By a technicallemma given hereafter (Lemma 5.24), it is legitimate to write:

(∇UV)(x) = (∇g1W1+···+gdWd V)(x)

= g1(x)(∇W1 V)(x) + · · ·+ gd(x)(∇Wd V)(x) = 0, (5.15)

which concludes the proof.

In the proof above, it is not immediately clear why (5.15) holds,because∇U|UV is not formally defined: normally, ∇ is fed two smoothvector fields on all of M. To support this notation and the claim that∇UV and ∇U|UV coincide at x, we work through a number of lemmas.The first one concerns the existence of bump functions in linear spaces.It is a standard exercise in real analysis to build such functions.

Lemma 5.19. Given any real numbers 0 < r1 < r2 and any point x in a [Lee12, Lem. 2.22]

Euclidean space E with norm ‖ · ‖, there exists a smooth function b : E → R

such that b(y) = 1 if ‖y − x‖ ≤ r1, b(y) = 0 if ‖y − x‖ ≥ r2, andb(y) ∈ (0, 1) if ‖y− x‖ ∈ (r1, r2).

Using bump functions, we can show that (∇UV)(x) depends on Uand V only through their values in a neighborhood around x. This isthe object of the two following lemmas.

Page 96: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

96 an introduction to optimization on smooth manifolds

Lemma 5.20. Let V1, V2 be smooth vectors fields on a manifoldM equippedwith a connection ∇. If V1|U = V2|U on some open set U of M, then(∇UV1)|U = (∇UV2)|U for all U ∈ X(M).

Proof. ForM an embedded submanifold of a Euclidean space E , thereexists an open set O in E such that U = M∩O. Furthermore, thereexist 0 < r1 < r2 such that B(x, r2)—the closed ball of radius r2 aroundx in E—is included in O. Hence, by Lemma 5.19 there exists a smoothfunction b ∈ F(E) which is constantly equal to 1 on B(x, r1) and con-stantly equal to 0 outside of B(x, r2). With b = b|M ∈ F(M), it followsthat the vector field V = b · (V1 − V2) is the zero vector field on M.Hence, ∇UV = 0. Using R-linearity of ∇ in V and the Leibniz rule:

0 = ∇UV = ∇U(b (V1 −V2)) = (Ub)(V1 −V2) + b (∇UV1 −∇UV2) .

Evaluating this at x and using V1(x) = V2(x) and b(x) = 1, we find(∇UV1)(x) = (∇UV2)(x). Repeat for all x ∈ U .

Lemma 5.21. Let U1, U2 be smooth vectors fields on a manifoldM equippedwith a connection ∇. If U1|U = U2|U on some open set U of M, then(∇U1 V)|U = (∇U2 V)|U for all V ∈ X(M).

Proof. Construct b ∈ F(M) as in the proof of Lemma 5.20. Then,U = b · (U1 −U2) is the zero vector field onM. By F(M)-linearity of∇ in U,

0 = ∇UV = ∇b (U1−U2)V = b · (∇U1 V −∇U2 V).

Evaluating this at x and using b(x) = 1 yields the result.

We now use bump functions to show that a smooth function definedon a neighborhood of a point x on a manifold can always be extendedinto a smooth function defined on the whole manifold, in such a waythat its value at and around x is unaffected. This is a weak version ofa result known as the extension lemma.

Lemma 5.22. Let U be a neighborhood of a point x on a manifoldM. Given [Lee12, Lem. 2.26]

a smooth function f ∈ F(U ), there exists a smooth function g ∈ F(M) anda neighborhood U ′ ⊆ U of x such that g|U ′ = f |U ′ .

Proof. For M an embedded submanifold of a Euclidean space E , weknow from Proposition 3.17 that U itself is an embedded submanifoldof E . Hence, there exists a smooth extension f of f defined on a neigh-borhood O of x in E . For this O, construct b ∈ F(E) as in the proofof Lemma 5.20, with 0 < r1 < r2 such that B(x, r2) ⊂ O. Considerg : E → R defined by

g(y) =

b(y) f (y) if ‖y− x‖ ≤ r2,

0 otherwise.

Page 97: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: second order 97

It is an exercise in real analysis to verify that g is smooth in E ; hence,g = g|M is smooth onM. Furthermore, g is equal to f on B(x, r1). SetU ′ = U ∩ B(x, r1), where B(x, r1) is the open ball of radius r1 aroundx in E . This is a neighborhood of x onM such that g|U ′ = f |U ′ .

Likewise, there is a smooth extension lemma for vector fields, andwe state a weak version of it here. The proof is essentially the same asfor the previous lemma.

Lemma 5.23. Let U be a neighborhood of a point x on a manifoldM. Given a [Lee12, Lem. 8.6]

smooth vector field U ∈ X(U ), there exists a smooth vector field V ∈ X(M)

and a neighborhood U ′ ⊆ U of x such that V|U ′ = U|U ′ .

Equipped with the last three lemmas, we can finally state the tech-nical result necessary to support the proof of Proposition 5.18.

Lemma 5.24. Let U, V be two smooth vector fields on a manifoldM equippedwith a connection ∇. Further let U be a neighborhood of x ∈ M such thatU|U = g1W1 + · · ·+ gdWd for some g1, . . . , gd ∈ F(U ) and W1, . . . , Wd ∈X(U ). Then,

(∇UV)(x) = g1(x)(∇W1 V)(x) + · · ·+ gd(x)(∇Wd V)(x),

where each vector (∇Wi V)(x) is understood to mean (∇WiV)(x) with Wi

any smooth extension of Wi toM around x.

Proof. Combining Lemmas 5.22 and 5.23, we know there exist smoothextensions g1, . . . , gd ∈ F(M) and W1, . . . , Wd ∈ X(M) that coincidewith g1, . . . , gd and W1, . . . , Wd on a neighborhood U ′ ⊆ U of x, so thatU = g1W1 + · · ·+ gdWd is a smooth vector field on M which agreeswith U locally: U|U ′ = U|U ′ . Thus, by Lemma 5.21,

(∇UV)(x) = (∇UV)(x)

= (∇g1W1+···+gdWdV)(x)

= g1(x)(∇W1V)(x) + · · ·+ gd(x)(∇Wd

V)(x)

= g1(x)(∇W1 V)(x) + · · ·+ gd(x)(∇Wd V)(x).

The stated definition of (∇Wi V)(x) is independent of the choice ofsmooth extension owing to Lemma 5.21.

Anticipating our needs for Section 5.7, we note that Lemmas 5.20,5.22 and 5.23 also allow us to make sense of the notation

(∇u(gW))(x) = Dg(x)[u] ·W(x) + g(x) · (∇uW)(x), (5.16)

where g ∈ F(U ) and W ∈ X(U ) are merely defined on a neighbor-hood U of x. Specifically, (∇uW)(x) represents (∇uW)(x) whereW ∈ X(M) is any smooth extension of W around x, as justified byLemmas 5.20 and 5.23.

Page 98: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

98 an introduction to optimization on smooth manifolds

5.7 Differentiating vector fields on curves

Recall that one of our goals in this chapter is to develop second-orderTaylor expansions for g = f c with a smooth cost function f : M→ R

evaluated along a smooth curve c : I →M. We already reasoned thatthe first derivative of g is

g′(t) =⟨grad f (c(t)), c′(t)

⟩c(t) .

To obtain a second order expansion of g, we must differentiate g′ with Below, instead of (grad f ) c we writesimply grad f c, where it is clear thatwe mean the gradient of f (which is avector field) composed with c. This is asopposed to taking the gradient of f c,which we would write grad( f c) or,more naturally, ( f c)′.

respect to t. The connection ∇ does not, in a direct way, tell us how tocompute this derivative, since (grad f ) c and c′ are not vector fieldson M. Rather, to each value of t in I (the domain of c), these mapseach associate a tangent vector at c(t), smoothly varying with t: theyare called smooth vector fields on c. We expect that g′′ should involve akind of derivative of these vector fields on c, through a kind of productrule. In other words: we need a derivative for vector fields on c.

Definition 5.25. Given a smooth curve c : I → M, the map Z : I → TMis a smooth vector field on c if Z(t) is in Tc(t)M for all t ∈ I, and if itis smooth as a map from I (an open submanifold of R) to TM. The set ofsmooth vector fields on c is denoted by X(c).

A connection∇ on a manifoldM induces a natural notion of deriva-tive of vector fields along a curve, with desirable properties. The proofof the following statement involves local frames, which we discussedin Section 3.9. If the reader skipped that section, it is safe to skip thenext proof and to consider Proposition 5.27: this is sufficient to workon Riemannian submanifolds.

Theorem 5.26. Let c : I → M be a smooth curve on a manifold equipped Not all vector fields Z ∈ X(c) are of theform U c for some U ∈ X(M). In-deed, consider a smooth curve c suchthat c(t1) = c(t2) = x (it crosses itself).It could well be that Z(t1) 6= Z(t2) (eventhough Z is smooth). Then, we wouldnot know how to define U(x): should itbe equal to Z(t1) or Z(t2)? To some ex-tent, this is why we need D

dt .

with a connection ∇. There exists a unique operator Ddt : X(c) → X(c)

satisfying these three properties for all Y, Z ∈ X(c), U ∈ X(M), g ∈ F(I),and a, b ∈ R:

1. R-linearity: Ddt (aY + bZ) = a D

dt Y + b Ddt Z;

2. Leibniz rule: Ddt (gZ) = g′Z + g D

dt Z;

3. Chain rule:(

Ddt (U c)

)(t) = ∇c′(t)U for all t ∈ I.

This operator is called the induced2 covariant derivative. Furthermore, if 2 Induced by the connection ∇.

M is a Riemannian manifold with metric 〈·, ·〉 and ∇ is compatible with themetric (e.g., if it is the Riemannian connection), then the induced covariantderivative also satisfies:

4. Product rule: ddt 〈Y, Z〉 =

⟨Ddt Y, Z

⟩+⟨

Y, Ddt Z

⟩,

where 〈Y, Z〉 ∈ F(I) is defined by 〈Y, Z〉(t) = 〈Y(t), Z(t)〉c(t).

Page 99: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: second order 99

Proof. We first prove uniqueness under properties 1–3. Pick an arbi-trary t ∈ I. There exists a local frame W1, . . . , Wd ∈ X(U ) defined ona neighborhood U of c(t) in M (see Proposition 3.59). Since c is afortiori continuous, J = c−1(U ) is an open subset of I which containst. Furthermore, by the properties of local frames, there exist uniquesmooth functions g1, . . . , gd : J → R such that

∀t ∈ J, Z(t) = g1(t)W1(c(t)) + · · ·+ gd(t)Wd(c(t)).

Using the first two properties of the covariant derivative Ddt , we get

∀t ∈ J,Ddt

Z(t) =d

∑i=1

g′i(t)Wi(c(t)) + gi(t)Ddt

(Wi c)(t).

Now using the third property, we find See the discussion around eq. (5.16) forhow to interpret ∇c′(t)Wi , consideringWi is only defined locally around c(t).

∀t ∈ J,Ddt

Z(t) =d

∑i=1

g′i(t)Wi(c(t)) + gi(t)∇c′(t)Wi. (5.17)

This expression is fully defined by the connection ∇. Since this ar-gument can be repeated on a neighborhood of each t in I, it followsthat D

dt is uniquely defined by the connection ∇ and the three statedproperties.

To prove existence, simply consider (5.17) as the definition of anoperator D

dt on a neighborhood of each t. It is an exercise to verify thatthis definition satisfies properties 1–3. Since we have uniqueness, itis clear that definitions obtained on overlapping domains J and J′ arecompatible, so that (5.17) defines a smooth vector field on all of c.

Now consider the case where M is a Riemannian manifold and ∇is compatible with the Riemannian metric. We prove the 4th propertyholds. To this end, expand Y in the local frame:

∀t ∈ J, Y(t) = f1(t)W1(c(t)) + · · ·+ fd(t)Wd(c(t)).

Then, using also the expansion of Z, for t ∈ J,

〈Y, Z〉 =d

∑i,j=1

figj⟨Wi c, Wj c

⟩.

Differentiate this with respect to t:

ddt〈Y, Z〉 =

d

∑i,j=1

( f ′i gj + fig′j)⟨Wi c, Wj c

⟩+ figj

ddt⟨Wi c, Wj c

⟩.

(5.18)

On the other hand, by uniqueness we know that (5.17) is a valid ex-pression for D

dt Z so that⟨Y,

Ddt

Z⟩

=d

∑i,j=1

fig′j⟨Wi c, Wj c

⟩+ figj

⟨Wi c,∇c′Wj

⟩.

Page 100: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

100 an introduction to optimization on smooth manifolds

Similarly,⟨Ddt

Y, Z⟩

=d

∑i,j=1

f ′i gj⟨Wi c, Wj c

⟩+ figj

⟨∇c′Wi, Wj c

⟩.

Summing up these identities and comparing to (5.18), we find thatproperty 4 holds if

ddt⟨Wi c, Wj c

⟩=⟨∇c′Wi, Wj c

⟩+⟨Wi c,∇c′Wj

⟩.

This is indeed the case owing to compatibility of ∇ with the metric,since

ddt( ⟨

Wi, Wj⟩ c)(t)

is the directional derivative of⟨Wi, Wj

⟩at c(t) along c′(t).

For the special case where ∇ is the connection defined by (5.4) on amanifoldM embedded in a Euclidean space E , the induced covariantderivative admits a particularly nice expression. Consider a smoothcurve c : I → M. We can also think of it as a smooth curve c : I → E .Thus, a smooth vector field Z along c on M is also a smooth vectorfield along c in E . As a result, it makes sense to write d

dt Z to denotethe classical (or extrinsic) derivative of Z in the embedding space E .We are about to show that the operator D

dt : X(c)→ X(c) defined by

Ddt

Z(t) = Projc(t)

(ddt

Z(t))

(5.19)

is the covariant derivative induced by ∇. Thus, similarly to ∇ (5.4), itsuffices to take a classical derivative in the embedding space, followedby an orthogonal projection to the tangent spaces. In particular, if Mis (an open subset of) a linear space, then D

dt Z = ddt Z, as expected.

Proposition 5.27. LetM be an embedded submanifold of a Euclidean spaceE with connection ∇ as in (5.4). The operator D

dt defined by (5.19) is the in-duced covariant derivative, that is, it satisfies properties 1–3 in Theorem 5.26.If M is a Riemannian submanifold of E , then D

dt also satisfies property 4 inthat same theorem.

Proof. Properties 1 and 2 follow directly from linearity of projectors.For the chain rule, consider U ∈ X(M) with smooth extension U, andZ(t) = U(c(t)) = U(c(t)). Then, d

dt Z(t) = DU(c(t))[c′(t)] = ∇c′(t)Uwith ∇ the Riemannian connection on E . It follows from (5.5) that

Ddt

Z(t) = Projc(t)(∇c′(t)U

)= ∇c′(t)U,

as desired for property 3.

Page 101: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: second order 101

Property 4 follows as a consequence of Theorem 5.26, but we verifyit explicitly as this is an important special case. Consider two vectorfields Y, Z ∈ X(c). Differentiate the function t 7→ 〈Y(t), Z(t)〉 treatingY, Z as vector fields along c in E :

ddt〈Y, Z〉 =

⟨ddt

Y, Z⟩+

⟨Y,

ddt

Z⟩

.

Since Z is tangent toM, Z = ProjcZ (and similarly for Y). Now usingthat Proj is self-adjoint, we have

ddt〈Y, Z〉 =

⟨ddt

Y, ProjcZ⟩+

⟨ProjcY,

ddt

Z⟩

=

⟨Projc

ddt

Y, Z⟩+

⟨Y, Projc

ddt

Z⟩

=

⟨Ddt

Y, Z⟩+

⟨Y,

Ddt

Z⟩

.

Throughout, we used that 〈·, ·〉 is the metric both in the embeddingspace and onM.

Example 5.28. Let f be a smooth function on a Riemannian manifold Mequipped with the Riemannian connection ∇ and induced covariant deriva-tive D

dt . Applying the chain rule property of Theorem 5.26 to Definition 5.11for the Riemannian Hessian, we get this expression:

Hess f (x)[u] = ∇ugrad f =Ddt

grad f (c(t))∣∣∣∣t=0

, (5.20)

where c : I → M is any smooth curve such that c(0) = x and c′(0) = u.This is true in particular with c(t) = Rx(tu) for any retraction R onM.

Example 5.29. For a smooth function f on a Riemannian submanifold Mof a Euclidean space E , we can apply (5.19) to (5.20) to find

Hess f (x)[u] = Projx

(limt→0

grad f (c(t))− grad f (c(0))t

)= lim

t→0

Projx(grad f (c(t)))− grad f (x)t

, (5.21)

where the subtraction makes sense because grad f (c(t)) is an element of thelinear embedding space E for all t. This holds for any smooth curve c suchthat c(0) = x and c′(0) = u. Picking a retraction curve for example, thisjustifies the claim that, for some aptly chosen t > 0,

Hess f (x)[u] ≈Projx(grad f (Rx(tu)))− grad f (x)

t. (5.22)

This is called a finite difference approximation of the Hessian. Assuminggrad f (x) is readily available, it affords us a straightforward way to approx-imate Hess f (x)[u] for the computational cost of one retraction, one gradientevaluation, and one projection. The parameter t should be small enough forthe mathematical approximation to be accurate, yet large enough to avoidcatastrophic numerical errors. We discuss this concept in more generality inSection 10.6.

Page 102: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

102 an introduction to optimization on smooth manifolds

Exercise 5.30. In the proof of Theorem 5.26, show that the operator (5.17)satisfies properties 1–3.

5.8 Acceleration and geodesics

If the manifold M is equipped with a covariant derivative Ddt , we can

use it to define the notion of acceleration along a curve onM.

Definition 5.31. Let c : I → M be a smooth curve. The acceleration of cis a smooth vector field on c defined as:

c′′ =Ddt

c′,

where c′ is the velocity of c.

ForM embedded in a linear space E , it is convenient to distinguishnotationally between the acceleration of c on the manifold (as definedabove) and the classical acceleration of c in its embedding space. Wewrite

c =d2

dt2 c

for the classical or extrinsic acceleration. In that spirit, we use nota-tions c′ and c interchangeably for velocity, since the two notions thencoincide. When M is a Riemannian submanifold of E , the inducedcovariant derivative takes on a convenient form (5.19), so that

c′′(t) = Projc(t)(c(t)). (5.23)

We also state this as c′′ = Projc(c) for short. In words: on a Riemanniansubmanifold, the acceleration of a curve is the tangential part of itsextrinsic acceleration in the embedding space.

Example 5.32. Consider the sphere Sn−1 = x ∈ Rn : x>x = 1 equippedwith the Riemannian submanifold geometry of Rn with the canonical metric.For a given x ∈ Sn−1 and v ∈ TxSn−1 (nonzero), consider the curve

c(t) = cos(t‖v‖)x +sin(t‖v‖)‖v‖ v,

which traces a so-called great circle on the sphere. The velocity and accelera-tion of c in Rn are easily derived:

c(t) = −‖v‖ sin(t‖v‖)x + cos(t‖v‖)v,

c(t) = −‖v‖2 cos(t‖v‖)x− ‖v‖ sin(t‖v‖)v = −‖v‖2c(t).

The velocity c′(t) matches c(t). Owing to (5.23), to get the acceleration of con Sn−1, we project:

c′′(t) = Projc(t) c(t) = (In − c(t)c(t)>)c(t) = 0.

Page 103: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: second order 103

Thus, c is a curve with zero acceleration on the sphere (even though its accel-eration in Rn is nonzero.)

Curves with zero acceleration play a particular role in geometry, asthey provide a natural generalization of the concept of straight linest 7→ x + tv from linear spaces to manifolds.

Definition 5.33. On a Riemannian manifold M, a geodesic is a smooth By default, we mean for M to beequipped with the Riemannian connec-tion∇ and the induced covariant deriva-tive D

dt .

curve c : I → M such that c′′(t) = 0 for all t ∈ I, where I is an openinterval of R.

Owing to (5.23), a curve c on a Riemannian submanifold M is ageodesic if and only if its extrinsic acceleration c is everywhere normalto M. Geodesics are further discussed in Section 10.2—they play aminor role in practical optimization algorithms.

5.9 A second-order Taylor expansion on curves

On a Riemannian manifoldM, consider a real function f ∈ F(M) anda smooth curve c : I → M passing through x at t = 0 with velocityv. In this section, we build a second-order Taylor expansion for thefunction g = f c, as announced in the introduction of this chapter.

Since g is a smooth function from R to R, it has a Taylor expansion:

f (c(t)) = g(t) = g(0) + tg′(0) +t2

2g′′(0) + O(t3).

We have the tools necessary to investigate the derivatives of g. Indeed,

g′(t) = D f (c(t))[c′(t)] =⟨grad f (c(t)), c′(t)

⟩c(t) ,

so that

g′(0) = 〈grad f (x), v〉x .

Moreover, using in turn properties 4 and 3 of Theorem 5.26 regardingthe covariant derivative D

dt induced by the Riemannian connection ∇,followed by Definition 5.11 for the Hessian, we compute:

g′′(t) =ddt⟨grad f (c(t)), c′(t)

⟩c(t)

(property 4) =

⟨Ddt

grad f (c(t)), c′(t)⟩

c(t)+

⟨grad f (c(t)),

Ddt

c′(t)⟩

c(t)

(property 3) =⟨∇c′(t)grad f , c′(t)

⟩c(t)

+⟨grad f (c(t)), c′′(t)

⟩c(t)

=⟨Hess f (c(t))[c′(t)], c′(t)

⟩c(t) +

⟨grad f (c(t)), c′′(t)

⟩c(t) ,

so that

g′′(0) = 〈Hess f (x)[v], v〉x +⟨grad f (x), c′′(0)

⟩x . (5.24)

Page 104: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

104 an introduction to optimization on smooth manifolds

These all combine to form:

f (c(t)) = f (x) + t 〈grad f (x), v〉x +t2

2〈Hess f (x)[v], v〉x

+t2

2⟨grad f (x), c′′(0)

⟩x + O(t3). (5.25)

Of particular interest for optimization is the Taylor expansion of falong a retraction curve. This is the topic of the next section.

Exercise 5.34. Given a smooth curve c : [0, 1]→M on a Riemannian man-ifoldM with c(0) = x and c(1) = y, show that there exists t ∈ (0, 1) suchthat

f (y) = f (x) +⟨grad f (x), c′(0)

⟩x +

12⟨Hess f (c(t))[c′(t)], c′(t)

⟩c(t)

+12⟨grad f (c(t)), c′′(t)

⟩c(t) . (5.26)

Hint: use the mean value theorem.

This last exercise notably yields the following statement.

Lemma 5.35. Let c(t) be a geodesic connecting x = c(0) to y = c(1), andassume Hess f (c(t)) µ Id for all t ∈ [0, 1] (for some µ ∈ R). Then,

f (y) ≥ f (x) + 〈grad f (x), v〉x +µ

2‖v‖2

x.

Proof. This follows from (5.26) because ‖c′(t)‖c(t) is constant.

If x ∈ M is such that grad f (x) = 0 and Hess f (x) µ′ Id for someµ′ > 0, then by continuity of eigenvalues there exists a neighborhoodU of x in which Hess f (z) µ Id for all z ∈ U and some µ > 0. If U isappropriately chosen, we may deduce that x is the unique critical pointin U , and it is the global minimizer in that set (hence an isolated localminimizer for f on all ofM)—see Chapter 11 about geodesic convexity:the neighborhood can be chosen to be a geodesically convex geodesicball, and f restricted to that ball is µ-strongly convex, in a geodesicsense. This can ease the study of the local convergence behavior ofoptimization algorithms near isolated local minimizers.

5.10 Second-order retractions

Continuing from the Taylor expansion (5.25) established above, weconsider the important case where c is a retraction curve, that is,

c(t) = Rx(tv)

Page 105: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: second order 105

for a point x ∈ M and a vector v ∈ TxM. A direct application of (5.25)yields

f (Rx(tv)) = f (x) + t 〈grad f (x), v〉x +t2

2〈Hess f (x)[v], v〉x

+t2

2⟨grad f (x), c′′(0)

⟩x + O(t3). (5.27)

The last term involving the acceleration of c at t = 0 is undesirable, asit is of order t2 and depends on the retraction. Fortunately, it vanishesif either grad f (x) = 0 or c′′(0) = 0. The latter happens in particular ifc is a geodesic,3 but notice that we only need the acceleration at t = 0 3 This is the case if R is the exponential

map: see Section 10.2.to vanish. This suggests the following definition.

Definition 5.36. A second-order retraction R on a Riemannian manifoldM is a retraction such that, for all x ∈ M and all v ∈ TxM, the curvec(t) = Rx(tv) has zero acceleration at t = 0, that is, c′′(0) = 0.

Second-order retractions are not hard to come by. In particular, ifM is a Riemannian submanifold of a Euclidean space, then the map(x, v) 7→ Rx(v) which consists in projecting4 x + v to the manifold (an 4 This is called metric projection.

operation which may only be defined for small v) is a second-orderretraction: see Propositions 5.42 and 5.43. This covers some of theretractions we discuss on the sphere, Stiefel, the orthogonal group andthe set of fixed-rank matrices in Chapter 7. In the following example,we verify this explicitly for the sphere.

Example 5.37. Consider this retraction on the sphere Sn−1:

Rx(v) =x + v‖x + v‖ .

This retraction is second order. Indeed, with c(t) = Rx(tv):

c(t) =x + tv√

1 + t2‖v‖2=

(1− 1

2‖v‖2t2 + O(t4)

)(x + tv),

c(t) = −‖v‖2t(x + tv) +(

1− 12‖v‖2t2

)v + O(t3),

c(t) = −‖v‖2(x + tv)− ‖v‖2tv− ‖v‖2tv + O(t2)

= −‖v‖2(x + 3tv) + O(t2).

Of course, c′(0) = c(0) = v. As for acceleration, c(0) = −‖v‖2x, so that:

c′′(0) = Projx(c(0)) = 0,

as announced.

Using this new definition, we turn (5.27) into the following usefulstatement regarding the pullback f Rx.

Page 106: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

106 an introduction to optimization on smooth manifolds

Proposition 5.38. Consider a Riemannian manifold M equipped with anyretraction R, and a smooth function f : M→ R. If x is a critical point of f(that is, if grad f (x) = 0), then

f (Rx(s)) = f (x) +12〈Hess f (x)[s], s〉x + O(‖s‖3

x). (5.28)

If R is a second-order retraction, then for all points x ∈ M we have

f (Rx(s)) = f (x) + 〈grad f (x), s〉x +12〈Hess f (x)[s], s〉x + O(‖s‖3

x).

(5.29)

Proof. Simply rewrite (5.27) with s = tv.

That the first identity holds for all retractions is useful to study thebehavior of optimization algorithms close to critical points.

Proposition 5.38 suggests an alternative way to compute the Rie-mannian Hessian. Indeed, the direct way is to use the definition as wedid in Example 5.13. This requires computing with the Riemannianconnection, which may not be straightforward for general manifolds.If a second-order retraction is on hand or if we are only interested inthe Hessian at critical points, an alternative is to use the next result.In practical terms, it suggests to compose f with Rx (which yields asmooth function from a linear space to the reals), then to compute theHessian of the latter in the usual way. This echoes Proposition 3.49

stating grad f (x) = grad( f Rx)(0).

Proposition 5.39. If the retraction is second order or if grad f (x) = 0, then See also Exercise 10.67.

Hess f (x) = Hess( f Rx)(0),

where the right-hand side is the Hessian of f Rx : TxM→ R at 0 ∈ TxM.The latter is a “classical” Hessian since TxM is a Euclidean space.

Proof. If R is second order, expand fx(s) = f (Rx(s)) using (5.29):

fx(s) = f (x) + 〈grad f (x), s〉x +12〈Hess f (x)[s], s〉x + O(‖s‖3

x).

The gradient and Hessian of fx : TxM → R with respect to s followeasily, using the fact that Hess f (x) is self-adjoint:

grad fx(s) = grad f (x) + Hess f (x)[s] + O(‖s‖2x), and

Hess fx(s)[s] = Hess f (x)[s] + O(‖s‖x‖s‖x).

Evaluating at s = 0 yields Hess fx(0) = Hess f (x), as announced. Theproof is similar if x is a critical point, starting with (5.28).

Page 107: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: second order 107

5.11 Notes and references

Definition 5.1 for connections is not standard. The usual approach is todefine∇ as an operator mapping two smooth vector fields to a smoothvector field, then to prove that this operator acts pointwise in its firstargument. The latter point confirms that the two definitions are equiv-alent, but it is technical (see Section 5.6). Leading with Definition 5.1makes it possible to skip these technicalities at first.

The pointwise dependence is a consequence of F(M)-linearity, andholds more generally for all tensor fields (see Section 10.7): most ref-erences give the proof in that full generality. See for example [Lee12,Lem. 12.24], [Lee18, Prop. 4.5] or the remark after Def. 3.9 as well asProp. 2.2 and Cor. 2.3 in [O’N83]. In the same vein, ∇uV dependson V only locally through the values of V in a neighborhood of x (asin Lemma 5.20) or along any smooth curve passing through x withvelocity u (owing to the chain rule property in Theorem 5.26)—seealso [Lee18, Prop. 4.26].

Existence and uniqueness of the Riemannian connection is provedin most Riemannian geometry textbooks, including [Lee12, Prop. 4.12

and Thm. 5.10] and [O’N83, Thm. 3.11]. Likewise, for existence anduniqueness of the covariant derivative of vector fields along curves,see [Lee18, Thm. 4.24 and Prop. 5.5] and [O’N83, Prop. 3.18].

We showed that the Riemannian connection for a Euclidean spacecorresponds to the usual directional derivative, and that the Rieman-nian connection on a Riemannian submanifold is obtained throughorthogonal projection of the Riemannian connection in the embeddingspace [Lee18, Prop. 5.12], [AMS08, Prop. 5.3.2]. As part of that proof,we show symmetry in Theorem 5.6. This involves showing that if U, V(smooth vector fields in the embedding space) are tangent to a sub-manifold, then their Lie bracket is also tangent to that submanifold: asimilar statement appears as [Lee12, Cor. 8.32].

In the proof of Theorem 5.4, we use the fact that the Lie bracket[U, V] of two smooth vector fields U, V ∈ X(M) is itself a smooth vec-tor field (Proposition 5.8). Our proof is non-standard and restrictedto embedded submanifolds. We provide a general proof later in Sec-tion 8.8. In the meantime, we get some insight along these lines: Ex-ercise 5.9 introduces derivations, and claims smooth vector fields arederivations. In fact, the converse is true as well: smooth vector fieldsare one-to-one with derivations [Lee12, Prop. 8.15]. Then, Exercise 5.10

claims Lie brackets are derivations, so that Lie brackets are indeedsmooth vector fields. (The proof in Section 8.8 follows yet anotherpath.)

We follow the definition of Riemannian Hessian preferred by Absilet al. [AMS08, §5.5]. The definition of second-order retractions and

Page 108: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

108 an introduction to optimization on smooth manifolds

Proposition 5.39 follow that reference too. Absil et al. readily stressthe importance of the fact that, at a critical point, it does not mat-ter whether the retraction is second order. A broader discussion ofvarious types of Hessians and second covariant derivatives of smoothfunctions is presented in [AMS08, §5.6].

For M a Riemannian submanifold of a Euclidean space E , Corol-lary 5.15 illustrates the relevance of the directional derivatives of theorthogonal projector (5.11),

Pu = D(x 7→ Projx)(x)[u].

With Proj⊥x = Id−Projx the orthogonal projector to the normal spaceNxM = (TxM)⊥, we found in (5.14) that

Pu Proj⊥x = Projx Pu and Pu Projx = Proj⊥x Pu.

Thus, if v ∈ NxM is a normal vector at x, then v = Proj⊥x (v) and

Pu(v) = Pu(Proj⊥x (v)) = Projx(Pu(v)).

The output is necessarily a tangent vector at x. This motivates us todefine the following bilinear map called the Weingarten map:

W : TxM×NxM→ TxM : (u, v) 7→ W(u, v) = Pu(v). (5.30)

Likewise, if w ∈ TxM is a tangent vector at x, then w = Projx(w) and

Pu(w) = Pu(Projx(w)) = Proj⊥x (Pu(w)).

The output is necessarily a normal vector at x, leading us to define thisbilinear map called the second fundamental form: Read “two” for II.

II : TxM× TxM→ NxM : (u, w) 7→ II(u, w) = Pu(w). (5.31)

For an arbitrary z ∈ E , these combined definitions allow us to write

Pu(z) = II(u, Projx(z)) +W(u, Proj⊥x (z)). (5.32)

With respect to Corollary 5.15 in particular, we get an identity for theHessian described in [AMT13]: Compare (5.33) with (7.77) which pro-

vides explicit expressions in terms of alocal defining function h forM.Hess f (x)[u] = Projx(Hess f (x)[u]) +W(u, Proj⊥x (grad f (x))). (5.33)

In quadratic form, we also have (with 〈·, ·〉 denoting both the Euclideaninner product and the Riemannian metric at x sinceM is a Riemanniansubmanifold of E )

〈w, Hess f (x)[u]〉 =⟨w, Hess f (x)[u]

⟩+ 〈w,W(u, Proj⊥x (grad f (x)))〉

=⟨w, Hess f (x)[u]

⟩+ 〈w,Pu(Proj⊥x (grad f (x)))〉

=⟨w, Hess f (x)[u]

⟩+ 〈Pu(w), Proj⊥x (grad f (x))〉

=⟨w, Hess f (x)[u]

⟩+ 〈II(u, w), grad f (x)〉, (5.34)

Page 109: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: second order 109

where we used that Projx, Proj⊥x and Pu are self-adjoint on E .While it is not obvious from the definition (5.31), we may surmise

from (5.34) that II is symmetric in its inputs. This is indeed the case.

Proposition 5.40. For all u, w ∈ TxM we have II(u, w) = II(w, u). [Lee18, Prop. 8.1]

Proof. For an arbitrary tangent vector w ∈ TxM, consider the smoothvector field W ∈ X(M) defined by W(y) = Projy(w). For u ∈ TxM,

DW(x)[u] = D(

y 7→ Projy(w))(x)[u] = Pu(w) = II(u, w).

Moreover, with ∇ and ∇ denoting the Riemannian connections on EandM respectively, remember from Propositions 5.5 and 3.28 that

∇uW = DW(x)[u] = DW(x)[u] = II(u, w). (5.35)

(This also implies ∇uW = Projx(∇uW) = 0 since II(u, w) is in NxM.)Likewise, define U ∈ X(M) by U(y) = Projy(u) and let U be anysmooth extension of U. Then, symmetry of ∇ implies

II(u, w)− II(w, u) = ∇uW − ∇wU = (∇UW − ∇WU)(x) = [U, W](x).

We learned from the proof of Theorem 5.6 that [U, W](x) is tangent toM at x; yet II(u, w)− II(w, u) is normal toM at x. Thus, we concludethat II(u, w)− II(w, u) = 0.

Definitions (5.31) and (5.30) for the second fundamental form andthe Weingarten map are not standard but they are equivalent to thestandard ones given in [Lee18, pp225–230]. Moreover, both maps (andtheir properties as laid out above) extend as is to the more generalsituation of a Riemannian submanifold of a Riemannian manifold, asdefined in Section 8.14.

We conclude this discussion with two additional useful facts aboutII. First, given any V ∈ X(M) and smooth extension V, the Gaussformula states that [Lee18, Thm. 8.2]

∇uV = Projx(∇uV) + Proj⊥x (∇uV) = ∇uV + II(u, v), (5.36)

where u and v = V(x) are tangent at x. Second, if γ is a geodesic ofMsatisfying γ(0) = x and γ′(0) = u, then II(u, u) is the extrinsic accel-eration of γ in the embedding space [Lee18, Prop. 8.10]: this informsus regarding the extrinsic curvature of M in its embedding space, andmay be useful to interpret (5.34).

The extension lemmas (Lemmas 5.22 and 5.23) hold for generalmanifolds. They are stated here to provide extensions in a neighbor-hood around a single point. More generally, these hold to obtain ex-tensions around any closed set. This can be shown using partitionsof unity [Lee12, Lem. 2.26, 8.6]. On this topic, bump functions on

Page 110: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

110 an introduction to optimization on smooth manifolds

Euclidean spaces (Lemma 5.19) can be used to construct partitions ofunity, which in turn can be used to construct bump functions on anymanifold [Lee12, Lem. 2.22, Thm. 2.23, Prop. 2.25].

The characterization of geodesics on Riemannian submanifolds ascurves with normal acceleration appears in [Lee18, Cor. 5.2] and alsoin [O’N83, Cor. 4.10].

We close with a word about retractions of the form

Rx(v) = arg minx′∈M

‖x′ − (x + v)‖ (5.37)

for M an embedded submanifold of a Euclidean space E equippedwith the inner product 〈·, ·〉 and associated norm ‖ · ‖. The distancedistM : E → R from a point of E to the setM is defined as

distM(y) = infx∈M

‖x− y‖. (5.38)

For a given y ∈ E the set

PM(y) = x ∈ M : ‖x− y‖ = distM(y)

is the metric projection or nonlinear orthogonal projection of y to M. Itmay be empty, or it may contain one or more points. Let A ⊆ E be theset of points y ∈ E for which PM(y) is a singleton, that is, for whichthere exists a unique point x ∈ M which is closest to y. In general,A could be neither open nor closed: consider M = (t, t2) : t ∈ Rfor which A = R2\(0, t) : t > 1/2 [DH94, Ex. 6.1]. However, strongproperties hold on the interior of A (that is, on the largest subset of Awhich is open in E ).

Theorem 5.41. LetM be an embedded submanifold of E . Let A ⊆ E be the [DH94, Thms 3.8 and 3.13, Cor. 3.14,Thm. 4.1]domain where PM is single-valued, and let Ω denote the interior of A.

1. For y ∈ A and x = PM(y), we have that y− x is orthogonal to TxMand x + t(y− x) : t ∈ [0, 1) ⊂ Ω. In particular,M⊂ Ω.

2. Ω is dense in A; ifM is closed in E , then the closure of Ω equals E .

3. The restriction PM : Ω → M is smooth, and for all x ∈ M we haveDPM(x) = Projx (the orthogonal projector from E to TxM).

Now consider this subset of the tangent bundle ofM:

O = (x, v) ∈ TM : x + v ∈ Ω. (5.39)

It is open since the map (x, v) 7→ x + v is continuous (in fact, smooth)from TM to E . Moreover, O contains all pairs (x, 0) ∈ TM sinceM isincluded in Ω. We use metric projection to define a retraction on O.

Page 111: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded geometry: second order 111

Proposition 5.42. On an embedded submanifoldM of a Euclidean space Ewith norm ‖ · ‖, this map is a retraction:

R: O →M : (x, v) 7→ R(x, v) = Rx(v) = PM(x + v).

Proof. Clearly, Rx(0) = PM(x) = x and R is smooth on its domain bycomposition. Moreover, for all (x, u) ∈ TM it holds that

DRx(0)[u] = DPM(x)[u] = Projx(u) = u,

confirming that DRx(0) is the identity on TxM.

Absil and Malick show that this retraction is part of a large familyof second-order retractions (recall Definition 5.36) [AM12, Ex. 23]. Forthe case at hand, Razvan-Octavian Radu shared the short proof below.

Proposition 5.43. IfM is a Riemannian submanifold of E , the retraction inProposition 5.42 is second order.

Proof. For an arbitrary (x, v) ∈ TM, consider the retraction curvec(t) = Rx(tv) = PM(x + tv). From Theorem 5.41, we know thatx + tv − c(t) is orthogonal to Tc(t)M for all t. (We can also see thisby noting that c(t) is a critical point of x′ 7→ ‖x′ − (x + tv)‖2 on M.)This is all we need for our purpose.

Let P(t) = Projc(t) denote orthogonal projection to Tc(t)M: this issmooth in t (see Exercise 3.56). Since x + tv − c(t) is orthogonal toTc(t)M for all t, we have that

g(t) = P(t)(x + tv− c(t))

is identically zero as a function from I ⊆ R (the domain of c) to E .Thus, the (classical) derivative g′(t) is also identically zero from I to E :

g′(t) = P′(t)(x + tv− c(t)) + P(t)(v− c′(t)) ≡ 0.

At t = 0, we can use c(0) = x to see that 0 = g′(0) = Projx(v− c′(0)).Since v and c′(0) are both tangent vectors at x, this simply recovers thefact that c′(0) = v. Differentiating once more, we have that g′′(t) isalso identically zero from I to E :

g′′(t) = P′′(t)(x + tv− c(t)) + 2P′(t)(v− c′(t))− P(t)ddt

c′(t) ≡ 0.

At t = 0, we use c(0) = x and c′(0) = v to see that

0 = −g′′(0) = Projx

(ddt

c′(0))=

Ddt

c′(0) = c′′(0),

where the last two equalities follow (5.23): this is where we use thatM is a Riemannian submanifold of E .

Page 112: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

112 an introduction to optimization on smooth manifolds

The domain of Rx is the open subset Ox = v ∈ TxM : (x, v) ∈ O.Clearly, Ox contains the origin, hence it also contains an open ballaround the origin. However,Ox itself is not necessarily star-shaped withrespect to the origin, that is: it is not necessarily true that if v ∈ Ox thentv ∈ Ox for all t ∈ [0, 1]. Indeed, consider this example [DH94, Ex. 6.4]:M = (t, cos(t)) : t ∈ R ⊂ R2, for which A is all of R2 exceptfor certain half lines: A = R2\ ∪k∈Z (kπ, t) : (−1)k+1t > 0. Nowconsider x = (0, 1) ∈ M. The domain Ox ⊂ TxM = (t, 0) : t ∈ Ris the set of pairs (t, 0) such that (t, 1) is in the interior of A. Thus,Ox is the set of pairs (t, 0) such that t/π is not an odd integer. Thisset is not star-shaped (but it can be reduced to a star-shaped domainby restriction to (t, 0) : −π < t < π). Another example is metricprojection to the set of matrices of fixed rank Rm×n

r (7.47): if X ∈ Rm×nr ,

then V = −X ∈ TXRm×nr ; consider the line t 7→ X + tV: projection of

X + tV to Rm×nr is well defined for all t except t = 1.

For an embedded submanifold M in E , the domain A of PM is allof E if and only if M is an affine subspace of E [DH94, Thm. 5.3].However, even if A (and a fortiori Ω) is not all of E , it can be thecase that O = TM. This happens whenever M is the boundary of anonempty, closed, convex set, as then the sets of the form x + TxMare supporting hyperplanes of the convex hull of M: projecting anelement of x + TxM to M is the same as projecting to the convexhull of M, which is globally defined [DH94, Thm. 5.1]. Examplesare the metric projections onto the sphere (7.7) and (more generally)onto the Stiefel manifold (7.22): the sphere is the boundary of the unitEuclidean ball in Rn, and the Stiefel manifold is the boundary of theunit operator-norm ball in Rn×p (p < n). This extends to SO(n) and(with some care regarding its two components) to O(n) (Section 7.4).

From Theorem 5.41 it is also fairly direct to build a so-called tubularneighborhood for M in E [Lee18, Thm. 5.25]. The other way around,the proof of Proposition 5.43 generalizes easily to show that retractionsbuilt from tubular neighborhoods in a natural way are second order.

Breiding and Vannieuwenhoven study the sensitivity of metric pro-jection to Riemannian submanifolds of Euclidean space in terms ofextrinsic curvature (via the Weingarten map) [BV19].

Page 113: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

6Second-order optimization algorithms

First-order derivatives of the cost function f : M → R, through thegradient, provide exploitable information for optimization algorithms.In the same way, second-order derivatives, through the Hessian, playan important role for the development of richer algorithms.

In this chapter, we discuss a Riemannian version of the famousNewton method: a pillar of both optimization and numerical analy-sis. As each iteration of this algorithm involves solving a linear systemof equations on a tangent space of M, we take a moment to discussthe (linear) conjugate gradients method. For all its qualities, New-ton’s method unfortunately has many flaws, not the least of whichis that its behavior critically depends on initialization, that is, on thechoice of x0 ∈ M. From the classical literature on optimization inlinear spaces, we know that these flaws can be corrected by addingsafeguards, yielding the trust-region method. We discuss and ana-lyze a Riemannian version of this algorithm: arguably the most robustalgorithm for smooth optimization on manifolds to date. For Rieman-nian trust regions, too, each iteration requires solving a subproblem.We detail how a variation of the conjugate gradients method, knownas truncated conjugate gradients, solves the subproblem in an elegantand robust way.

6.1 Second-order optimality conditions

Before we move on to discuss second-order optimization algorithms,we secure a second-order necessary optimality condition. It involvesspectral properties of the Hessian (see Definition 3.5).

Proposition 6.1. Consider a smooth function f : M → R defined on aRiemannian manifold M. If x is a local (or global) minimizer of f , thengrad f (x) = 0 and Hess f (x) 0.

Proof. We established grad f (x) = 0 in Proposition 4.4. For contradic-tion, assume Hess f (x) is not positive semidefinite. Then, there exists

Page 114: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

114 an introduction to optimization on smooth manifolds

a tangent vector v ∈ TxM such that 〈Hess f (x)[v], v〉x = −2a < 0, forsome positive a. Let c : I → M be a smooth curve passing through xwith velocity v at t = 0. Then, using the Taylor expansion (5.25) andthe fact that grad f (x) = 0, we can write

f (c(t)) = f (x) +t2

2〈Hess f (x)[v], v〉x + O(t3)

= f (x)− at2 + O(t3).

Hence, there exists t such that

f (c(t)) < f (x) for all t in (0, t],

contradicting the fact that x is a local minimizer.

Proposition 6.2. Consider a smooth function f : M → R defined on aRiemannian manifoldM. If grad f (x) = 0 and Hess f (x) 0, then x is astrict local (or global) minimizer of f .

Proof sketch. Recall equation (5.26): at the critical point x, for any smooth This proof sketch notably uses the exis-tence of geodesics between any two suf-ficiently close points, which we furtherdiscuss in Section 10.2. A lighter wayto prove this statement is to use charts,which we introduce for general mani-folds in Chapter 8.

curve c : [0, 1] → M such that c(0) = x and c(1) = y, there existst ∈ (0, 1) such that

f (y) = f (x) +12⟨Hess f (c(t))[c′(t)], c′(t)

⟩c(t) +

12⟨grad f (c(t)), c′′(t)

⟩c(t) .

We claim without proof that there exists a neighborhood U aroundx on M such that, for all y ∈ U , the curve c can be chosen to map[0, 1] into U and to be a geodesic, that is, c′′(t) = 0 and (consequently)‖c′(t)‖c(t) = ‖c′(0)‖x. Thus, for all y ∈ U ,

f (y) ≥ f (x) +λ

2‖c′(0)‖2

x, with λ = infz∈U

λmin(Hess f (z)) .

Since λmin(Hess f (x)) > 0, by continuity of the smallest eigenvalue ofthe Hessian, the neighborhood U can be reduced to ensure λ > 0. Fory 6= x we have ‖c′(0)‖x > 0, hence f (y) > f (x) as desired.

6.2 Riemannian Newton’s method

All optimization algorithms we consider are retraction based, in thesense that they iterate

xk+1 = Rxk (sk)

for some step sk. Thus, the cost function along iterates is dictated bythe pullbacks fx = f Rx:

f (xk+1) = f (Rxk (sk)) = fxk (sk).

Page 115: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

second-order optimization algorithms 115

Accordingly, a general strategy to design algorithms is choose modelsmxk : TxkM → R which suitably approximate fxk , and to pick sk asan (approximate) minimizer of mxk . This is beneficial if the model issubstantially simpler than the pullback while being close to it. Basedon our work building Taylor expansions (Proposition 5.38), we knowthat for second-order retractions or close to critical points it holds that

fx(s) ≈ mx(s) = f (x) + 〈grad f (x), s〉x +12〈Hess f (x)[s], s〉x .

A minimizer of mx, if one exists, must be a critical point of mx. Thus,we compute Since Hess f (x) is self-adjoint,

Dmx(s)[u] = 〈grad f (x), u〉x+ 〈Hess f (x)[s], u〉x ;

Also, Dmx(s)[u] = 〈grad mx(s), u〉x bydefinition. Conclude by identification.

grad mx(s) = grad f (x) + Hess f (x)[s],

and we note that s is a critical point of mx if and only if

Hess f (x)[s] = −grad f (x).

This defines a linear system of equations (called the Newton equations)in the unknown s ∈ TxM. So long as Hess f (x) is invertible, thereexists a unique solution (called the Newton step): we use it to defineAlgorithm 6.1. Of course, the critical point of the quadratic functionmx is its minimizer if and only if Hess f (x) is positive definite. In allother cases, the Newton step does not correspond to a minimizer ofmx, which may lead the sequence of iterates astray.

Input: x0 ∈ M

For k = 0, 1, 2, . . .

Solve Hess f (xk)[sk] = −grad f (xk) for sk ∈ TxkM

xk+1 = Rxk (sk)

Algorithm 6.1: Riemannian Newton’smethod

Recall the notion of local convergence rate introduced in Section 4.6.In contrast to the typical behavior of gradient descent, Newton’s methodmay converge superlinearly. Specifically, it may converge quadratically(or even faster), as we now define.

Definition 6.3. In a metric space equipped with a distance dist, a sequence Under this definition, pick K such that

εk ≤1

2(µ + 0.1)and

εk+1

ε2k≤ µ + 0.1

for all k ≥ K. Then,

εk+1 ≤ ε2k(µ + 0.1) ≤ εk

2.

Thus, the sequence also converges atleast linearly (Definition 4.12).

a0, a1, a2, . . . converges at least quadratically to a? if there exists a sequenceof positive reals ε0, ε1, ε2, . . . converging to zero such that dist(ak, a?) ≤ εk

and limk→∞εk+1

ε2k

= µ for some µ ≥ 0.

In Section 10.1, we discuss how a Riemannian manifold can be en-dowed with a natural notion of distance, called the Riemannian distance.

Page 116: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

116 an introduction to optimization on smooth manifolds

Up to technical points, dist(x, y) is the length of the shortest curve onM joining x and y. This allows us to make sense of convergence ratesfor sequences of iterates. Specifically, we have the following result forRiemannian Newton’s method.

Theorem 6.4. Given a smooth function f : M→ R on a Riemannian man- [AMS08, Thm. 6.3.2]

ifold M, let x? be such that grad f (x?) = 0 and Hess f (x?) is invertible.1 1 Such a point may not exist, and it maynot be unique.There exists a neighborhood U of x? on M such that, for any x0 ∈ U ,

Newton’s method (Algorithm 6.1) generates an infinite sequence of iteratesx0, x1, x2, . . . which converges at least quadratically to x?.

The retraction does not need to be second-order. Essentially, this isdue to Proposition 5.38 and the fact that x? is a critical point.

From an optimization perspective, Theorem 6.4 is only beneficialin the case Hess f (x?) 0. Indeed, by Proposition 6.1, critical pointswith an invertible Hessian which is not positive definite are certainlynot local minimizers (in fact, they could be local maximizers). Yet, thistheorem tells us Newton’s method may converge to such points.

Partly because of this, given an initialization x0, it is hard to predictwhere Newton’s method may converge (if it converges at all). Afterall, the neighborhood U may be arbitrarily small.

For this reason, we add safeguards and other enhancements to thisbare algorithm in Section 6.4. Still, owing to its fast local convergence,Newton’s method is relevant for favorable problems, or more gener-ally to refine approximate solutions (for example, obtained throughgradient descent). Thus, before moving on entirely, we discuss a prac-tical algorithm to compute the Newton step sk. This will prove usefulfor the safeguarded algorithm as well.

6.3 Computing Newton steps: conjugate gradients

For a smooth function f on a Riemannian manifold M, the Newtonstep at x ∈ M is the tangent vector s ∈ TxM such that

Hess f (x)[s] = −grad f (x), (6.1)

assuming the linear operator Hess f (x) is invertible. In practice, we Upon choosing a basis for TxM, onecould form a matrix which representsHess f (x) in that basis, but this is com-putationally expensive as it requires toapply Hess f (x) to the dimM basis vec-tors, just to form that matrix.

do not have access to Hess f (x) as a matrix. Rather, we can access theHessian as an operator, computing Hess f (x)[s] for any given s ∈ TxM.Solvers for linear systems which only require access to this operatorare called matrix free.

We readily know that Hess f (x) is self-adjoint with respect to 〈·, ·〉x.Furthermore, the Newton step is only meaningful for optimization ifHess f (x) is positive definite: we here assume it is. The most famousmatrix-free solver for self-adjoint, positive definite linear systems is theconjugate gradients method (CG).

Page 117: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

second-order optimization algorithms 117

To simplify notation, let H denote Hess f (x) and let b denote theright hand side, −grad f (x). The solution s satisfies Hs = b. Itera-tively, CG produces better and better approximations of s as a sequencev0, v1, . . . in TxM. To make sense of this statement, we must specifya norm. We could of course work with the norm ‖u‖x =

√〈u, u〉x,

induced by the Riemannian metric at x. Instead, and this is crucial,CG tracks the approximation error in the H-norm, defined as:

‖u‖H =√〈u, Hu〉x. (6.2)

This is a norm on TxM since H is positive definite. The approximationerror for a vector v ∈ TxM then obeys:

‖v− s‖2H = 〈v− s, H(v− s)〉x= 〈v, Hv〉x − 〈s, Hv〉x − 〈v, Hs〉x + 〈s, Hs〉x= 〈v, Hv〉x − 2 〈v, b〉x + 〈s, Hs〉x ,

where we used that H is self-adjoint and Hs = b. Defining

g(v) =12〈v, Hv〉x − 〈v, b〉x , (6.3)

we find that

‖v− s‖2H = 2g(v) + 〈s, Hs〉x . (6.4)

Since the last term on the right-hand side is independent of v, we con-clude that minimizing ‖v− s‖H over a subset of TxM is equivalent tominimizing g(v) over that same subset. This is useful specifically be-cause ‖v− s‖H cannot be computed (since s is not yet known), whereasg is computable.

We now show that, if one has access to nonzero tangent vectorsp0, . . . , pn−1 (for some integer n ≥ 1) such that

∀i 6= j,⟨

pi, Hpj⟩

x = 0,

then minimizing g over the space spanned by p0, . . . , pn−1 is straight-forward. Such directions are called H-conjugate: they are orthogonalwith respect to the inner product induced by H.

First, observe that H-conjugate directions are necessarily linearly in-dependent. Indeed, otherwise, there would exist a linear combination

α0 p0 + · · ·+ αn−1 pn−1 = 0

with at least one nonzero coefficient αi. This cannot be, as otherwise

0 =

⟨∑

iαi pi, H ∑

jαj pj

⟩x

= ∑ij

αiαj⟨

pi, Hpj⟩

x = ∑i

α2i 〈pi, Hpi〉x 6= 0,

Page 118: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

118 an introduction to optimization on smooth manifolds

using that 〈pi, Hpi〉x > 0 by positive definiteness of H.Second, using that any vector v in the span of the H-conjugate di-

rections can be expressed uniquely as

v = y0 p0 + · · ·+ yn−1 pn−1

with some coefficients y0, . . . , yn−1 ∈ R, we can express g(v) as a func-tion of these coefficients:

g(v) =12

⟨∑

iyi pi, H ∑

jyj pj

⟩x

−⟨

∑i

yi pi, b

⟩x

= ∑i

[12

y2i 〈pi, Hpi〉x − yi 〈pi, b〉x

].

The simplifications brought about by H-conjugacy are sizable. Indeed,at a minimizer, the partial derivatives of g with respect to each coeffi-cient yi,

∂g∂yi

= yi 〈pi, Hpi〉x − 〈pi, b〉x ,

must vanish. This translates into simple, decoupled conditions:

∀i ∈ 0, . . . , n− 1, yi =〈pi, b〉x〈pi, Hpi〉x

.

This reveals the (unique) minimizer in closed form.A few comments are in order:

1. Given H-conjugate directions p0, . . . , pn−1, the minimizer of g(v)over the span of p0, . . . , pn−1 is

vn =n−1

∑i=0

〈pi, b〉x〈pi, Hpi〉x

pi.

Due to (6.4), this is also the minimizer of ‖v − s‖H over the samesubspace.

2. Given vn, if we produce an additional H-conjugate direction pn,then it is easy to compute the minimizer of g(v) (or ‖v− s‖H) overthe (larger) subspace spanned by p0, . . . , pn:

vn+1 = vn +〈pn, b〉x〈pn, Hpn〉x

pn.

Of course, vn+1 is at least as good an approximation of s as vn,since it is obtained through minimization of ‖v− s‖H over a largersubspace.

Page 119: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

second-order optimization algorithms 119

3. Since H-conjugate directions are linearly independent, if we canproduce dimM of them, then they span the whole tangent spaceTxM. Since s is the global minimizer of ‖v − s‖H over TxM, itfollows that vdimM = s. In other words: after dimM updates, thesolution would be found.

Evidently, the crux of the effort is to devise an efficient procedureto generate H-conjugate directions. The CG algorithm does this whilesimultaneously generating the approximate solutions v1, v2, . . .: see Al-gorithm 6.2. The fact that the directions pn produced by this algorithmare H-conjugate, and the fact that the vectors vn produced by this algo-rithm are equivalent to those described above, follows from a standardproof by induction: see for example [TB97, Thm. 38.1]. Notice that CGrequires a single evaluation of the operator H (in our setting, a sin-gle evaluation of Hess f (x)) per iteration, and we know CG terminatesafter at most dimM iterations since this is the maximum number ofH-conjugate directions.

Input: positive definite operator H on TxM and b ∈ TxM

Set v0 = 0, r0 = b, p0 = r0

For n = 1, 2, . . .

Compute Hpn−1 (this is the only call to H)

αn = ‖rn−1‖2x

〈pn−1,Hpn−1〉xvn = vn−1 + αn pn−1

rn = rn−1 − αnHpn−1

If rn = 0, output s = vn: the solution of Hs = b

βn = ‖rn‖2x

‖rn−1‖2x

pn = rn + βn pn−1

Algorithm 6.2: Conjugate gradients on atangent space

To further understand how good the intermediate solutions v1, v2, . . .are, it is instructive to determine in which subspace they live. FromAlgorithm 6.2, we find that v1 is a multiple of p0, while v2 is a linearcombination of v1 and p1, hence it is a linear combination of p0 and p1.Likewise, v3 is a linear combination of v2 and p2, hence it is a linearcombination of p0, p1 and p2. Iterating this reasoning, we find that, for We write span(u1, . . . , um) to denote the

subspace spanned by vectors u1, . . . , um.Likewise, span(X) denotes the subspacespanned by the columns of a matrix X.

each n,

vn ∈ span(p0, . . . , pn−1) .

Page 120: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

120 an introduction to optimization on smooth manifolds

Similar scrutiny applied to the H-conjugate directions shows

span(p0, . . . , pn−1) ⊆ span(r0, . . . , rn−1) .

Once again, this time reasoning with the residuals r0, . . . , rn−1, we find It is an exercise to show rn = b − Hvn;this is why it is called the residual.

span(r0, . . . , rn−1) ⊆ span(

b, Hb, H2b, . . . , Hn−1b)

.

All these subspaces are, in fact, equal, as otherwise the algorithmwould terminate. It follows that vn is the minimizer of ‖v − s‖H inthe subspace

span(

b, Hb, H2b, . . . , Hn−1b)

,

called the Krylov subspace.From this last statement, we deduce that vn can be expanded as

vn = a0b + a1Hb + a2H2b + · · ·+ an−1Hn−1b,

for some coefficients a0, . . . , an−1 ∈ R. Furthermore, we are guaranteedthat these coefficients are such that ‖vn − s‖H is minimized. Statedsomewhat differently,

vn =(

a0 I + a1H + a2H2 + · · ·+ an−1Hn−1)

b = pn−1(H)b,

for some polynomial of degree at most n− 1,

pn−1(z) = a0 + a1z + a2z2 + · · ·+ an−1zn−1,

such that ‖pn−1(H)b− s‖H is minimized. Let Pn−1 denote the set ofpolynomials of degree at most n − 1. Since b = Hs, the error vectorobeys

vn − s = pn−1(H)Hs− s = qn(H)s,

where qn(z) = pn−1(z)z− 1 is a polynomial of degree at most n suchthat qn(0) = 1. Let Qn denote the set of such polynomials. Since anypolynomial q ∈ Qn can be written in the form q(z) = p(z)z − 1 forsome p ∈ Pn, it follows that the CG method guarantees

‖vn − s‖H = minp∈Pn−1

‖(p(H)H − I)s‖H = minq∈Qn

‖q(H)s‖H . (6.5)

To turn this conclusion into an interpretable bound on the error aftern CG iterations, we now investigate the effect of applying a polynomialto the operator H. To this end, let u1, . . . , ud be a basis of eigenvectorsof H, orthonormal with respect to 〈·, ·〉x (we write d = dimM forshort). These exist since H is self-adjoint. Furthermore, let λ1, . . . , λd

Page 121: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

second-order optimization algorithms 121

be associated eigenvalues. The unknown vector s can be expanded inthe eigenbasis as

s =d

∑i=1〈ui, s〉x ui.

Hence, t applications of H to this vector yield:

Hts =d

∑i=1

λti 〈ui, s〉x ui.

More generally, applying a polynomial q(H) to s yields:

q(H)s =d

∑i=1

q(λi) 〈ui, s〉x ui.

We conclude that, for any polynomial q,

‖q(H)s‖2H

‖s‖2H

=〈q(H)s, Hq(H)s〉x

〈s, Hs〉x=

∑di=1 q(λi)

2λi 〈ui, s〉2x∑d

i=1 λi 〈ui, s〉2x≤ max

i=1,...,dq(λi)

2,

where the inequality is due to positivity of the eigenvalues. Combiningwith (6.5), it follows that

‖vn − s‖H ≤ ‖s‖H · minq∈Qn

maxi=1,...,d

|q(λi)|. (6.6)

In words: the relative error after n iterations, in the H-norm, is con-trolled by the existence of a polynomial q in Qn with small absolutevalue when evaluated at any of the eigenvalues of H.

Based on these considerations, it follows easily that CG terminatesin n iterations if H has only n distinct eigenvalues. Indeed, it sufficesto consider a polynomial q of degree n with single roots at the distincteigenvalues and such that q(0) = 1. More generally, if λmin and λmax

denote the smallest and largest eigenvalues of H, then κ = λmaxλmin

is thecondition number of H, and it can be shown that Applying Definition 4.12, this shows

at least linear convergence, with rate

log10

(√κ+1√κ−1

). See also Exercise 6.5.‖vn − s‖H ≤ ‖s‖H · 2

(√κ − 1√κ + 1

)n

, (6.7)

so that the error decreases exponentially fast as CG iterates. This isdone by exhibiting an appropriate polynomial q with small absolutevalue over the whole interval [λmin, λmax]: see [TB97, Thm. 38.5] for aclassical construction based on Chebyshev polynomials.

We close with a few comments.

1. That CG terminates in at most dimM iterations is of little practicalrelevance, in part because numerical round-off errors typically pre-empt this (specifically, because numerically the vectors pi are notexactly H-conjugate). However, the progressive improvement of the

Page 122: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

122 an introduction to optimization on smooth manifolds

iterates vn as predicted by (6.7) is borne out empirically, and the roleof the condition number κ is indeed critical. In practice, CG is ter-minated after a maximum number of iterations, or when a certainrelative tolerance is met. For example, we may replace the stopping Recall rn = b− Hvn.

criterion rn = 0 with ‖rn‖x ≤ εtolerance‖b‖x.

2. Reconsidering the bigger picture, we want to keep in mind that thegoal is to minimize f (x): solving the linear system which arises inNewton’s method is only a means to an end. Since CG can produceadequate approximate solutions to the linear system in few itera-tions, it is often beneficial to terminate CG early and proceed withan approximate Newton step: this is at the heart of the develop-ments regarding the trust-region method in the next section.

3. In practice, Hess f (x) may not be positive definite. If such is thecase, we ought to be able to detect it. For example, the innerproduct 〈pn−1, Hpn−1〉x may turn out to be negative. In the trust-region method, such events are monitored and appropriate actionsare taken.

4. Regarding numerical errors again, in Algorithm 6.2, the vectors pi

may slowly build-up a non-tangent component (even though thiscannot happen mathematically). Experience shows that it is some-times beneficial to ensure pn−1 is tangent (up to machine precision)before computing Hpn−1. For embedded submanifolds, this can bedone through orthogonal projection for example. Doing this at ev-ery iteration appears to be sufficient to ensure the other sequences(namely, ri and vi) also remain numerically tangent.

Exercise 6.5. An alternative to CG is to run gradient descent on g(v) (6.3)in the tangent space. Since g is a quadratic, it is easy to check that it hasL-Lipschitz continuous gradient with L = λmax(H). Show that runningvn+1 = vn − 1

L gradg(vn) with v0 = 0 leads to ‖vn − s‖x ≤ e−n/κ‖s‖x

where κ = λmax(H)λmin(H)

. In contrast, CG guarantees ‖vn− s‖H ≤ 2e−n/√

κ‖s‖H .

6.4 Riemannian trust regions

The trust-region method addresses the fundamental shortcomings ofNewton’s method, while preserving its fast local convergence proper-ties under favorable circumstances. The premise is the same: around apoint x, we approximate the pullback f Rx with a simpler model inthe tangent space:

f (Rx(s)) ≈ mx(s) = f (x) + 〈grad f (x), s〉x +12〈Hx(s), s〉x .

Page 123: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

second-order optimization algorithms 123

Here, Hx is allowed to be any self-adjoint linear operator on TxM (infact, we will relax this even further). Of course, the model is a bettermatch for f Rx if Hx is chosen to be the Hessian of f Rx. FromProposition 5.38, we also know that, close to critical points, this isessentially the same as Hess f (x) (exactly the same for second-orderretractions).

In a key departure from Newton’s method however, we do not selectthe step by blindly jumping to the critical point of the model (whichmight not even exist). Rather, we insist on reducing the value of mx.Furthermore, since the model is only a local approximation of the pull-back, we only trust it in a ball around the origin in the tangent space:the trust region. Specifically, at the iterate xk, we define the model

mk(s) = f (xk) + 〈grad f (xk), s〉xk+

12〈Hk(s), s〉xk

(6.8)

for some operator Hk : TxkM→ TxkM to be specified, and we pick thetentative next iterate x+k as Rxk (sk) such that the step sk approximatelysolves the trust-region subproblem:

mins∈TxkM

mk(s) subject to ‖s‖xk ≤ ∆k, (6.9)

where ∆k is the radius of the trust region at iteration k. Specific re-quirements are discussed later, but at the very least mk(sk) shouldbe smaller than mk(0). The step is accepted (xk+1 = x+k ) or rejected(xk+1 = xk) based on the performance of x+k as judged by the actualcost function f , compared to the expected improvement as predictedby the model. Depending on how the two compare, the trust-regionradius may also be adapted. See Algorithm 6.3 for details; it is calledthe Riemannian trust-region method (RTR).

Running RTR, we expect to generate a point x = xk such that

‖grad f (x)‖x ≤ εg and Hess f (x) −εH Id, (6.13)

where Id is the identity operator on TxM, and εH may be infinite ifwe only care about first-order optimality conditions. One of the maingoals of this chapter is to show that, regardless of initialization, undersuitable assumptions, RTR provides such a point in a bounded numberof iterations. Of course, we must first specify conditions on the mapsHk, requirements on how well the trust-region subproblems are to besolved, and regularity conditions on the pullbacks f Rxk . We do thisin the subsections below.

6.4.1 Conditions on the model

The model mxk is determined by a choice of map Hk from TxkM toitself. The simpler this map, the easier it may be to solve the trust-region subproblem (6.9). In choosing Hk, we aim to strike a balance

Page 124: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

124 an introduction to optimization on smooth manifolds

Parameters: maximum radius ∆ > 0, threshold ρ′ ∈ (0, 1/4)

Input: x0 ∈ M, ∆0 ∈ (0, ∆]

For k = 0, 1, 2, . . .

Pick a map Hk : TxkM→ TxkM to define mk (6.8).

Approximately solve the subproblem (6.9), yielding sk.

The tentative next iterate is x+k = Rxk (sk).

Compute the ratio of actual to model improvement:

ρk =f (xk)− f (x+k )

mk(0)−mk(sk). (6.10)

Accept or reject the tentative next iterate:

xk+1 =

x+k if ρk > ρ′ (accept),

xk otherwise (reject).(6.11)

Update the trust-region radius:

∆k+1 =

14 ∆k if ρk <

14 ,

min(2∆k, ∆) if ρk >34 and ‖sk‖xk = ∆k,

∆k otherwise.

(6.12)

Algorithm 6.3: Riemannian trust-regionmethod (RTR)

Page 125: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

second-order optimization algorithms 125

between model accuracy, computational efficiency, and convenience.With the goal (6.13) determined by εg, εH > 0 in mind, we introducethe following requirements.

For iterations with large gradient, the conditions are particularlymild. In essence, this is because for such iterations the main focus ison reducing the gradient norm, which can be done with any first-orderaccurate model.

A4. For all iterations k such that ‖grad f (xk)‖xk > εg, we require that:

1. Hk is radially linear, that is:

∀s ∈ TxkM, α ≥ 0, Hk(αs) = αHk(s); and (6.14)

2. Hk is uniformly bounded, that is, there exists c0 ≥ 0, independent of k, See Corollary 10.41.

such that

∀s ∈ TxkM,∣∣ 〈s, Hk(s)〉xk

∣∣ ≤ c0‖s‖2xk

. (6.15)

An extreme case consists in selecting Hk = L · Id for some L > 0.This is convenient, computationally inexpensive, and allows to solvethe subproblem (6.9) in closed form: RTR then takes gradient steps.However, the model does not capture second-order information at all,which may slow down convergence. Alternatively, a convenient, radi-ally linear (but not linear) map Hk can be obtained from finite differ-ence approximations of the Hessian using gradients, see Section 10.6.Naturally, if it is practical to use the Hessian of f (or that of f Rxk )itself for Hk, then the enhanced accuracy of the model is a strong in-centive to do so.

For iterations with small gradient, if there is a desire to reach ap-proximate satisfaction of second-order necessary optimality conditions(εH < ∞), we need the model to be (at least approximately) second-order accurate.

A5. For all iterations k such that ‖grad f (xk)‖xk ≤ εg, we require Hk to belinear and self-adjoint. Furthermore, there exists c1 ≥ 0, independent of k,such that

‖Hess( f Rxk )(0)− Hk‖ ≤c1∆k

3, (6.16)

where ‖ · ‖ denotes the operator norm.

The operator norm of a self-adjoint operator is the largest magnitudeof any of its eigenvalues. The convergence results below guarantee Hk

is, eventually, almost positive semidefinite. This is only meaningful ifHk is close to Hess f (xk) in operator norm. In turn, Hess f (xk) is equalto Hess( f Rxk )(0) if the retraction is second order (and for a general

Page 126: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

126 an introduction to optimization on smooth manifolds

retraction they are close if xk is nearly critical): see Propositions 5.38

and 5.39 (and Exercise 10.67 for first-order retractions). Overall, theconceptually simplest situation is that for which we use a second-orderretraction and a quadratically-accurate model, in which case:

Hk = Hess( f Rxk )(0) = Hess f (xk). (6.17)

Then, A5 holds with c1 = 0.

6.4.2 Requirements on solving the subproblem

Once a model is selected through a choice of map Hk, the key (andtypically most computationally expensive) part of an iteration of RTRis to solve the trust-region subproblem (6.9) approximately, producinga step sk. Numerous efficient algorithms have been proposed over thelast few decades: we discuss one that is particularly well suited to theRiemannian case in detail in Section 6.5. For now, we merely specifyminimum requirements on how well the task ought to be solved.

We require sufficient decrease in the value of the model, similar tobut different from the analysis of Riemannian gradient descent in Sec-tion 4.3 which required sufficient decrease in the value of the actualcost function. So long as first-order criticality has not been approxi-mately attained, sufficient decrease is defined with respect to the gra-dient norm.

A6. There exists c2 > 0 such that, for all k with ‖grad f (xk)‖xk > εg, thestep sk satisfies

mk(0)−mk(sk) ≥ c2 min(

∆k,εg

c0

)εg, (6.18)

where c0 is the constant in A4.

This condition is easily satisfied by computing the so-called Cauchypoint: the minimizer of the subproblem when restricted to the negativegradient direction. Given the gradient at xk, it can be computed withone call to Hk.

Exercise 6.6. The Cauchy point is of the form sCk = −tgrad f (xk) for some

t ≥ 0. Writing gk = grad f (xk) for convenience, under A4, show that

t =

min

(‖gk‖2

xk〈gk ,Hk(gk)〉xk

, ∆k‖gk‖xk

)if 〈gk, Hk(gk)〉xk

> 0,

∆k‖gk‖xk

otherwise.

Furthermore, show that setting sk = sCk satisfies A6 with c2 = 1

2 .

Once the gradient is small, if εH < ∞, it becomes necessary to focuson second-order optimality conditions.

Page 127: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

second-order optimization algorithms 127

A7. There exists c3 > 0 such that, for all k with ‖grad f (xk)‖xk ≤ εg andλmin(Hk) < −εH , the step sk satisfies

mk(0)−mk(sk) ≥ c3∆2kεH . (6.19)

(Hk has real eigenvalues owing to A5.)

This condition too can be satisfied with explicit, finite procedures, bycomputing eigensteps: moving up to the boundary along a directionwhich certifies that the smallest eigenvalue of Hk is strictly smallerthan −εH .

Exercise 6.7. Under A5, if λmin(Hk) < −εH , verify that there exists atangent vector u ∈ TxkM with

‖u‖xk = 1, 〈u, grad f (xk)〉xk≤ 0, and 〈u, Hk(u)〉xk

< −εH .

Show that sk = ∆ku (called an eigenstep) satisfies A7 with c3 = 12 .

Eigensteps are rarely (if ever) computed in practice. More pragmati-cally, the existence of eigensteps serves to show that a global minimizerof the subproblem also satisfies A7.

Corollary 6.8. If Hk is linear and self-adjoint for every iteration k, then set-ting sk to be a global minimizer of the subproblem (6.9) at every iterationsatisfies both A6 and A7 with c2 = c3 = 1

2 . Likewise, setting sk to achieve atleast a fraction α ∈ (0, 1] of the optimal model decrease satisfies the assump-tions with c2 = c3 = α

2 .

6.4.3 Regularity conditions

As we did when analyzing the Riemannian gradient method, we re-quire that the cost function be lower-bounded.

A8. There exists flow ∈ R such that f (x) ≥ flow for all x ∈ M.

Likewise, we still require a first-order, Lipschitz-type condition onthe pullbacks of f for the given retraction R. The set Sg is specifiedlater on.

A9. For a given subset Sg of the tangent bundle TM, there exists a constant See Corollary 10.48 and Exercises 10.51

and 10.52.Lg > 0 such that, for all (x, s) ∈ Sg,

f (Rx(s)) ≤ f (x) + 〈grad f (x), s〉x +Lg

2‖s‖2

x.

In addition to these, we now also include a second-order Lipschitz-type condition. WhenM is a linear space and Rx(s) = x + s, this oneholds in particular if Hess f (x) is Lipschitz continuous with constantLH . The set SH is specified later on; it is empty if εH = ∞.

Page 128: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

128 an introduction to optimization on smooth manifolds

A10. For a given subset SH of the tangent bundle TM, there exists a constant See Corollary 10.50 and Exercise 10.79.

LH > 0 such that, for all (x, s) ∈ SH ,

f (Rx(s)) ≤ f (x) + 〈grad f (x), s〉x +12〈s, Hess( f Rx)(0)[s]〉x +

LH6‖s‖3

x.

We note that, in particular, the sets Sg and SH will not be requiredto contain any tangent vectors of norm larger than ∆, since this isthe largest trust-region radius ever considered. This is useful notablywhen the retraction is not globally defined (or well behaved). Fur-thermore, the root points of elements in Sg and SH are only iteratesx0, x1, x2, . . . generated by RTR. This can be helpful when the iterates A sublevel set of f is a set of the form

x ∈ M : f (x) ≤ α for some real α.are easily shown to lie in a compact subset of M, for example if thesublevel sets of f are compact.

6.4.4 Iteration complexity

Given tolerances εg > 0 and εH > 0, we show that RTR producesan iterate xk which satisfies the following termination conditions in abounded number of iterations:

‖grad f (xk)‖xk ≤ εg and λmin(Hk) ≥ −εH . (6.20)

We stress that εH may be set to infinity if only first-order optimalityconditions are targeted. We separate the theorem statement in twoscenarios accordingly. See the discussion around eq. (6.17) to relatethe guarantees on Hk to the eigenvalues of Hess f (xk).

Following the standard proofs for trust regions in Euclidean space,the proof is based on three supporting lemmas which we state andprove below. In a nutshell, they show:

1. The trust-region radius cannot become arbitrarily small, essentiallybecause regularity of the cost function ensures the model mk is suf-ficiently accurate for small steps, which ultimately prevents trust-region radius reductions beyond a certain point.

2. Combining the latter with our sufficient decrease assumptions, suc-cessful steps initiated from iterates with large gradient producelarge decrease in the cost function value (and similarly at iterateswhere Hk has a “large” negative eigenvalue), but the total amountof cost decrease is bounded by f (x0)− flow, so that there cannot bearbitrarily many such steps.

3. The number of successful steps as above is at least a fraction of thetotal number of iterations, because a large number of consecutivefailures would eventually violate the fact that the trust-region radiusis lower-bounded: every so often, there must be a successful step.

We now state the main theorem.

Page 129: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

second-order optimization algorithms 129

Theorem 6.9. Let S = (x0, s0), (x1, s1), . . . be the pairs of iterates andtentative steps generated by RTR under A4, A5, A6, A7 and A8. Further-more, assume A9 and A10 hold with constants Lg and LH on the sets

Sg =(xk, sk) ∈ S : ‖grad f (xk)‖xk > εg

, and

SH =(xk, sk) ∈ S : ‖grad f (xk)‖xk ≤ εg and λmin(Hk) < −εH

.

Define

λg =14

min(

1c0

,c2

Lg + c0

)and λH =

34

c3

LH + c1. (6.21)

We consider two scenarios, depending on whether second-order optimalityconditions are targeted or not:

1. If εg ≤ ∆0λg

and εH = ∞, there exists t with ‖grad f (xt)‖xt ≤ εg and

t ≤ 32

f (x0)− flowρ′c2λg

1ε2

g+

12

log2

(∆0

λgεg

)= O

(1ε2

g

). (6.22)

(In this scenario, A5, A7 and A10 are irrelevant.)

2. If εg ≤ ∆0λg

, εg ≤ c2c3

λHλ2

gand εH < c2

c31

λg, there exists t′ ≥ t such that

‖grad f (xt′)‖xt′ ≤ εg and λmin(Ht′) ≥ −εH with

t′ ≤ 32

f (x0)− flow

ρ′c3λ21

ε2εH+

12

log2

(∆0

λε

)= O

(1

ε2εH

), (6.23)

where (λ, ε) = (λg, εg) if λgεg ≤ λHεH , and (λ, ε) = (λH , εH) other-wise.

Since the algorithm is a descent method, f (xt′) ≤ f (xt) ≤ f (x0).

This first lemma lower-bounds the trust-region radius.

Lemma 6.10. Under the assumptions of Theorem 6.9, if x0, . . . , xn are iter-ates generated by RTR such that none of them satisfy the termination condi-tions (6.20), then

∆k ≥ min(∆0, λgεg, λHεH) (6.24)

for k = 0, . . . , n.

Proof. Our goal is to show that if ∆k is small, then ρk must be large. Bythe mechanism of RTR (specifically, eq. (6.12)), this guarantees ∆k can-not decrease further. By definition of ρk (6.10), using mk(0) = f (xk),

1− ρk = 1−f (xk)− f (Rxk (sk))

mk(0)−mk(sk)=

f (Rxk (sk))−mk(sk)

mk(0)−mk(sk).

Page 130: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

130 an introduction to optimization on smooth manifolds

Consider an iteration k such that ‖grad f (xk)‖xk > εg. Then, thenumerator is upper-bounded owing to A9 and A4:

f (Rxk (sk))−mk(sk)

= f (Rxk (sk))− f (xk)− 〈grad f (xk), sk〉xk− 1

2〈Hk(sk), sk〉xk

≤Lg + c0

2‖sk‖2

xk.

Furthermore, the denominator is lower-bounded by A6:

mk(0)−mk(sk) ≥ c2 min(

∆k,εg

c0

)εg.

Hence, using ‖sk‖xk ≤ ∆k,

1− ρk ≤12

Lg + c0

c2εg

∆2k

min(

∆k, εgc0

) .

If ∆k ≤εgc0

, the last factor is equal to ∆k. If additionally ∆k ≤c2εg

Lg+c0,

then 1− ρk ≤ 12 . Using (6.21), we summarize this as: if ∆k ≤ 4λgεg,

then ρk ≥ 12 and the mechanism of RTR implies ∆k+1 ≥ ∆k.

Now, consider k such that ‖grad f (xk)‖xk ≤ εg and λmin(Hk) < −εH .Then, the numerator is upper-bounded by A10, A5 and ‖sk‖xk ≤ ∆k:

f (Rxk (sk))−mk(sk)

= f (Rxk (sk))− f (xk)− 〈grad f (xk), sk〉xk− 1

2⟨Hess( f Rxk )(0)[sk], sk

⟩xk

+12⟨(Hess( f Rxk (0)− Hk)[sk], sk

⟩xk

≤ LH + c1

6∆3

k ,

and the denominator is lower-bounded by A7:

mk(0)−mk(sk) ≥ c3∆2kεH . (6.25)

Combining, we get

1− ρk ≤LH + c1

6c3εH∆k.

Again, considering (6.21), we find that if ∆k ≤ 4λHεH , then ρk ≥ 12 and

as a result ∆k+1 ≥ ∆k.We have thus established that, if ∆k ≤ 4 min(λgεg, λHεH), then

∆k+1 ≥ ∆k. Since RTR does not reduce the radius by more than afactor four per iteration, the claim follows.

This second lemma upper-bounds the total number of successful(that is, accepted) steps before termination conditions are met.

Page 131: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

second-order optimization algorithms 131

Lemma 6.11. Under the assumptions of Theorem 6.9, if x0, . . . , xn are iter-ates generated by RTR such that none of them satisfy the termination condi-tions (6.20), define the set of successful steps among those as

Sn =

k ∈ 0, . . . , n : ρk > ρ′

,

and let Un designate the unsuccessful steps, so that Sn and Un form apartition of 0, . . . , n. In the first scenario of Theorem 6.9, the number ofsuccessful steps is bounded as

|Sn| ≤f (x0)− flow

ρ′c2

1λgε2

g. (6.26)

Similarly, in the second scenario we have

|Sn| ≤f (x0)− flow

ρ′c3

1min(λgεg, λHεH)2εH

. (6.27)

Proof. Clearly, if k ∈ Un, then f (xk) = f (xk+1). On the other hand,if k ∈ Sn, then the definition of ρk (6.10) combined with A6 and A7

ensures:

f (xk)− f (xk+1) = ρk(mk(0)−mk(sk)

)≥ ρ′min

(c2 min

(∆k,

εg

c0

)εg , c3∆2

kεH

).

By Lemma 6.10 and the assumption λgεg ≤ ∆0, it holds that

∆k ≥ min(λgεg, λHεH

).

Furthermore, using λg ≤ 1/c0 reveals that

min(∆k, εg/c0) ≥ min(∆k, λgεg) ≥ min(λgεg, λHεH

).

Hence,

f (xk)− f (xk+1) ≥ ρ′min(

c2λgε2g, c2λHεgεH , c3λ2

gε2gεH , c3λ2

Hε3H

).

(6.28)

In the first scenario, εH = ∞ and this simplifies to:

f (xk)− f (xk+1) ≥ ρ′c2λgε2g.

Sum over iterations up to n and use A1 (lower-bounded f ):

f (x0)− flow ≥ f (x0)− f (xn+1) = ∑k∈Sn

f (xk)− f (xk+1) ≥ |Sn|ρ′c2λgε2g.

Hence,

|Sn| ≤f (x0)− flow

ρ′c2λg

1ε2

g.

Page 132: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

132 an introduction to optimization on smooth manifolds

Similarly, in the second scenario, starting over from (6.28) and as-suming both c3λ2

gε2gεH ≤ c2λHεgεH and c3λ2

gε2gεH ≤ c2λgε2

g (whichis equivalent to εg ≤ c2λH/c3λ2

g and εH ≤ c2/c3λg), the same tele-scoping sum yields

f (x0)− flow ≥ |Sn|ρ′c3 min(λgεg, λHεH)2εH .

Solve for |Sn| to conclude.

This third and last lemma lower-bounds the number of successfulsteps before termination as a fraction of the total number of iterationsbefore termination.

Lemma 6.12. Under the assumptions of Theorem 6.9, if x0, . . . , xn are iter-ates generated by RTR such that none of them satisfy the termination condi-tions (6.20), using the notation Sn and Un of Lemma 6.11, it holds that

|Sn| ≥23(n + 1)− 1

3max

(0, log2

(∆0

λgεg

), log2

(∆0

λHεH

)). (6.29)

Proof. The proof rests on the lower bound for ∆k from Lemma 6.10.For all k ∈ Sn, it holds that ∆k+1 ≤ 2∆k. For all k ∈ Uk, it holds that∆k+1 ≤ 2−2∆k. Hence,

∆n ≤ 2|Sn |2−2|Un |∆0.

On the other hand, Lemma 6.10 gives

∆n ≥ min(∆0, λgεg, λHεH

).

Combine, divide by ∆0 and take the log in base 2:

|Sn| − 2|Un| ≥ min(

0, log2

(λgεg

∆0

), log2

(λHεH

∆0

)).

Use |Sn|+ |Un| = n + 1 to conclude.

With these lemmas available, the main theorem follows easily.

Proof of Theorem 6.9. For each scenario, Lemmas 6.11 and 6.12 providean upper bound and a lower bound on |Sn|, and it suffices to com-bine them to produce an upper bound on n. For example, in the firstscenario, if n is such that none of the iterates x0, . . . , xn have gradientsmaller than εg, then

n ≤ 32

f (x0)− flowρ′c2

1λgε2

g+

12

log2

(∆0

λgεg

)− 1.

Thus, by contraposition, after a number of iterations larger than theright hand side, an iterate with sufficiently small gradient must havebeen produced. The same argument applies in the second scenario.

Page 133: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

second-order optimization algorithms 133

6.4.5 Practical aspects

We list some practical considerations in a nutshell:

1. A typical value for ρ′ is 110 .

2. Possible default settings for ∆ are√

dimM or the diameter of themanifold if it is compact; and ∆0 = 1

8 ∆.

3. Hk is often taken to be Hess f (xk) when available, regardless ofwhether or not the retraction is second order. This does not affectlocal convergence rates since close to critical points the distinctionbetween first- and second-order retraction is irrelevant for us.

4. Practical stopping criteria for RTR typically involve an upper boundon the total number of iterations and a threshold on the gradi-ent norm such as: terminate if ‖grad f (xk)‖xk ≤ εg. Typically,εg = 10−8‖grad f (x0)‖x0 is a good value. It is rare that one wouldexplicitly check the eigenvalues of Hess f (xk) before termination.

5. Computing ρk (6.10) can be delicate close to convergence, as it in-volves the computation of f (xk)− f (x+k ): a difference of two poten-tially large numbers that could be dangerously close to one another.Specifically, say we compute f (xk) and we store it in memory inthe variable f1. Even if f (xk) is computed with maximal accuracy,it must eventually be rounded to one of the real numbers that areexactly representable in, say, double precision, that is, on 64 bitsfollowing the IEEE standard [IEE08]. This standard guarantees arelative accuracy of εM ≈ 10−16, so that f1 = f (xk)(1 + ε1) with|ε1| ≤ εM. This is a relative accuracy guarantee since

| f1 − f (xk)|| f (xk)|

≤ εM.

(In practice, computing f (xk) would involve further errors leadingto a larger right-hand side.) Likewise, f2 = f (x+k )(1 + ε2) with|ε2| ≤ εM.

Assuming the difference between f1 and f2 is exactly representablein memory,2 in computing the numerator for ρk we truly compute 2 By Sterbenz’s theorem, this is true if

f1, f2 are within a factor 2 of each other.

f1 − f2 = f (xk)− f (x+k ) + ε1 f (xk)− ε2 f (x+k ).

Unfortunately, the relative error can be catastrophic. Indeed,

|( f1 − f2)− ( f (xk)− f (x+k ))|| f (xk)− f (x+k )|

≤ εM| f (xk)|+ | f (x+k )|| f (xk)− f (x+k )|

.

If f (xk) and f (x+k ) are large in absolute value, yet their difference isvery small (which may happen near convergence), the relative error

Page 134: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

134 an introduction to optimization on smooth manifolds

on the computation of the numerator of ρk may make it useless. Forexample, with f (xk) = 104 and f (xk)− f (x+k ) = 10−12, the relativeerror bound is close to 1, meaning none of the digits in the computednumerator can be trusted. In turn, this can lead to wrong decisionsin RTR regarding step rejections and trust-region radius updates.

No such issues plague the denominator, provided it is appropriatelycomputed. Indeed,

mk(0)−mk(sk) = − 〈sk, grad f (xk)〉xk− 1

2〈sk, Hk(sk)〉xk

. (6.30)

Using the right-hand side for computation, if the step sk is smalland the gradient is small, then we combine two small real numbers,which is not as dangerous as computation of the left-hand side.

A standard fix [CGT00, §17.4.2] to these numerical issues is to reg-ularize the computation of ρk, as

ρk =f (xk)− f (x+k ) + δk

− 〈sk, grad f (xk)〉xk− 1

2 〈sk, Hk(sk)〉xk+ δk

, (6.31)

with

δk = max(1, | f (xk)|)εMρreg. (6.32)

The parameter ρreg can be set to 103 for example. When both thetrue numerator and denominator of ρk become very small near con-vergence, the regularization nudges (6.31) toward 1, which leads tostep acceptance as expected. This is, of course, merely a heuristic to(try to) address an inescapable limitation of inexact arithmetic.

6. Care should be put in implementations to minimize the number ofcalls to the operator Hk. For example, in the subproblem solverdescribed in Section 6.5 below, exactly one call to this operator isneeded per iteration, and furthermore the vector Hk(sk) is a by-product of that algorithm (when Hk is linear), so that one can avoidan explicit computation of it to evaluate the denominator of ρk.

6.5 The trust-region subproblem: truncated CG

The trust-region subproblem (6.9) consists in approximately solving aproblem of the form

mins∈TxM

m(s) =12〈s, Hs〉x − 〈b, s〉x subject to ‖s‖x ≤ ∆, (6.33)

with a map H : TxM→ TxM, a tangent vector b ∈ TxM and a radius∆ > 0. At iteration k of RTR, these objects are H = Hk, b = −grad f (xk)

and ∆ = ∆k.

Page 135: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

second-order optimization algorithms 135

We consider the important particular case where H is a linear, self-adjoint operator (for example, Hk = Hess f (xk).) Then, m : TxM→ R

is a quadratic function. Aside from the constraint ‖s‖x ≤ ∆, if His furthermore positive definite, then we know from Section 6.3 thatconjugate gradients (CG, Algorithm 6.2) can be used to compute aglobal minimizer of m: simply compare equations (6.3) and (6.33).

The general idea of the truncated CG method (tCG), Algorithm 6.4,is to run CG on the cost function (6.33) while

1. Keeping an eye out for signs that H is not positive definite;

2. Checking whether we left the trust region; and

3. Looking for opportunities to terminate early even if neither of thoseevents happen.

If the inner products 〈pi, Hpi〉x are positive for i = 1, . . . , n− 2, then,since p1, . . . , pn−2 are linearly independent, they form a basis for a sub-space of TxM, and H is positive definite on that subspace. Thus, upto that point, all the properties of CG hold. If, however, upon comput-ing pn−1 we determine that 〈pn−1, Hpn−1〉x is non-positive, then this isproof that H is not positive definite. In such situation, tCG computesthe next step vn by moving away from vn−1 along pn−1 so as to mini-mize the model m, that is, tCG sets vn = vn−1 + tpn−1 with t such thatm(vn) is minimized, under the constraint ‖vn‖x ≤ ∆. There are twocandidates for the value of t, namely, the two roots of the quadratic

‖vn−1 + tpn−1‖2x − ∆2

= ‖pn−1‖2xt2 + 2t 〈vn−1, pn−1〉x + ‖vn−1‖2

x − ∆2. (6.34)

The product of these roots is negative since ‖vn−1‖x < ∆, hence oneroot is positive and the other is negative. It can be shown that selectingthe positive root leads to the smallest value in the model [ABG07, §3].

Now assuming 〈pn−1, Hpn−1〉x is positive, we consider the tenta-tive new step v+n−1 = vn−1 + αn pn−1. If this step lies outside thetrust region, it seems at first that we face a dilemma. Indeed, a pri-ori, it might happen that later iterates re-enter the trust region, inwhich case it would be unwise to stop. Fortunately, this cannot hap-pen. Specifically, it can be shown that steps grow in norm, so thatif one iterate leaves the trust region, then no future iterate re-entersit [CGT00, Thm. 7.5.1], [NW06, Thm. 7.3]. Thus, it is reasonable to actnow: tCG proceeds by reducing how much we move along pn−1, set-ting vn = vn−1 + tpn−1 instead with t ≥ 0 being the largest value thatrespects the trust-region constraint. This corresponds exactly to thepositive root of the quadratic in eq. (6.34). In the unlikely event thatv+n−1 lies exactly on the boundary of the trust region, it makes sense to

Page 136: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

136 an introduction to optimization on smooth manifolds

stop by the same argument: this is why we test for ‖v+n−1‖x ≥ ∆ witha non-strict inequality.

Finally, if neither non-positive curvature is encountered nor do thesteps leave the trust region, we rely on a stopping criterion to terminatetCG early. The principle is that we should only work hard to solve thesubproblem when RTR is already close to convergence. Specifically,with r0 = b = −grad f (xk), the chosen stopping criterion allows tCGto terminate if

‖rn‖x ≤ ‖grad f (xk)‖xk ·min(‖grad f (xk)‖θxk

, κ). (6.35)

It is only when the gradient of f is small that tCG puts in the extraeffort to reach residuals as small as ‖grad f (xk)‖1+θ

xk. This is key to

obtain superlinear convergence, of order min(1 + θ, 2) (in particular,quadratic convergence for θ = 1), see [ABG07, Thm. 4.13]. Intuitively,superlinear convergence occurs because, close to a critical point x withpositive definite Hessian, with Hk = Hess f (xk), steps produced bytCG are increasingly similar to Newton steps.

The comments at the end of Section 6.3 regarding how to run CGin practice apply to tCG as well. Specifically, it is common to set ahard limit on the maximum number of iterations, and it is beneficialto ensure tangent vectors remain tangent numerically.

We note in passing that tCG can be preconditioned, just like regu-lar CG [CGT00, §5.1.6]: this can improve performance dramatically.In a precise sense, preconditioning tCG is equivalent to changing theRiemannian metric [MS16].

Finally, it is good to know that the trust-region subproblem, de-spite being non-convex, can be solved to global optimality efficiently.See [Vav91] and [CGT00, §7] for pointers to a vast literature.

Exercise 6.13. Show that v1 is the Cauchy point. Since iterates monotoni-cally improve m(vn), this implies tCG guarantees A6 with c2 = 1

2 .

Exercise 6.14. Show that if grad f (x) = 0, then tCG returns immediately,even if Hk has negative eigenvalues. This shows that tCG, as set up here, doesnot guarantee A7. See [CGT00, §7.5.4] for a fix based on Lanczos iterations.

Exercise 6.15. In Algorithm 6.4, show that Hs can be computed as indicated.

6.6 Local convergence

Under suitable assumptions, once iterates of RTR are close enough toa critical point x where Hess f (x) is positive definite, the algorithmconverges superlinearly provided the subproblem is solved with suf-ficient accuracy; tCG provides the necessary assurances. See [ABG07]or [AMS08, §7].

Page 137: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

second-order optimization algorithms 137

Parameters: κ ≥ 0, θ ∈ [0, 1], e.g., κ = 110 , θ = 1

Input: self-adjoint H on TxM, b ∈ TxM and radius ∆ > 0

Output: approximate minimizer of m(s) = 12 〈s, Hs〉x − 〈b, s〉x

subject to ‖s‖x ≤ ∆, and Hs as a by-product

Set v0 = 0, r0 = b, p0 = r0

For n = 1, 2, . . .

Compute Hpn−1 (this is the only call to H)

Compute 〈pn−1, Hpn−1〉xαn = ‖rn−1‖2

x〈pn−1,Hpn−1〉x

v+n−1 = vn−1 + αn pn−1

If 〈pn−1, Hpn−1〉x ≤ 0 or ‖v+n−1‖x ≥ ∆

Set vn = vn−1 + tpn−1 with t ≥ 0 such that ‖vn‖x = ∆

(t is the pstve root of a quadratic, ‖vn−1 + tpn−1‖2x = ∆2.)

output s = vn and Hs = b− rn−1 + tHpn−1

Else

vn = v+n−1

rn = rn−1 − αnHpn−1

If ‖rn‖x ≤ ‖r0‖x min(‖r0‖θx, κ)

output s = vn and Hs = b− rn

βn = ‖rn‖2x

‖rn−1‖2x

pn = rn + βn pn−1

Algorithm 6.4: tCG: truncated conjugategradients on a tangent space

Page 138: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

138 an introduction to optimization on smooth manifolds

6.7 Numerically checking a Hessian

In Section 4.8, we considered a numerical method to check whether In Manopt, these tests are implementedas checkhessian.code to compute the Riemannian gradient is correct. Similarly, we

now describe a method to check code for the Riemannian Hessian.The two first points to check are:

1. That Hess f (x) indeed maps TxM to TxM linearly, and

2. That it is indeed a self-adjoint operator.

This can be done numerically by generating a random x ∈ M and tworandom tangent vectors u, v ∈ TxM, computing both Hess f (x)[u] andHess f (x)[v], verifying that these are tangent, checking that

Hess f (x)[au + bv] = aHess f (x)[u] + bHess f (x)[v]

for some random scalars a, b, and finally confirming that

〈u, Hess f (x)[v]〉x = 〈Hess f (x)[u], v〉x

(all up to machine precision).This being secured, consider the Taylor expansion (5.27): if R is a

second-order retraction, or if x is a critical point, then

f (Rx(tv)) = f (x) + t 〈grad f (x), v〉x +t2

2〈Hess f (x)[v], v〉x + O(t3).

(6.36)

This says that, under the stated conditions,

E(t) ,∣∣∣∣ f (Rx(tv))− f (x)− t 〈grad f (x), v〉x −

t2

2〈Hess f (x)[v], v〉x

∣∣∣∣ = O(t3).

Taking the logarithm on both sides, we find that log(E(t)) must growapproximately linearly in log(t), with a slope of three (or more) whent is small:

log(E(t)) ≈ 3 log(t) + constant.

This suggests a procedure to check the Hessian numerically:

1. Check that the gradient is correct (Section 4.8);

2. Run the preliminary checks (tangency, linearity and symmetry);

3. If using a second-order retraction, generate a random point x ∈ M;otherwise, find an (approximate) critical point x ∈ M, for exampleusing Riemannian gradient descent;

4. Generate a random tangent vector v ∈ TxM with ‖v‖x = 1;

Page 139: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

second-order optimization algorithms 139

5. Compute f (x), 〈grad f (x), v〉x and 〈Hess f (x)[v], v〉x;

6. Compute E(t) for several values of t logarithmically spaced on theinterval [10−8, 100];

7. Plot E(t) as a function of t, in a log–log plot;

8. Check that the plot exhibits a slope of three (or more) over severalorders of magnitude.

Again, we do not expect to see a slope of three over the whole range,but we do expect to see this over a range of values of t covering at leastone or two orders of magnitude. Of course, the test is less conclusiveif it has to be run at a critical point. Even if computing second-orderretractions turns out to be expensive for the manifold at hand, its usehere as part of a diagnostics tool is worthwhile: we are free to use anyother retraction for the optimization algorithm.

6.8 Notes and references

First- and second-order necessary optimality conditions are furtherstudied in [YZS14, BH18], notably to include the case of constrainedoptimization on manifolds. Newton’s method on manifolds is ana-lyzed in most treatments of optimization on manifolds; see for exam-ple [AMS08, §6] and the many references therein, including [ADM+

02,Man02]. The reference material for the discussion of conjugate gradi-ents in Section 6.3 is [TB97, Lect. 38].

Trust-region methods in Euclidean space are discussed in great de-tail by Conn et al.3; see also [NW06] for a shorter treatment. Absil 3 A.R. Conn, N.I.M. Gould, and P.L.

Toint. Trust-region methods. MPS-SIAMSeries on Optimization. Society for In-dustrial and Applied Mathematics, 2000

et al.4 introduced the Riemannian version of the trust-region method.

4 P.-A. Absil, C. G. Baker, and K. A. Gal-livan. Trust-region methods on Rieman-nian manifolds. Foundations of Computa-tional Mathematics, 7(3):303–330, 2007

Their analysis also appears in [AMS08, §7]. The global convergenceanalysis which shows RTR computes approximate first- and second-order critical points in a bounded number of iterations is mostly thesame as in [BAC18], with certain parts appearing verbatim in that ref-erence (in particular, the proofs of Lemmas 6.11 and 6.12). It is itselfbased on a similar analysis of the Euclidean version proposed by Car-tis et al. [CGT12], who also show examples for which the worst-case isattained.

To some extent, the trust-region method is a fix of Newton’s methodto make it globally convergent. At its core, it is based on putting a hardlimit on how far one trusts a certain quadratic model for the (pullbackof the) cost function. Alternatively, one may resort to a soft limit byadding a cubic regularization term to a quadratic model. In the sameway that the trust-region radius is updated adaptively, the weight ofthe regularization term can also be updated adaptively, leading to theadaptive regularization with cubics (ARC) method. In the Euclidean case,

Page 140: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

140 an introduction to optimization on smooth manifolds

it dates back to seminal work by Griewank [Gri81] and Nesterov andPolyak [YP06]. Cartis et al. give a thorough treatment including com-plexity bounds [CGT11b, CGT11a]. Qi proposed a first extension ofARC to Riemannian manifolds [Qi11]. An iteration complexity analy-sis akin to the one we give here for RTR appears in [ZZ18, ABBC20].ARC is an optimal method for cost functions with Lipschitz continu-ous gradient and Hessian.

Page 141: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

7Embedded submanifolds: examples

In this chapter, we describe several embedded submanifolds of linearspaces that occur in applications, and we derive the relevant geometrictools that are useful to optimize over them.

We lead with first-order tools as introduced in Chapter 3, and wefollow up with second-order tools as described in Chapter 5. Thiswhole chapter is meant to be consulted periodically for illustration,while reading those chapters. Pointers to implementations in the tool-box Manopt are also included. Similar implementations are or will manopt.org [BMAS14]

pymanopt.org [TKW16]manoptjl.org [Ber19]

become available in PyManopt and Manopt.jl as well.Remember from Chapter 3 that products of embedded submani-

folds are embedded submanifolds, and that the geometric toolbox of In Manopt, see productmanifold andpowermanifold.a product is easily obtained from the geometric toolboxes of its parts.

In particular, given a manifold M, it is straightforward to work withtuples of k elements onM, that is, withMk =M× · · · ×M.

7.1 Euclidean spaces as manifolds

Optimization on manifolds generalizes unconstrained optimization:the tools and algorithms we develop here apply just as well to opti-mization on linear spaces. For good measure, we spell out the relevantgeometric tools.

Let E be a real linear space, such as Rn, Rm×n, Cn, Cm×n, etc.: see In Manopt, see euclideanfactory andeuclideancomplexfactory.Section 3.1. We think of E as a (linear) manifold. Its dimension as a

manifold is the same as its dimension as a linear space. All tangentspaces are the same: for x ∈ E ,

TxE = E . (7.1)

An obvious (and reasonable) choice of retraction is

Rx(v) = x + v, (7.2)

though Definition 3.40 allows for more exotic choices as well.

Page 142: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

142 an introduction to optimization on smooth manifolds

Equipped with an inner product, E is a Euclidean space, and alsoa (linear) Riemannian manifold. The orthogonal projector from E to atangent space is of course the identity map:

Projx(u) = u. (7.3)

Smoothness of a function f : E → R is defined in the usual sense; itsclassical gradient and its Riemannian gradient coincide.

More generally, we may consider a linear manifoldM embedded in In Manopt, seeeuclideansubspacefactory,and special casessymmetricfactory,skewsymmetricfactory, . . .

a Euclidean space E , that is: M is a linear subspace of E . For example,we may consider Sym(n)—the space of real symmetric matrices of sizen—to be a submanifold of Rn×n. It still holds that TxM =M for allx ∈ M, and Rx(v) = x + v is still a good choice for a retraction.Numerically, points and tangent vectors of M are typically stored aselements of E . In this more general setup, Projx denotes the orthogonalprojection from E to TxM, that is: orthogonal projection from E toM (in particular, it does not depend on x). If we make M into aRiemannian submanifold of E , that is, if the inner product on M isthe same as the inner product on E (appropriately restricted), thenProposition 3.51 states the following: given a smooth f : M→ R withsmooth extension f : U → R defined on a neighborhood U ofM in E ,

grad f (x) = Projx(grad f (x)). (7.4)

For example, with the usual inner product on E = Rn×n (3.15), withM = Sym(n) as a Riemannian submanifold, ProjX(Z) = Z+Z>

2 so thatthe gradient of a function on Sym(n) is simply the symmetric part ofits classical gradient on all of Rn×n.

Second-order tools

Covariant derivatives (∇ and Ddt ) on E coincide with the usual vector

field derivatives. The Riemannian Hessian of a function f : E → R

coincides with its Euclidean Hessian. The retraction Rx(v) = x + v isa second-order retraction (Definition 5.36). In fact, it is the exponentialmap (Section 10.2).

7.2 The unit sphere in a Euclidean space

Let E be a Euclidean space endowed with an inner product 〈·, ·〉 and In Manopt, see spherefactory andspherecomplexfactory.associated norm ‖ · ‖. For example, this could be Rn with the metric

〈u, v〉 = u>v, or it could be Rn×p with the metric 〈U, V〉 = Tr(U>V).With d = dim E , we define the unit sphere in E as

Sd−1 = x ∈ E : ‖x‖ = 1. (7.5)

Page 143: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded submanifolds: examples 143

A defining function is h(x) = 〈x, x〉 − 1. Its differential is Dh(x)[v] =2 〈x, v〉, so that

TxSd−1 = v ∈ E : 〈x, v〉 = 0 , (7.6)

and dim Sd−1 = dim E − 1 = d− 1. One possible retraction is

Rx(v) =x + v‖x + v‖ =

x + v√1 + ‖v‖2

. (7.7)

The orthogonal projector to the tangent space at x is

Projx : E → TxSd−1 : u 7→ Projx(u) = u− 〈x, u〉 x. (7.8)

Equip Sd−1 with the induced Riemannian metric to turn it into a Rie-mannian submanifold. Then, for a smooth function f : Sd−1 → R withsmooth extension f : U → R in a neighborhood U of Sd−1 in E , thegradient of f is given by Proposition 3.51 as In Manopt, formulas such as (7.9) which

convert the Euclidean gradient of asmooth extension into a Riemanniangradient are available for each manifoldas egrad2rgrad.

grad f (x) = Projx(grad f (x)) = grad f (x)−⟨

x, grad f (x)⟩

x. (7.9)

In particular, x is a critical point of f if and only if grad f (x) is parallelto x.

A product of k spheres is called an oblique manifold. For example,the product of k spheres in Rn is denoted by OB(n, k) = (Sn−1)k. Itselements are typically represented using matrices in Rn×k (or Rk×n)whose columns (or rows) have unit norm. The same can be done forcomplex matrices. An often useful particular case is the complex circle, In Manopt, see:

obliquefactory,obliquecomplexfactory,complexcirclefactory.

which consists of all complex numbers of unit modulus: this is nothingbut an alternative way of representing S1.

Second-order tools

Since Sn−1 is a Riemannian submanifold of the Euclidean space E ,covariant derivatives (∇ and D

dt ) on Sn−1 coincide with the usual vectorfield derivatives (of smooth extensions) in E , followed by orthogonalprojection to tangent spaces (Theorem 5.7, Proposition 5.27).

We can use this to obtain a formula for the Riemannian Hessian off : Sn−1 → R, with smooth extension f : U → R defined on a neigh-borhood U of Sn−1 in E . Following Example 5.13, we let

G(x) = grad f (x)−⟨

x, grad f (x)⟩

x

denote a smooth extension of the vector field grad f to a neighborhood

Page 144: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

144 an introduction to optimization on smooth manifolds

of Sn−1 in E . Then,

Hess f (x)[v] = ∇vgrad f In Manopt, formulas such as (7.10)which convert the Euclidean gradientand Hessian of a smooth extension intoa Riemannian Hessian are available foreach manifold as ehess2rhess.

= Projx(DG(x)[v])

= Projx(

Hess f (x)[v]−[⟨

v, grad f (x)⟩+⟨

x, Hess f (x)[v]⟩]

x

−⟨

x, grad f (x)⟩

v)

= Projx(Hess f (x)[v])−⟨

x, grad f (x)⟩

v. (7.10)

The retraction (7.7) is a second-order retraction (see Definition 5.36,Example 5.37 and Proposition 5.43). Geodesics on Sn−1 are given inExample 5.32.

7.3 The Stiefel manifold: orthonormal matrices

For p ≤ n, let Rn×p be endowed with the standard inner product See stiefelfactory in Manopt; for com-plex matrices: stiefelcomplexfactory.The non-compact Stiefel manifold refersto the open subset of matrices of rank pin Rn×p. By default, we mean compact.

Some authors use the notation St(p, n)for the same set—we prefer the presentnotation as it is reminiscent of the size ofthe matrices.

〈U, V〉 = Tr(U>V). The (compact) Stiefel manifold is the set of matricesin Rn×p whose columns are orthonormal in Rn with respect to the innerproduct 〈u, v〉 = u>v. This can be written conveniently as:

St(n, p) =

X ∈ Rn×p : X>X = Ip

, (7.11)

where Ip is the identity matrix of size p. In particular, St(n, 1) is theunit sphere in Rn. We call matrices in St(n, p) orthonormal matrices andwe reserve the word orthogonal matrix for square orthonormal matrices.

Consider the following function:

h : Rn×p → Sym(p) : X 7→ h(X) = X>X− Ip, (7.12)

where Sym(p) is the linear space of symmetric matrices of size p. Thelatter has dimension k = p(p+1)

2 , so that we may identify it with Rk

if desired. We claim that h is a defining function for St(n, p). Indeed,h is smooth and h−1(0) = St(n, p): it remains to check that the dif-ferential of h has rank k for all X ∈ St(n, p). To this end, considerDh(X) : Rn×p → Sym(p):

Dh(X)[V] = limt→0

h(X + tV)− h(X)

t

= limt→0

(X + tV)>(X + tV)− X>Xt

= X>V + V>X. (7.13)

To show Dh(X) has rank k, we must show its image (or range) is a lin-ear subspace of dimension k. Since the codomain Sym(p) has dimen-sion k, we must show that the image of Dh(X) is all of Sym(p), that is,

Page 145: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded submanifolds: examples 145

Dh(X) is surjective. To this end, consider V = 12 XA with A ∈ Sym(p)

arbitrary. Then,

Dh(X)[V] =12

X>XA +12

A>X>X = A.

In other words: for any matrix A ∈ Sym(p), there exists a matrixV ∈ Rn×p such that Dh(X)[V] = A. This confirms the image of Dh(X)

is all of Sym(p), so that it has rank k. Thus, h is a defining function forSt(n, p), making it an embedded submanifold of Rn×p of dimension

dim St(n, p) = dim Rn×p − dim Sym(p) = np− p(p + 1)2

. (7.14)

The tangent spaces are subspaces of Rn×p:

TXSt(n, p) = ker Dh(X) =

V ∈ Rn×p : X>V + V>X = 0

. (7.15)

It is sometimes convenient to parameterize tangent vectors in explicit This matrix X⊥ is never created explic-itly in practice: it is merely a usefulmathematical construct.

form. First, complete the orthonormal basis formed by the columns ofX with a matrix X⊥ ∈ Rn×(n−p) such that [ X X⊥ ] ∈ Rn×n is orthogo-nal:

X>X = Ip, X>⊥X⊥ = In−p, and X>X⊥ = 0. (7.16)

Since [ X X⊥ ] is, in particular, invertible, any matrix V ∈ Rn×p can bewritten as

V =[

X X⊥] [Ω

B

]= XΩ + X⊥B, (7.17)

for a unique choice of Ω ∈ Rp×p and B ∈ R(n−p)×p. Using this de-composition, V is a tangent vector at X if and only if

0 = Dh(X)[V] = X>(XΩ + X⊥B) + (XΩ + X⊥B)>X = Ω + Ω>.

In other words, Ω must be skew-symmetric, while B is free. Thus,

TXSt(n, p) =

XΩ + X⊥B : Ω ∈ Skew(p), B ∈ R(n−p)×p

, (7.18)

where we used the decomposition (7.17) with respect to an arbitrarychoice of X⊥ ∈ Rn×(n−p) satisfying (7.16), and

Skew(p) = Ω ∈ Rp×p : Ω>= −Ω (7.19)

is the set of skew-symmetric matrices of size p.One popular retraction for St(n, p) is the Q-factor retraction: Some software packages offer a built-

in qr routine which may not enforcenonnegativity of diagonal entries of R—this is the case of Matlab for example.It is important to flip the signs of thecolumns of Q accordingly. In Manopt,call qr_unique.

RX(V) = Q, (7.20)

Page 146: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

146 an introduction to optimization on smooth manifolds

where QR = X + V is a (thin) QR decomposition: Q ∈ St(n, p) andR ∈ Rp×p upper triangular with nonnegative diagonal entries. This iswell defined since, for a tangent vector V ∈ TXSt(n, p),

(X + V)>(X + V) = Ip + V>V (7.21)

is positive definite, showing X + V has full rank p: under that condi-tion, the QR decomposition is indeed unique. This retraction can becomputed in ∼ np2 basic arithmetic operations (+,−,×, /,

√·) using

the modified Gram–Schmidt algorithm or a Householder triangular-ization. The defining properties of a retraction are satisfied: Surely,RX(0) = X; Furthermore, inspecting the Gram–Schmidt algorithm re-veals that it maps full-rank matrices in Rn×p to their Q-factor througha sequence of smooth operations, so that R is smooth (by composition);Finally, an expression for DRX(V) is derived in [AMS08, Ex. 8.1.5] (seealso the erratum for that reference), from which it is straightforwardto verify that DRX(0) is the identity map.

Another popular retraction for St(n, p) is the polar retraction:

RX(V) = (X + V)((X + V)>(X + V)

)−1/2

= (X + V)(Ip + V>V)−1/2, (7.22)

where M−1/2 denotes the inverse matrix square root of M. This can be If M = X +V = UΣW> is a thin singularvalue decomposition, the polar factor ofM is UW>.

computed through eigenvalue decomposition of the matrix Ip + V>V,or (better) through SVD of X +V. Clearly, RX(0) = X and R is smooth.It is an exercise to check that DRX(0) is the identity map. In fact, thepolar retraction is a metric projection retraction: see Proposition 5.42.

Yet another often used retraction for the Stiefel manifold is the Cay-ley transform [WY13, JD15].

The orthogonal projector to a tangent space of St(n, p) must be suchthat U − ProjX(U) is orthogonal to TXSt(n, p), that is, the differencemust be in the orthogonal complement of the tangent space in Rn×p.The latter is called the normal space to St(n, p) at X: As an alternative to this derivation of

the normal space, one can ‘guess’ the fi-nal result (7.23), verify that this subspaceis orthogonal to the tangent space, andcount dimensions to conclude.

NXSt(n, p) = (TXSt(n, p))⊥

=

U ∈ Rn×p : 〈U, V〉 = 0 for all V ∈ TXSt(n, p)

=

U ∈ Rn×p : 〈U, XΩ + X⊥B〉 = 0

for all Ω ∈ Skew(p), B ∈ R(n−p)×p.

Expand normal vectors as U = XA + X⊥C with some A ∈ Rp×p and

Page 147: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded submanifolds: examples 147

C ∈ R(n−p)×p; then:

NXSt(n, p) =

U ∈ Rn×p : 〈XA + X⊥C, XΩ + X⊥B〉 = 0

for all Ω ∈ Skew(p), B ∈ R(n−p)×p=

U ∈ Rn×p : 〈A, Ω〉 = 0 and 〈C, B〉 = 0

for all Ω ∈ Skew(p), B ∈ R(n−p)×p= XA : A ∈ Sym(p) , (7.23)

where we used that the orthogonal complement of Skew(p) in Rp×p

is Sym(p). Thus, orthogonal projectors obey:

U − ProjX(U) = XA,

for some symmetric matrix A. Furthermore, the projected vector mustlie in TXSt(n, p), hence

ProjX(U)>X + X>ProjX(U) = 0.

Plugging the former into the latter yields

(U − XA)>X + X>(U − XA) = 0,

that is, U>X + X>U = 2A. Hence,

ProjX(U) = U − XX>U + U>X

2(7.24)

= (I − XX>)U + XX>U −U>X

2. (7.25)

One convenient way to turn St(n, p) into a Riemannian manifold isto make it a Riemannian submanifold of Rn×p, in which case the pro-jector yields a convenient formula for the gradient of smooth functionsf in terms of a smooth extension f , by Proposition 3.51:

grad f (X) = ProjX(grad f (X)) = grad f (X)− X sym(X>grad f (X)),(7.26)

where sym(M) = M+M>2 extracts the symmetric part of a matrix.

Other Riemannian metrics are sometimes used: see for example theso-called canonical metric in [EAS98].

Second-order tools

Since St(n, p) is a Riemannian submanifold of Rn×p, covariant deriva-tives (∇ and D

dt ) on St(n, p) coincide with the usual vector field deriva-tives (of smooth extensions) in Rn×p, followed by orthogonal projec-tion to tangent spaces (Theorem 5.7, Proposition 5.27).

Page 148: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

148 an introduction to optimization on smooth manifolds

We can use this to obtain a formula for the Riemannian Hessian off : St(n, p) → R, with smooth extension f defined on a neighborhoodof St(n, p) in Rn×p. Let

G(X) = grad f (X)− X sym(X>grad f (X))

denote a smooth extension of the vector field grad f to a neighborhoodof St(n, p) in Rn×p. Then,

Hess f (X)[V] = ∇Vgrad f

= ProjX(DG(X)[V])

= ProjX(

Hess f (X)[V]−V sym(X>grad f (X))− XS)

= ProjX(Hess f (X)[V])−V sym(X>grad f (X)), (7.27)

where S = sym(V>grad f (X) + X>Hess f (X)[V]), and XS vanishesthrough ProjX . The polar retraction (7.22) is a second-order retraction(Definition 5.36, Proposition 5.43), but the Q-factor retraction (7.20) isnot. Geodesics on St(n, p) are given in [AMS08, eq. (5.26)].

Exercise 7.1. Show that the polar retraction R on M = St(n, p) (7.22)is such that E(X, V) = (X, RX(V)) from TM to E(TM) has a smoothinverse.

7.4 The orthogonal group and rotation matrices

As a special case of the Stiefel manifold, matrices in St(n, n) form the In Manopt, see rotationsfactory andunitaryfactory.orthogonal group, that is, the set of orthogonal matrices in Rn×n:

O(n) = X ∈ Rn×n : X>X = XX>= In. (7.28)

It is a group equipped with matrix multiplication as its group oper-ation. Being a special case of the Stiefel manifold, O(n) also is anembedded submanifold, this time of Rn×n. As a set which is both amanifold and a group, it is known as a Lie group. It has dimension

dim O(n) = n2 − n(n + 1)2

=n(n− 1)

2, (7.29)

and tangent spaces given by

TXO(n) =

XΩ ∈ Rn×n : Ω ∈ Skew(n)= XSkew(n). (7.30)

Notice how TIn O(n) = Skew(n), so that TXO(n) = XTIn O(n): tangentspaces are essentially “translated” versions of the tangent space at theidentity matrix, which is also the identity element of O(n) as a group.In Lie group parlance, we call TIn O(n) the Lie algebra of O(n).

Numerically, it is convenient to represent tangent vectors at X sim-ply by their skew-symmetric factor Ω, keeping in mind that we mean

Page 149: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded submanifolds: examples 149

to represent the tangent vector XΩ. More generally, it is importantto mind the distinction between how we represent points and vectorsin the ambient space, and how we represent tangent vectors to themanifold.

Both the Q-factor and the polar retractions of St(n, p) are valid re-tractions for O(n).

The orthogonal projector is given by

ProjX(U) = XX>U −U>X

2= X skew(X>U), (7.31)

where skew(M) = M−M>2 extracts the skew-symmetric part of a ma-

trix. Turning O(n) into a Riemannian submanifold of Rn×n with thestandard Euclidean metric, this once more gives a direct formula forthe gradient of a smooth function on O(n), through Proposition 3.51:

grad f (X) = X skew(X>grad f (X)). (7.32)

Of course, this is equivalent to the corresponding formula (7.26) forStiefel.

An important feature of O(n), relevant for optimization, is that itis disconnected. Specifically, it has two components, corresponding toorthogonal matrices of determinant +1 and −1:

1 = det(In) = det(XX>) = det(X)2.

Since the determinant is a continuous function from Rn×n to R, bythe intermediate value theorem, any continuous curve connecting amatrix with determinant +1 to a matrix with determinant −1 mustpass through a matrix with determinant zero, hence, must leave O(n).

Optimization algorithms we discuss do not jump between connectedcomponents of a manifold. Hence, when initializing, it is important tostart in the appropriate component. Geometrically, orthogonal matri-ces correspond to rotations of Rn, possibly composed with a reflectionfor those matrices that have determinant −1. In situations where onlyrotations are relevant, it makes sense to consider the special orthogonalgroup, also known as the group of rotations:

SO(n) = X ∈ O(n) : det(X) = +1 . (7.33)

This is still an embedded submanifold of Rn×n of course. To verify it,consider the defining function h(X) = X>X − In defined on this opensubset of Rn×n: X ∈ Rn×n : det(X) > 0.

As a connected component of O(n), all the tools we developed so

Page 150: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

150 an introduction to optimization on smooth manifolds

far apply just as well to SO(n). This includes (7.32) and

dim SO(n) =n(n− 1)

2, (7.34)

TXSO(n) = XSkew(n), (7.35)

ProjX(U) = X skew(X>U). (7.36)

It is clear that retractions on O(n) yield retractions on SO(n) since,being smooth, they cannot leave a connected component.

Second-order tools

Since O(n) and SO(n) are Riemannian submanifolds of the Euclideanspace Rn×n, covariant derivatives (∇ and D

dt ) coincide with the usualvector field derivatives (of smooth extensions) in Rn×n, followed by or-thogonal projection to tangent spaces (Theorem 5.7, Proposition 5.27).

We use this to obtain a formula for the Riemannian Hessian of areal function f on O(n) or SO(n), with smooth extension f in Rn×n.Of course, exactly the same developments as for the Stiefel manifoldhold, so that by (7.27) we get:

Hess f (X)[V] = ProjX(

Hess f (X)[V]−V sym(X>grad f (X)))

. (7.37)

Writing V = XΩ for some Ω ∈ Skew(n), this also reads

Hess f (X)[XΩ] = X skew(

X>Hess f (X)[V]−Ω sym(X>grad f (X)))

,

making the skew-symmetric representation of Hess f (X)[XΩ] moreapparent.

For both O(n) and SO(n), the polar retraction (7.22) is a second-order retraction (Definition 5.36, Proposition 5.43), but the Q-factorretraction (7.20) is not. It is an exercise to show that

c(t) = X exp(tΩ) (7.38)

is a geodesic on O(n) (or SO(n)) such that c(0) = X and c′(0) = XΩ.1 1 This happens because the Riemannianmetric is bi-invariant, so that the Lie ex-ponential map and the Riemannian ex-ponential map coincide. It is known thatthe Lie exponential map is given by thematrix exponential exp.

Exercise 7.2. Show that c(t) as defined by (7.38) is indeed a curve on O(n),and verify that d

dt c(t) = c(t)Ω. Deduce that ddt

(ddt c(t)

)= c(t)Ω2 and,

eventually, that c′′(t) = Ddt c′(t) = 0, which confirms c is a geodesic. Hint:

use (4.25) to express the differential of the matrix exponential, and use thefact that exp(A + B) = exp(A) exp(B) if A and B commute.

Exercise 7.3. Work out a geometric toolbox for the unitary group

U(n) = X ∈ Cn×n : X∗X = In (7.39)

as a Riemannian submanifold of Cn×n with the usual inner product (3.18).

Page 151: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded submanifolds: examples 151

7.5 Fixed-rank matrices

The set of real matrices of size m× n and rank r, In Manopt, see:fixedrankembeddedfactory.

Rm×nr = X ∈ Rm×n : rank(X) = r, (7.40)

is an embedded submanifold of Rm×n, as we now show. Importantly, One popular technique to optimize overmatrices of rank up to r is to set X =AB> and to optimize over the factorsA ∈ Rm×r , B ∈ Rn×r (this is an over-parameterization since the factorizationis not unique).

this is only true for fixed rank r: the set of matrices in Rm×n with rankup to r is not an embedded submanifold of Rm×n. It is, however, analgebraic variety and a stratified space—we do not consider optimizationon such spaces. Moreover, in contrast to the examples discussed earlierin this chapter, Rm×n

r is neither open nor closed in Rm×n.For an arbitrary X ∈ Rm×n

r , we now build a local defining function. We cannot use h(X) = rank(X)− r as adefining function because it is not con-tinuous, let alone smooth.

Since X has rank r, it contains an invertible submatrix of size r × r,that is, it is possible to extract r columns and r rows of X such thatthe resulting matrix in Rr×r is invertible. For notational convenience,assume for now that this is the case for the first r rows and columns,so that X can be written in block form as

X =

[X11 X12

X21 X22

]

with X11 ∈ Rr×r invertible, and X12 ∈ Rr×(n−r), X21 ∈ R(m−r)×r andX22 ∈ R(m−r)×(n−r). Since X has rank r, its n − r last columns mustbe linear combinations of its r first columns, that is, there exists W ∈Rr×(n−r) such that [

X12

X22

]=

[X11

X21

]W.

Consequently, W = X−111 X12 and X22 = X21W = X21X−1

11 X12. Underour assumption that X11 is invertible, this relationship between theblocks of X is necessary and sufficient for X to have rank r.

This suggests a candidate local defining function. Let U be thesubset of Rm×n consisting of all matrices whose upper-left submatrixof size r × r is invertible: X is in U, and U is open in Rm×n sinceits complement—the set of matrices whose upper-left submatrix hasdeterminant equal to zero—is closed. Consider

h : U → R(m−r)×(n−r) : Y =

[Y11 Y12

Y21 Y22

]7→ h(Y) = Y22 −Y21Y−1

11 Y12,

with the same block-matrix structure as before. By our discussionabove, h−1(0) = Rm×n

r ∩U. Furthermore, h is smooth in U. Finally, itsdifferential at Y is (V ∈ Rm×n has the same block structure as Y):

Dh(Y)[V] = V22 −V21Y−111 Y12 + Y21Y−1

11 V11Y−111 Y12 −Y21Y−1

11 V12,

Page 152: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

152 an introduction to optimization on smooth manifolds

where we used this identity for the differential of the matrix inverse(recall Example 4.14):

D(

M 7→ M−1)(M)[H] = −M−1HM−1. (7.41)

The codomain of Dh(Y) is R(m−r)×(n−r). Any matrix in that codomaincan be attained with some input V (simply consider setting V11, V12, V21

to zero, so that Dh(Y)[V] = V22). Thus, the differential of h is surjectiveeverywhere in U: it is a local defining function for Rm×n

r around X.If the upper-left submatrix of size r × r of X is not invertible, we canconstruct another local defining function using the same procedure:one for each choice of submatrix.

Together, these local defining functions cover the whole set, show-ing that Rm×n

r is an embedded submanifold of Rm×n with dimension

dim Rm×nr = dim Rm×n − dim R(m−r)×(n−r)

= mn− (m− r)(n− r)

= r(m + n− r). (7.42)

Notice that, for a given rank r, the dimension of Rm×nr grows linearly

with m + n, as opposed to the dimension of the embedding spaceRm×n which grows much faster, as mn. Hence, large matrices of smallrank can be encoded with a small number of numbers. To exploit thiskey feature in numerical algorithms, we must represent X appropri-ately in memory. One convenient choice is as a thin singular valuedecomposition:

X = UΣV>, U ∈ St(m, r), Σ =

σ1

. . .σr

, (7.43)

V ∈ St(n, r),

where σ1 ≥ · · · ≥ σr > 0 are the singular values of X. To identify Xuniquely, it is only necessary to store U, Σ, V in memory. We stressthat this is only about representation: the use of orthonormal matricesis only for convenience, and has no bearing on the geometry of Rm×n

r .The tangent space to Rm×n

r at X is given by the kernel of Dh(X),with an appropriately chosen h. However, this characterization is im-practical because it requires one to identify an invertible submatrixof X in order to determine which local defining function to use. Be-sides, it is more convenient to aim for a representation of the tangentspace TXRm×n

r that is compatible with the practical representation ofX (7.43).

Since we know that each tangent space has dimension as in (7.42),it is sufficient to exhibit a linear subspace of that dimension which is

Page 153: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded submanifolds: examples 153

included in the tangent space. Going back to the definition of tangentspace (3.20), we do so by explicitly constructing smooth curves onRm×n

r .Given X = UΣV> as above, let U(t) be a smooth curve on St(m, r)

such that U(0) = U, let V(t) be a smooth curve on St(n, r) such thatV(0) = V, and let Σ(t) be a smooth curve in the set of invertiblematrices of size r × r (this is an open submanifold of Rr×r) such thatΣ(0) = Σ. Then,

c(t) = U(t)Σ(t)V(t)>

is a smooth curve on Rm×nr such that c(0) = X. Hence, its velocity at

zero is a tangent vector at X:

c′(0) = U′(0)ΣV>+ UΣ′(0)V>+ UΣV′(0)>∈ TXRm×nr .

Since U(t) is a smooth curve on St(m, r) through U, its velocity U′(0)is in the tangent space to St(m, r) at U. The other way around, for anyvector in TUSt(m, r), there is a smooth curve U(t) with that velocity att = 0. From (7.18), this means for any Ω ∈ Skew(r) and B ∈ R(m−r)×r

we can arrange to have

U′(0) = UΩ + U⊥B,

where U⊥ is such that [U U⊥ ] is orthogonal. Likewise, for any Ω′ ∈Skew(r) and C ∈ R(n−r)×r we can arrange to have

V′(0) = VΩ′ + V⊥C,

with V⊥ such that [ V V⊥ ] is orthogonal. Finally, since Σ(t) is a smoothcurve in an open submanifold of Rr×r, we can arrange for Σ′(0) to beany matrix A ∈ Rr×r. Overall, this shows all of the following velocitiesare in the tangent space of Rm×n

r at X:

c′(0) = (UΩ + U⊥B)ΣV>+ UAV>+ UΣ(VΩ′ + V⊥C)>

= U(ΩΣ + A− ΣΩ′︸ ︷︷ ︸M

)V>+ U⊥BΣ︸ ︷︷ ︸Up

V>+ U(V⊥CΣ>︸ ︷︷ ︸Vp

)>. (7.44)

Since Σ is invertible, we find that any matrix of the form

UMV>+ UpV>+ UV>p

with M ∈ Rr×r arbitrary and Up ∈ Rm×r, Vp ∈ Rn×r such that U>Up =

V>Vp = 0 is tangent at X. The conditions on Up and Vp amount to 2r2

linear constraints, hence we have found a linear subspace of TXRm×nr

of dimension

r2 + mr + nr− 2r2 = r(m + n− r),

Page 154: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

154 an introduction to optimization on smooth manifolds

which coincides with the dimension of TXRm×nr by (7.42). Thus, we

have found the whole tangent space:

TXRm×nr =

UMV>+ UpV>+ UV>p :

M ∈ Rr×r, Up ∈ Rm×r, Vp ∈ Rn×r, and

U>Up = 0, V>Vp = 0

. (7.45)

Notice how, if X is already identified by the triplet (U, Σ, V), then torepresent a tangent vector at X we only need small matrices M, Up, Vp.These require essentially the same amount of memory as for storingX. Sometimes, it is convenient (for analysis, not computation) to writetangent vectors as follows:

TXRm×nr =

[U U⊥

] [A BC 0

] [V V⊥

]>: A, B, C are arbitrary

.

(7.46)

This reveals the dimension of the tangent space even more explicitly.To build a retraction for Rm×n

r , we use this common approach: makethe step in the ambient space, then project back to the manifold. Toproject from Rm×n to Rm×n

r , we first need to endow Rm×n with aEuclidean metric: we choose the standard inner product, 〈U, V〉 =

Tr(U>V), with its induced norm ‖U‖ =√〈U, U〉 (the Frobenius norm).

Then, the proposal is: Notice that the standard retraction forthe sphere and the polar retraction forthe Stiefel manifold are also of that na-ture. This is called metric projection: seethe discussion around (5.37) for more.

RX(H) = arg minY∈Rm×n

r

‖X + H −Y‖2. (7.47)

It is well known that solutions to this optimization problem (whenthey exist) are given by the singular value decomposition of X + H,truncated at rank r. With X and H represented as above, this can bedone efficiently. Indeed, consider

X + H = U(Σ + M)V>+ UpV>+ UV>p

=[U Up

] [Σ + M Ir

Ir 0

] [V Vp

]>.

This notably reveals that X + H has rank at most 2r. Compute thin QR Here, the signs on the diagonals ofRU , RV are irrelevant. In principle,some work can be saved using that Uhas orthonormal columns and that thecolumns of Up are orthogonal to those ofU, but this is numerically delicate whenUp is ill conditioned; likewise for V, Vp.

factorizations of the left and right matrices:

QU RU =[U Up

], QV RV =

[V Vp

],

with QU ∈ St(m, 2r), QV ∈ St(n, 2r) and RU , RV ∈ R2r×2r upper trian-gular (assuming 2r ≤ m, n; otherwise, the procedure is easily adapted).This costs ∼ 8(m + n)r2 arithmetic operations. Then,

X + H = QU RU

[Σ + M Ir

Ir 0

]R>V︸ ︷︷ ︸

≈UΣV>

Q>V .

Page 155: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded submanifolds: examples 155

Compute a singular value decomposition UΣV> of the middle part asindicated, truncated at rank r: U, V ∈ St(2r, r), and Σ ∈ Rr×r diagonalwith decreasing, nonnegative diagonal entries. This costs essentiallysome multiple of ∼ r3 arithmetic operations, and reveals the truncatedsingular value decomposition of X + H:

RX(H) = (QUU)Σ(QVV)>. (7.48)

Computing the products QUU and QVV costs ∼ 4(m+ n)r2 arithmeticoperations. The triplet (QUU, Σ, QVV) represents the retracted pointon Rm×n

r .Notice that if we wish to compute RX(tH) for several different val-

ues of t (as would happen in a line-search procedure), then we can savethe QR computations and replace the matrix

[Σ+M Ir

Ir 0

]with

[Σ+tM tIr

tIr 0

].

After a first retraction, subsequent retractions along the same directioncould be up to three times faster.

It is clear that RX(0) = X. That this retraction is indeed well definedand smooth (locally) and that DRX(0) is the identity map follows fromgeneral properties of retractions obtained by projection to the manifoldfrom the ambient space: see Proposition 5.42. See also [AO15] fordetails on this and several other retractions on Rm×n

r .There is an important caveat with the retraction detailed above. Important caveat!

Specifically, since Rm×nr is not (the shell of) a convex set in Rm×n,

projection to Rm×nr is not globally well defined. This fact is appar-

ent in the step where we compute the rank-r truncated singular valuedecomposition of a matrix of size 2r × 2r: depending on the vectorbeing retracted, that operation may not have a solution (if the matrixhas rank less than r), or the solution may not be unique (if its rth and(r + 1)st singular values are positive and equal). Overall, this meanswe must be careful when we use this retraction.

With Rm×n still endowed with the standard inner product, we nowturn to the orthogonal projectors of Rm×n

r . From (7.46), it is clear thatthe normal space at X = UΣV> is given by:

NXRm×nr =

U⊥WV>⊥ : W ∈ R(m−r)×(n−r)

. (7.49)

Then, the orthogonal projection of Z ∈ Rm×n to TXRm×nr satisfies both

Z− ProjX(Z) = U⊥WV>⊥

for some W and, following (7.45),

ProjX(Z) = UMV>+ UpV>+ UV>p (7.50)

for some M, Up, Vp with U>Up = V>Vp = 0. Combined, these state

Z = UMV>+ UpV>+ UV>p + U⊥WV>⊥.

Page 156: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

156 an introduction to optimization on smooth manifolds

Define PU = UU>, PV = VV>, P⊥U = Im − PU and P⊥V = In − PV . Then,we find in turn:

PUZPV = UMV>, P⊥U ZPV = UpV>, and PUZP⊥V = UV>p .

Hence,

ProjX(Z) = PUZPV + P⊥U ZPV + PUZP⊥V (7.51)

= U(U>ZV)V>+ (Im −UU>)ZVV>+ UU>Z(In −VV>).

In the notation of (7.50), this is a tangent vector at X represented by

M = U>ZV, Up = ZV −UM, and Vp = Z>U −VM>. (7.52)

If Z is structured so that U>Z and ZV can be computed efficiently, itsprojection can also be computed efficiently: this is crucial in practice.

Turning Rm×nr into a Riemannian submanifold of Rm×n with the

standard Euclidean metric, the gradient of a smooth f : Rm×nr → R

with smooth extension f to a neighborhood of Rm×nr in Rm×n is given

by Proposition 3.51 as

grad f (X) = ProjX(grad f (X)),

to be computed using (7.50) and (7.52). In applications, grad f (X) isoften a sparse matrix, or a low-rank matrix available in factored form,or a sum of such structured matrices. In those cases, the projection can(and should) be computed efficiently.

Second-order tools

Since Rm×nr is a Riemannian submanifold of the Euclidean space Rm×n,

covariant derivatives (∇ and Ddt ) coincide with the usual vector field

derivatives (of smooth extensions), followed by orthogonal projectionto tangent spaces (Theorem 5.7, Proposition 5.27).

We use this to obtain a formula for the Riemannian Hessian off : Rm×n

r → R with smooth extension f . Let O be the subset of Rm×n

containing all matrices whose rth and (r + 1)st singular values are dis-tinct: this is a neighborhood of Rm×n

r . Given a matrix X in O, let PU

be the orthogonal projector from Rm to the subspace spanned by the rdominant left singular vectors of X: this is smooth in X. In particular,if X = UΣV> has rank r (with factors as in (7.51)), then PU = UU>.Likewise, let PV be the orthogonal projector from Rn to the subspacespanned by the r dominant right singular vectors of X, also smooth inX, so that for X = UΣV> ∈ Rm×n

r we have PV = VV>. The projectorsto the orthogonal complements are P⊥U = Im − PU and P⊥V = In − PV .Then, we define a smooth extension of grad f (X) to O in Rm×n with

Page 157: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded submanifolds: examples 157

the shorthand Z = grad f (X) as

G(X) = PUZPV + P⊥U ZPV + PUZP⊥V= PUZPV + ZPV − PUZPV + PUZ− PUZPV

= ZPV + PUZ− PUZPV .

In order to differentiate G(X), we must determine the differentials ofPU and PV as a function of X. To this end, consider any tangent vectorH = UMV>+ UpV>+ UV>p at X ∈ Rm×n

r . We aim to design a smoothcurve c on Rm×n

r such that c(0) = X and c′(0) = H. Then, we can use

DG(X)[H] = (G c)′(0)

to reach our conclusion.Taking inspiration from (7.44), pick a smooth curve U(t) on St(m, r)

such that U(0) = U and U′(0) = UpΣ−1. Similarly, pick a smoothcurve V(t) on St(n, r) such that V(0) = V and V′(0) = VpΣ−1, andset Σ(t) = Σ + tM. By design, this ensures that c(t) = U(t)Σ(t)V(t)>

satisfies c(0) = X and c′(0) = H. Define PU—the derivative of PU at Xalong H—through:

PU(t) = U(t)U(t)>, and

PU ,ddt

PU(t)

∣∣∣∣t=0

= U(0)U′(0)>+ U′(0)U(0)>= UΣ−1U>p + UpΣ−1U>.

Likewise, define PV through

PV(t) = V(t)V(t)>, and PV ,ddt

PV(t)

∣∣∣∣t=0

= VΣ−1V>p + VpΣ−1V>.

With Z = Hess f (X)[H] for short, this allows us to write

DG(X)[H] = ZPV + ZPV + PUZ + PU Z− PUZPV − PU ZPV − PUZPV

= (PU + P⊥U )ZPV + PU Z(PV + P⊥V )− PU ZPV + P⊥U ZPV + PUZP⊥V= PU ZPV + P⊥U (ZPV + ZPV) + (PU Z + PUZ)P⊥V .

We can now use the fact that Rm×nr is a Riemannian submanifold of

Rm×n together with (7.50) to claim

Hess f (X)[H] = ProjX(DG(X)[H]) = UMV>+ UpV>+ UV>p , (7.53)

for matrices M, Up, Vp given as in (7.52). Explicitly, Once more, Z and Z are matrices inRm×n whose structure (if any) should beexploited to compute the products ZVp,Z>Up, ZV and Z>U efficiently.

M = U>DG(X)[H]V = U>ZV,

Up = DG(X)[H]V −UM = P⊥U(

ZV + ZVpΣ−1)

,

Vp = (DG(X)[H])>U −VM>= P⊥V(

Z>U + Z>UpΣ−1)

, (7.54)

Page 158: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

158 an introduction to optimization on smooth manifolds

where Z = grad f (X), Z = Hess f (X)[H], X = UΣV> and H is repre-sented by the triplet (M, Up, Vp). We may reorganize this as:

Hess f (X)[H] = ProjX(Hess f (X)[H])

+[

P⊥U grad f (X)VpΣ−1]

V>+ U[

P⊥V (grad f (X))>UpΣ−1]>

. (7.55)

This highlights the Riemannian Hessian as the projection of the Eu-clidean Hessian with additional corrections to Up and Vp (betweenbrackets): compare with Corollary 5.15. Notice the Σ−1 factors: theseindicate that Riemannian Hessians are likely to behave poorly close tothe “brink”, that is, if some of the top r singular values of X are nearzero.

In closing, we note that the retraction (7.48) is second order as aconsequence of Proposition 5.43.

Exercise 7.4. Taking inspiration from the discussion of retraction (7.48), pro- In Manopt, such functions are calledtangent2ambient.pose an algorithm to compute an SVD representation of a tangent vector.

More precisely: given a point X ∈ Rm×nr represented by a triplet (U, Σ, V)

as in (7.43) and a tangent vector X ∈ TXRm×nr represented by a triplet

(M, Up, Vp) as in (7.45), explain how you compute a triplet (U, Σ, V) whichis a representation of X = UΣV>, where U, V have 2r orthonormal columnsand Σ has nonnegative (but not necessarily positive) diagonal entries, withoverall complexity linear in m + n.

7.6 The hyperboloid model

Consider the bilinear map 〈·, ·〉M on Rn+1 defined by In Manopt, see: hyperbolicfactory

〈u, v〉M = −u0v0 + u1v1 + · · ·+ unvn = u>Jv (7.56)

with J = diag(−1, 1, . . . , 1). This is not a Euclidean inner productbecause J has one negative eigenvalue, but it is a pseudo-inner productbecause all eigenvalues of J are nonzero. It is called the Minkowskipseudo-inner product on Rn+1.

Consider this subset of Rn+1 (sometimes denoted by Hn):

M = x ∈ Rn+1 : 〈x, x〉M = −1= x ∈ Rn+1 : x2

0 = 1 + x21 + · · ·+ x2

n. (7.57)

Its defining function is h(x) = 〈x, x〉M + 1, with differential

Dh(x)[u] = 2 〈x, u〉M = (2Jx)>u.

Notice that x0 6= 0 for all x ∈ M; hence, 2Jx 6= 0 for all x ∈ M. Wededuce that M is an embedded submanifold of Rn+1 of dimension nwith tangent spaces

TxM = u ∈ Rn+1 : 〈x, u〉M = 0. (7.58)

Page 159: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded submanifolds: examples 159

This manifold has two connected components, corresponding to x0

being positive and negative. (Indeed, any continuous curve on Mconnecting a point with positive x0 to a point with negative x0 wouldhave to go through a point with x0 = 0, which is impossible.) Withn = 2, these two components are hyperboloids in R3.

While 〈·, ·〉M is only a pseudo-inner product on Rn+1, it is an innerproduct when restricted to the tangent spaces of M. Indeed, for all(x, u) ∈ TM,

〈u, u〉M = u21 + · · ·+ u2

n − u20

= u21 + · · ·+ u2

n −1x2

0(x1u1 + · · ·+ xnun)

2

≥ u21 + · · ·+ u2

n −1x2

0(x2

1 + · · ·+ x2n)(u

21 + · · ·+ u2

n)

= (u21 + · · ·+ u2

n)

(1−

x20 − 1x2

0

)

=1x2

0(u2

1 + · · ·+ u2n)

≥ 0.

(On the first line we use 〈x, u〉M = 0 to eliminate u0, then Cauchy–Schwarz, then 〈x, x〉M = 1 to claim x2

1 + · · ·+ x2n = x2

0− 1.) As a result,‖u‖M =

√〈u, u〉M is a well-defined norm on any tangent space. This

is despite the fact that 〈u, u〉M can be negative if u does not belong toany tangent space ofM.

It is easy to check that the restriction of 〈·, ·〉M to each tangent space The essential geometric trait ofM (withn ≥ 2) is that its sectional curvatures areconstant, equal to −1. All such mani-folds are called hyperbolic spaces. Thereare several other models that share thistrait, namely the Beltrami–Klein model,the Poincaré ball model and the Poincaréhalf-space model. See [Lee18, p62] for acomparison.

TxM defines a Riemannian metric onM, turning it into a Riemannianmanifold. With this Riemannian structure, we callM a hyperbolic spacein the hyperboloid model.

The tangent space TxM is an n-dimensional subspace of Rn+1. Itsorthogonal complement with respect to 〈·, ·〉M is the one-dimensionalnormal space

NxM =

v ∈ Rn+1 : 〈u, v〉M = 0 for all u ∈ TxM= span(x).

(7.59)

Thus, orthogonal projection from Rn+1 to TxM with respect to 〈·, ·〉Mtakes the form Projx(z) = z + αx with α ∈ R chosen so that z + αx is inTxM, that is, so that 0 = 〈x, z + αx〉M = 〈x, z〉M − α. In other words:

Projx(z) = z + 〈x, z〉M · x. (7.60)

With this tool in hand, we can construct a useful formula to computegradients of functions onM.

Page 160: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

160 an introduction to optimization on smooth manifolds

Proposition 7.5. Let f : Rn+1 → R be a smooth function on the Euclidean Note that Jgrad f (x) is the gradientof f in the Minkowski space Rn+1

with pseudo-inner product 〈·, ·〉M . SeeO’Neill [O’N83] for a general treatmentof submanifolds of spaces equippedwith pseudo-inner products.

space Rn+1 with the usual inner product 〈u, v〉 = u>v. Let f = f |M be therestriction of f toM with the Riemannian structure as described above. Thegradient of f is related to that of f as follows:

grad f (x) = Projx(

Jgrad f (x))

, (7.61)

where J = diag(−1, 1, . . . , 1) and Projx is defined by (7.60).

Proof. By definition, grad f (x) is the unique vector in TxM such thatD f (x)[u] = 〈grad f (x), u〉M for all u ∈ TxM. Since f is a smoothextension of f , we can compute

D f (x)[u] = D f (x)[u]

=⟨grad f (x), u

⟩=⟨

Jgrad f (x), u⟩

M

=⟨

Jgrad f (x), Projx(u)⟩

M

=⟨Projx

(Jgrad f (x)

), u⟩

M .

(The second line is by definition of grad f (x); the third by definition of〈·, ·〉M; the fourth because u is tangent at x; and the fifth because Projxis self-adjoint with respect to 〈·, ·〉M, being an orthogonal projector.)The claim follows by uniqueness.

Second-order tools

For all smooth vector fields V on M and all (x, u) ∈ TM, define the Compare this with Theorem 5.7 wherewe make the same claim under the as-sumption that the embedding space isEuclidean. Here, the embedding spaceis not Euclidean, but the result stands.

operator ∇ as

∇uV = Projx(DV(x)[u]), (7.62)

where V is any smooth extension of V to a neighborhood of M inRn+1 and DV(x)[u] = limt→0

1t (V(x + tu)− V(x)) is the usual direc-

tional derivative. It is an exercise to check that ∇ is the Riemannianconnection forM.

The covariant derivative Ddt (induced by ∇) for a smooth vector field Compare this with Proposition 5.27.

Z along a smooth curve c : I →M is given by

Ddt

Z(t) = Projc(t)

(ddt

Z(t))

(7.63)

where ddt Z(t) is the usual derivative of Z understood as a map from I

to Rn+1—this makes use of the fact that Z(t) ∈ Tc(t)M⊂ Rn+1.It is an exercise to check that, for arbitrary (x, u) ∈ TM, Compare this with the geodesics on the

sphere, Example 5.32.

c(t) = Expx(tu) = cosh(‖tu‖M)x +sinh(‖tu‖M)

‖tu‖Mtu

= cosh(t‖u‖M)x +sinh(t‖u‖M)

‖u‖Mu (7.64)

Page 161: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded submanifolds: examples 161

defines the unique geodesic on M such that c(0) = x and c′(0) = u.Notice that this is defined for all t: Exp is a second-order retractiondefined on the whole tangent bundle (see also Section 10.2).

We proceed to construct a formula for the Hessian of a function onM based on the gradient and Hessian of a smooth extension.

Proposition 7.6. (Continued from Proposition 7.5.) The Hessian of f isrelated to that of f as follows:

Hess f (x)[u] = Projx(

JHess f (x)[u])+⟨

x, Jgrad f (x)⟩

M · u, (7.65)

where J = diag(−1, 1, . . . , 1) and Projx is defined by (7.60).

Proof. Consider this smooth vector field in Rn+1:

G(x) = Jgrad f (x) +⟨

Jgrad f (x), x⟩

M · x.

This is a smooth extension of grad f from M to Rn+1. Thus, for all(x, u) ∈ TM we have

Hess f (x)[u] = ∇ugrad f

= Projx(DG(x)[u])

= Projx(

JHess f (x)[u] + qx +⟨

Jgrad f (x), x⟩

M · u)

= Projx(

JHess f (x)[u])+⟨

Jgrad f (x), x⟩

M · u,

where q is the derivative of⟨

Jgrad f (x), x⟩

M at x along u—and wedo not need to compute it since qx is in the normal space, hence itvanishes through the projector.

Exercise 7.7. Check that 〈·, ·〉M indeed defines a Riemannian metric onM.Verify that ∇ (7.62) is the Riemannian connection for M, that D

dt (7.63) isthe covariant derivative induced by ∇ and that c(t) (7.64) is a geodesic onM satisfying c(0) = x and c′(0) = u (that this is the unique such geodesicis a consequence of general results, see Section 10.2).

7.7 Manifolds defined by h(x) = 0

Let h : E → Rk be a smooth function on a Euclidean space of dimen-sion strictly larger than k with inner product 〈·, ·〉 and induced norm‖ · ‖. The set

M = x ∈ E : h(x) = 0 (7.66)

is an embedded submanifold of E of dimension dim E − k if Dh(x)has full rank k for all x ∈ M: we make this assumption here. In con-trast with Definition 3.6, we require the whole manifold to be definedwith a single defining function h. Everything below still holds if M

Page 162: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

162 an introduction to optimization on smooth manifolds

is only locally defined by h: we focus on the case of a global h fornotational simplicity and because it covers several of the examples wehave encountered.

With the notation h(x) = (h1(x), . . . , hk(x))> to highlight the k con-straint functions hi : E → R, note the linear operator

Dh(x)[v] =(〈gradh1(x), v〉 , . . . , 〈gradhk(x), v〉

)> (7.67)

and its adjoint

Dh(x)∗[α] =k

∑i=1

αigradhi(x). (7.68)

The tangent spaces are given by

TxM = ker Dh(x) = v ∈ E : 〈gradhi(x), v〉 = 0 for all i. (7.69)

The fact that Dh(x) has full rank k means the gradients of the con-straints at x are linearly independent; they form a basis for the normalspace at x:

NxM = (ker Dh(x))⊥ = span(gradh1(x), . . . , gradhk(x)

). (7.70)

Let Projx : E → TxM denote orthogonal projection from E to TxM.Then, for any vector v in E there exists a unique choice of coefficientsα ∈ Rk such that

v = Projx(v) + Dh(x)∗[α]. (7.71)

This decomposes v into its tangent and normal parts at x. Explicitly, α

is the unique solution to the following least-squares problem:

α = arg minα∈Rk

‖v−Dh(x)∗[α]‖2 = (Dh(x)∗)† [v],

where the dagger denotes Moore–Penrose pseudo-inversion, so that

Projx(v) = v−Dh(x)∗[(Dh(x)∗)† [v]

]. (7.72)

A natural retraction for M is metric projection: it relies on the Eu-clidean metric to define:

Rx(v) = arg miny∈E

‖x + v− y‖ subject to h(y) = 0. (7.73)

This is well defined for small enough v (it is even second order), butRx(v) may not be uniquely defined for larger v—see Propositions 5.42

and 5.43. Moreover, it is difficult to compute in general.Endow M with the Riemannian submanifold structure. Given a

smooth function f : E → R and its restriction f = f |M, the Euclideangradient decomposes using (7.71) as

grad f (x) = grad f (x) +k

∑i=1

λi(x)gradhi(x) (7.74)

Page 163: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded submanifolds: examples 163

with λ(x) = (Dh(x)∗)† [grad f (x)] and

grad f (x) = Projx(grad f (x)). (7.75)

Second-order tools

Since M is a Riemannian submanifold of the Euclidean space E , co-variant derivatives (∇ and D

dt ) coincide with the usual vector fieldderivatives (of smooth extensions), followed by orthogonal projectionto tangent spaces (Theorem 5.7, Proposition 5.27). We use this to de-termine the Riemannian Hessian of f = f |M.

Notice that

λ(x) = (Dh(x)∗)†[grad f (x)] (7.76)

is a smooth function on the open subset of E consisting in all points xwhere Dh(x) has full rank k. Thus, we can differentiate grad f (x) (7.74)(understood as a smooth extension of itself in E ) as follows:

Dgrad f (x)[v] = Hess f (x)[v]

−k

∑i=1

Dλi(x)[v] · gradhi(x)−k

∑i=1

λi(x)Hesshi(x)[v].

Then, since Hess f (x)[v] is nothing but the orthogonal projection ofDgrad f (x)[v] to TxM and since each gradhi(x) is orthogonal to TxM,it follows that

Hess f (x)[v] = Projx

(Hess f (x)[v]−

k

∑i=1

λi(x)Hesshi(x)[v]

). (7.77)

This can be summarized with the pleasantly symmetric identities See also Section 7.8 for an alternativederivation.

grad f (x) = grad f (x)−k

∑i=1

λi(x)gradhi(x), (7.78)

Hess f (x) = Projx (

Hess f (x)−k

∑i=1

λi(x)Hesshi(x)

) Projx, (7.79)

with λ(x) as defined above, and with the understanding that the linearoperator on the right-hand side of (7.79) is restricted to TxM. Noticethat λ(x) depends on grad f (x) only through its normal component:compare with Corollary 5.15 and eq. (5.33).

Exercise 7.8. Consider the equality constrained optimization problem

minx∈E

f (x) subject to h(x) = 0, (7.80)

where f : E → R and h : E → Rk are smooth on a Euclidean space E withdim E > k. The Lagrangian function L : E ×Rk → R for this problem is:

L(x, λ) = f (x)− 〈λ, h(x)〉 .

Page 164: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

164 an introduction to optimization on smooth manifolds

A classical result is that if x ∈ E is such that Dh(x) has rank k and x is alocal minimizer for (7.80) then x satisfies KKT conditions of order one andtwo; explicitly: there exists a unique λ ∈ Rk such that

1. gradL(x, λ) = 0, and

2. 〈HessxL(x, λ)[v], v〉 ≥ 0 for all v ∈ ker Dh(x),

where the Hessian of L is taken with respect to x only. These are the classicalfirst- and second-order necessary optimality condition for (7.80).

The full-rank requirement on Dh(x) is known as the linear independenceconstraint qualification (LICQ), because it amounts to the requirement thatthe gradients of the constraints at x be linearly independent.

We know M = x ∈ E : h(x) = 0 is an embedded submanifold ofE if Dh(x) has rank k for all x ∈ M. Assuming this holds, show thatx ∈ E satisfies the first-order KKT conditions if and only if x is in M andgrad f (x) = 0, where f = f |M is restricted to M equipped with the Rie-mannian submanifold structure. Furthermore, show that x satisfies both first-and second-order KKT conditions if and only if x ∈ M, grad f (x) = 0 andHess f (x) 0.

This confirms that the classical necessary optimality conditions are equiv-alent to the Riemannian conditions we established in Propositions 4.4 and 6.1when LICQ holds globally. (Of course, this reasoning can also be appliedlocally around any point x.) This gives KKT conditions a natural geometricinterpretation. These considerations form part of the basis of Luenberger’sseminal paper [Lue72], which started the field of optimization on manifolds.

7.8 Notes and references

Much of the material in this chapter is standard, though some of itrarely appears in as much detail. For the Stiefel manifold in particular,we follow mostly the derivations in [AMS08].

The construction of geometric tools for optimization on Rm×nr as

a Riemannian submanifold of Rm×n follows work by Vandereycken.2 2 B. Vandereycken. Low-rank matrixcompletion by Riemannian optimiza-tion. SIAM Journal on Optimization,23(2):1214–1236, 2013

Similarly, one can derive tools for optimization over fixed-rank tensorsin both tensor train (TT) and Tucker format [UV13, KSV14, HS18].

Here are a few other manifolds of interest for applications:

• The Stiefel manifold with the canonical metric [EAS98];

• The Grassmann manifold Gr(n, p) (see Chapter 9) as an embeddedsubmanifold of Rn×n, where each subspace is identified with anorthogonal projector of rank p [AMT13, SI14], [BH15, Def. 2.3, §4.2];

• Matrices with positive entries (see Section 11.4) and positive definitematrices (see Section 11.5);

Page 165: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

embedded submanifolds: examples 165

• Positive semidefinite matrices with a fixed rank [JBAS10, MA20];

• Multinomial manifolds, the simplex, stochastic matrices [DH19];

• The rigid motion group (special Euclidean group) SE(n): this is amanifold as the product of the manifolds Rn and SO(n), providinga parameterization of all possible rigid motions in Rn as a combi-nation of a translation and a rotation (to add reflections, use O(n)instead of SO(n));

• The essential manifold for camera pose descriptions (epipolar con-straint between projected points in two perspective views) [TD14];

• Shape space as the manifold of shapes in R2 or higher dimensions(see [FCPJ04] and many references therein).

There are a few modern applications of optimization on hyperbolicspace in machine learning, notably for hierarchical embeddings [NK17,JMM19, KMU+

19].About the Riemannian Hessian on a manifold defined by h(x) = 0

as given in (7.79): here is an alternative derivation. It is longer, but maygeneralize more naturally to higher-order Riemannian derivatives. Letc : I → E be a smooth curve on M with c(0) = x and c′(0) = v forsome arbitrary v in TxM. Compute derivatives of f c : I → R in theEuclidean way:

( f c)′(t) =⟨grad f (c(t)), c′(t)

⟩,

( f c)′′(t) =⟨Hess f (c(t))[c′(t)], c′(t)

⟩+

⟨grad f (c(t)),

ddt

c′(t)⟩

.

Alternatively, we can use the fact that f c is equivalent to f c to getthat the above are equal to:

( f c)′(t) =⟨grad f (c(t)), c′(t)

⟩c(t) ,

( f c)′′(t) =⟨Hess f (c(t))[c′(t)], c′(t)

⟩c(t) +

⟨grad f (c(t)),

Ddt

c′(t)⟩

c(t).

The identity ( f c)′′(t) = ( f c)′′(t) at t = 0 reads:

〈Hess f (x)[v], v〉x =⟨Hess f (x)[v], v

⟩+

⟨grad f (x),

ddt

c′(0)⟩−⟨

grad f (x),Ddt

c′(0)⟩

x.

We now use thatM is a Riemannian submanifold of E in several ways.First, there is no need to distinguish between inner products in Eand in TxM; second, we know that D

dt c′(0) = Projxddt c′(0), and that

grad f (x) is tangent at x, so that we may replace Ddt c′(0) with d

dt c′(0).

Page 166: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

166 an introduction to optimization on smooth manifolds

Further calling upon (7.74) to handle grad f (x)− grad f (x) yields

〈Hess f (x)[v], v〉x =⟨Hess f (x)[v], v

⟩+

k

∑i=1

λi(x)⟨

gradhi(x),ddt

c′(0)⟩

.

Our last step aims to eliminate the presence of c(t). To this end, noticethat c(t) is on M for all t, so that h(c(t)) = 0 for all t. Consequently,the first and second derivatives of hi c vanish identically for each i:

(hi c)′(t) =⟨gradhi(c(t)), c′(t)

⟩,

(hi c)′′(t) =⟨Hesshi(c(t))[c′(t)], c′(t)

⟩+

⟨gradhi(c(t)),

ddt

c′(t)⟩

.

In particular, for t = 0 we deduce that⟨gradhi(x),

ddt

c′(0)⟩

= − 〈Hesshi(x)[v], v〉 .

Combining with our work above yields an explicit expression for theRiemannian Hessian of f at x,

〈Hess f (x)[v], v〉x =⟨Hess f (x)[v], v

⟩−

k

∑i=1

λi(x) 〈Hesshi(x)[v], v〉 ,

valid for all v ∈ TxM. This indeed matches (7.79). This derivationparallels the one given in [Lue72, §III].

Page 167: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

8General manifolds

In this chapter, we consider the general definition of a (smooth) man-ifold. Following Brickell and Clark [BC70], we initially give a (too)broad definition, devoid of topological considerations. To avoid con-fusion, we refer to these objects as manifolds*, with a star. Promptlyafter that, in order to exclude topological curiosities that are of littleinterest to optimization, we restrict the definition and call the remain-ing objects manifolds. This final definition is standard.

Of course, embedded submanifolds of linear spaces, as we haveconsidered so far, are manifolds: we shall verify this. Interestingly,new manifolds enter the picture. In particular, we touch upon theGrassmann manifold, consisting of all linear subspaces of a given di-mension in some linear space. Chapter 9 discusses such manifolds inmore depth.

We then revisit our geometric toolbox to generalize smooth maps,tangent spaces, vector fields, retractions, Riemannian metrics, gradi-ents, connections, Hessians, etc. By design, Chapters 4 and 6 regardingoptimization algorithms apply verbatim to this broader setting.

8.1 A permissive definition

Given a set M (without any particular structure so far), the first step As the terms chart and atlas suggest,it helps to think of M as the Earth (asphere), of charts as two-dimensional,flat maps of parts of the Earth, and ofatlases as collections of maps that coverthe Earth.

toward defining a smooth manifold structure on M is to model M afterRd. To do so, we introduce the concept of chart. A chart establishes aone-to-one correspondence between a subset of M and an open subsetof Rd. This allows us to leverage the powerful tools we have at ourdisposal on Rd to work on M.

Definition 8.1. A d-dimensional chart on a set M is a pair (U , ϕ) consistingof a subset U of M (called the domain) and a map ϕ : U → Rd such that:

1. ϕ(U ) is open in Rd, and

2. ϕ is invertible between U and ϕ(U ).

Page 168: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

168 an introduction to optimization on smooth manifolds

The numbers (ϕ(x)1, . . . , ϕ(x)d) are the coordinates of the point x ∈ U inthe chart ϕ. The map ϕ−1 : ϕ(U )→ U is a local parameterization of M.

When the domain is clear, we often call ϕ itself a chart. Given apoint x in M, we say ϕ is a chart around x if x is in the domain of ϕ.

f

ϕ(U )

U

ϕ−1

f = f ϕ−1

RM

For a function from (an open subset of) Rd to R, we readily have anotion of smoothness: it is smooth at x if it is infinitely differentiableat x, in the usual sense. One of the goals of differential geometry is togeneralize this notion to functions f : M → R on a more general classof sets M. Let (U , ϕ) be a d-dimensional chart around x ∈ M. Then,

ϕ(U ) ⊆ Rd

M R

ϕ−1

f

f

f = f ϕ−1 : ϕ(U )→ R

is called a coordinate representative of f in this chart. Since ϕ(U ) is openin Rd, it makes sense to talk of differentiability of f . In particular, wemay want to define that, with respect to this chart, f is smooth at x iff is smooth at ϕ(x).

Two d-dimensional charts (U , ϕ) and (V , ψ) on M around x arecompatible if they yield the same conclusions regarding smoothness offunctions at x. Restricted to the appropriate domains, the coordinaterepresentatives

f = f ϕ−1 and f = f ψ−1

are related by

f = f (ψ ϕ−1) and f = f (ϕ ψ−1).

Thus, the differentiability properties of f and f are the same if thedomains involved are open in Rd and if ψ ϕ−1 and its inverse aresmooth. This is made precise in the following definition.

Definition 8.2. Two charts (U , ϕ) and (V , ψ) of M are compatible if they We could also allow non-overlappingcharts to have different dimensions, butthis serves little purpose in optimization.

have the same dimension d and either U ∩ V = ∅, or U ∩ V 6= ∅ and:

1. ϕ(U ∩ V) is open in Rd;

2. ψ(U ∩ V) is open in Rd; and

3. ψ ϕ−1 : ϕ(U ∩ V) → ψ(U ∩ V) is a smooth invertible function whoseinverse is also smooth (i.e., it is a diffeomorphism).

A collection of charts is compatible if each pair of charts in thatcollection is compatible. Compatible charts that cover the whole set Mform an atlas.

Definition 8.3. An atlas A on a set M is a compatible collection of chartson M whose domains cover M. In particular, for every x ∈ M, there is achart (U , ϕ) ∈ A such that x ∈ U .

Page 169: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

general manifolds 169

M

Rd Rd

U

V

ϕ(U )

ψ(V)

ϕ−1 ψ

ψ ϕ−1

Figure 8.1: Overlapping charts (U , ϕ)and (V , ψ) on a manifold of dimensiond. The darker area on the manifold cor-responds to the intersection U ∩ V of thechart domains. In the coordinate spaces(bottom), the darker areas correspond tothe open images ϕ(U ∩V) and ψ(U ∩V):the coordinate change map ψ ϕ−1 is adiffeomorphism between these two.

Given an atlas A, it is an exercise to show that the collection A+

of all charts of M which are compatible with A is itself an atlas ofM, called a maximal atlas. Thus, any atlas uniquely defines a maximalatlas: we use the latter to define manifolds* (the star is a reminder thattopological concerns are delayed to a later section.) We say that themaximal atlas defines a smooth structure on M.

Definition 8.4. A manifold* is a pair M = (M,A+), consisting of a setM and a maximal atlas A+ on M. The dimension of M is the dimensionof any of its charts. When the atlas is clear from context, we often conflate thenotationsM and M.

We can now define smoothness of maps between manifolds*.

U ⊆ M V ⊆M′

ϕ(U ) ⊆ Rd ψ(V) ⊆ Rd′F

ϕ−1

F

ψ

Definition 8.5. A map F : M→M′ is smooth at x ∈ M if

F = ψ F ϕ−1 : ϕ(U )→ ψ(V)

is smooth at ϕ(x) (in the usual sense), where (U , ϕ) is a chart ofM aroundx and (V , ψ) is a chart of M′ around F(x). The map F is smooth if it issmooth at every point x inM. We call F a coordinate representative of F.

It is an exercise to verify that this definition is independent of thechoice of charts, and that composition preserves smoothness.

Example 8.6. Let E be a linear space of dimension d. We can equip Ewith a smooth structure as follows: choose a basis for E ; set U = E and let

Page 170: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

170 an introduction to optimization on smooth manifolds

ϕ(x) ∈ Rd denote the coordinates of x in the chosen basis; the maximal atlasgenerated by (U , ϕ) yields the usual smooth structure on E . For example, ifE = Rd, we can choose ϕ(x) = x. By default, we always use this smoothstructure on Rd.

Example 8.7. Let M be an open subset of a linear space E of dimension d.With the same chart as in the previous example, only restricted to U = M,it is clear that ϕ(M) is open in Rd, so that (U , ϕ) is a chart for M, and itcovers all of M hence it defines an atlas on M. We conclude that any opensubset of a linear space is a manifold* with a natural atlas. By default, wealways use this smooth structure on open subsets of linear spaces.

Example 8.8. Let (U , ϕ) be a chart of M. The local parameterizationϕ−1 : ϕ(U ) → M is a smooth map. Likewise, with the previous examplein mind, the chart ϕ : U → Rd is a smooth map. Indeed, in both cases, wecan arrange for their coordinate representative to be the identity map.

Example 8.9. Consider the unit circle, S1 = x ∈ R2 : x21 + x2

2 = 1. Onepossible atlas is made of four charts, each defined on a half circle—dubbedNorth, East, South and West—as follows:

UN = x ∈ S1 : x2 > 0, ϕN(x) = x1,

UE = x ∈ S1 : x1 > 0, ϕE(x) = x2,

US = x ∈ S1 : x2 < 0, ϕS(x) = x1,

UW = x ∈ S1 : x1 < 0, ϕW(x) = x2.

It is clear that these are one-dimensional charts. For example, checking theNorth chart we find that ϕN : UN → ϕN(UN) is invertible and ϕN(UN) =

(−1, 1) is open in R, as required. Furthermore, these charts are compatible.For example, checking for the North and East charts, we find that:

1. UN ∩ UE = x ∈ S1 : x1 > 0 and x2 > 0;

2. ϕN(UN ∩ UE) = (0, 1) is open;

3. ϕE(UN ∩ UE) = (0, 1) is open; and

4. ϕ−1E (z) = (

√1− z2, z), so that (ϕN ϕ−1

E )(z) =√

1− z2, which issmooth and smoothly invertible on (0, 1).

The charts also cover the whole set S1, so that together they form an atlas Afor S1. As a result, (S1,A+) is a manifold*.

Earlier, using Definition 3.6, we called S1 an embedded submanifold of R2.In Section 8.3, we argue more generally that embedded submanifolds of linearspaces (as per that early definition) are manifolds*.

Example 8.10. We now discuss a new example: the (n − 1)-dimensionalreal projective space, RPn−1. This is the set of lines through the origin (that

Page 171: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

general manifolds 171

is, one-dimensional linear subspaces) of Rn. To any nonzero point x ∈ Rn,we associate a linear subspace as follows:

π : Rn\0 → RPn−1 : x 7→ π(x) = αx : α ∈ R.

The classical atlas for RPn−1 is built from the following charts. For a given iin 1, . . . , n, consider the following subset of RPn−1:

Ui = π(x) : x ∈ Rn and xi 6= 0.

This is the set of lines through the origin that are not parallel to the plane Pi

defined by xi = 1. In other words, this is the set of lines through the originthat intersect that plane. This allows us to define the map ϕi on the domainUi into Rn−1, as the coordinates of the intersection of the line π(x) with theplane Pi:

ϕi(π(x)) =(

x1

xi, . . . ,

xi−1

xi,

xi+1

xi, . . . ,

xn

xi

).

The map ϕi is indeed well defined because the right-hand side depends onlyon π(x) and not on x itself—this is key. The range ϕi(Ui) is all of Rn−1

(since there exists a line through the origin and any point of Pi), hence it isopen. Furthermore, ϕi is invertible:

ϕ−1i (z1, . . . , zi−1, zi+1, . . . , zn) = π(z1, . . . , zi−1, 1, zi+1, . . . , zn).

Thus, (Ui, ϕi)i=1,...,n are charts for RPn−1. They cover RPn−1 since noline can be parallel to all planes P1, . . . , Pn. Thus, it remains to verify that thecharts are compatible. For all pairs i 6= j, consider the following:

1. Ui ∩ Uj = π(x) : x ∈ Rn, xi 6= 0 and xj 6= 0;

2. ϕi(Ui ∩ Uj) and ϕj(Ui ∩ Uj) are both subsets of Rn−1 defined by onecoordinate being nonzero: they are indeed open;

3. Without loss of generality, consider i < j. Then,

(ϕj ϕ−1i )(z1, . . . , zi−1, zi+1, . . . , zn)

=

(z1

zj, . . . ,

zi−1

zj,

1zj

,zi+1

zj, . . . ,

zj−1

zj,

zj+1

zj, . . . ,

zn

zj

)

is indeed smooth on the appropriate domain, and similarly for ϕi ϕ−1j .

As a result, the charts form an atlas for RPn−1, turning it into a manifold*.In Chapter 9, we discuss a generalization of this idea: the Grassmann

manifold, which consists of all linear subspaces of a given dimension.

It is important to note that, in general, a set M may admit two (ormore) distinct atlases A and A′ that are not compatible (their union is

Page 172: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

172 an introduction to optimization on smooth manifolds

not an atlas), so that their corresponding maximal atlases are distinct.These two atlases then lead to different smooth structures on M, whichshows that it is not sufficient to specify the set M: an atlas must alsobe specified—see Exercise 8.13.

Exercise 8.11. Given an atlas A for a set M, show that the collection A+ ofall charts of M which are compatible with A is itself an atlas of M.

Exercise 8.12. Show Definition 8.5 is independent of the choice of charts.Furthermore, show that if F : M → M′ and G : M′ → M′′ are smooth,then their composition G F is smooth.

Exercise 8.13. For the set M = R, consider these two charts, both definedon all of M: ϕ(x) = x and ψ(x) = 3

√x. Verify that these are indeed charts,

and that they are not compatible. Let A+ be the maximal atlas generated byϕ and letM = (M,A+) denote R with the resulting smooth structure (thisis the usual structure on R). Likewise, let B+ be the maximal atlas generatedby ψ and writeM′ = (M,B+). Give an example of a function f : R → R

which is not smooth in the usual sense (equivalently, as a function from Mto R) but which is smooth as a function fromM′ to R.

8.2 The atlas topology, and a final definition

In the above section, we have equipped a set M with a smooth struc-ture. This affords us the notion of smooth functions between properlyendowed sets. As we now show, this structure further induces a topol-ogy on M, that is, a notion of open sets, called the atlas topology. Inturn, having a topology on M is useful in optimization to define con-cepts such as local optima and convergence.

We start with a few reminders. After discussing two desirable prop-erties of topologies, we restrict the definition of manifold to thosewhose atlas topology is favorable.

The usual notion of open sets in Rd can be abstracted to arbitrarysets as topologies. Essentially, in defining a topology, we declare cer-tain subsets to be open, while making sure that certain basic propertieshold, as specified below.

Definition 8.14. A topology on a set M is a collection T of subsets of Mwith the following properties. A subset of M is called open if and only if it isin T , and:

1. M and ∅ are open;

2. The union of any collection of open sets is open; and

3. The intersection of any finite collection of open sets is open.

Page 173: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

general manifolds 173

A subset C of M is called closed if it is the complement of an open set in M,that is, M\C is open. In particular, M and ∅ are both open and closed. Somesubsets of M may be neither open nor closed.

A pair (M, T ) consisting of a set with a topology is a topologi-cal space. Given two topological spaces (M, T ), (M′, T ′) and a mapF : M → M′, we say that F is continuous if and only if for every openset O′ in M′ the pre-image

F−1(O′) = x ∈ M : F(x) ∈ O′

is open in M.In defining a topology on a manifold* M = (M,A+), it is natural

to require that the chart functions be continuous in that topology. Inparticular, since for any chart (U , ϕ) of M we have that ϕ(U ) is openin Rd (assuming dimM = d), we should require that ϕ−1(ϕ(U )) = Ube open, that is: chart domains should be deemed open. It is easy tocheck with the following definitions that this collection of sets formsa basis for a topology consisting in the collection of all unions of chartdomains [BC70, Prop. 2.4.2].

Definition 8.15. A collection B of subsets of a set M is a basis for a topologyon M if

1. For each x ∈ M, there is a set B ∈ B such that x ∈ B; and

2. If x ∈ B1 ∩ B2 for B1, B2 ∈ B, there exists B3 ∈ B such that x ∈ B3 andB3 ⊆ B1 ∩ B2.

The topology T defined by B is the collection of all unions of elements of B.

Definition 8.16. Given a maximal atlas A+ on a set M, the atlas topology It is important to consider the maximalatlas here, as otherwise we may misssome open sets.

on M states that a subset of M is open if and only if it is the union of acollection of chart domains.

A subset S of a topological space T inherits a topology called thesubspace topology: it consists in the collection of all open sets of T inter-sected with S. By default, when we consider a subset of a topologicalspace, we tacitly equip it with the subspace topology. With this inmind, we get the following convenient fact, true by design.

Proposition 8.17. In the atlas topology, any chart ϕ : U → ϕ(U ) is contin- [BC70, Prop. 2.4.3]

uous and its inverse is also continuous (i.e., it is a homeomorphism.)

A welcome consequence of the latter proposition is that, with theatlas topologies on manifolds*M andM′, any function F : M→M′

which is smooth in the sense of Definition 8.5 is also continuous in thetopological sense [BC70, Prop. 2.4.4].

Page 174: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

174 an introduction to optimization on smooth manifolds

One of the reasons we need to discuss topologies in some detailis that, in general, atlas topologies may lack certain desirable proper-ties: we must require them explicitly. The first such property is calledHausdorff (or T2).

Definition 8.18. A topology on a set M is Hausdorff if all pairs of distinctpoints have disjoint neighborhoods, that is: for all x, x′ distinct in M thereexist open sets O and O′ such that x ∈ O, x′ ∈ O′ and O ∩O′ = ∅.

Recall that a sequence x0, x1, . . . on a topological space is said toconverge to x if, for every neighborhood U of x, there exists an indexk such that xk, xk+1, . . . are all in U : we then say that the sequenceis convergent and that x is its limit. Crucially for optimization, in aHausdorff topology, any convergent sequence of points has a uniquelimit [Lee12, p600]. This may not be the case otherwise (consider forexample the trivial topology, in which the only open sets are the emptyset and the set itself.)

The second desirable property is called second-countable.

Definition 8.19. A topology is second-countable if there is a countablebasis for its topology.

Remarkably, a manifold* whose atlas topology is Hausdorff andsecond-countable admits a Riemannian metric [Lee12, Prop. 13.3]. Thestandard construction relies on partitions of unity, which exist (essen-tially) if and only if the topology is as prescribed—see [BC70, §3.4].

At last, we can give a proper definition of manifolds.

Definition 8.20. A manifold is a pair M = (M,A+) consisting of a setM and a maximal atlas A+ on M such that the atlas topology is Hausdorffand second-countable.

A manifold* is indeed not always a manifold: the atlas topologyis not always Hausdorff (see Examples 3.2.1–3 in [BC70]), and it mayalso not be second-countable (see Example 3.3.2 in the same reference).The following proposition gives a convenient way of ensuring a (notnecessarily maximal) atlas induces a suitable topology.

Proposition 8.21. Let A be an atlas for the set M. Assume both: [Lee12, Lem. 1.35]

1. For all x, y ∈ M distinct, either both x and y are in the domain of somechart, or there exist two disjoint chart domains U and V such that x ∈ Uand y ∈ V ; and

2. Countably many of the chart domains suffice to cover M.

Then, the atlas topology of A+ is Hausdorff (by property 1) and second-countable (by property 2), so thatM = (M,A+) is a manifold.

Page 175: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

general manifolds 175

The following proposition provides yet another way of assessing theatlas topology. We use it in Section 8.3. The “only if” direction of thestatement is a direct consequence of Proposition 8.17.

Proposition 8.22. Let the set M be equipped with both a maximal atlas A+ [BC70, Prop. 3.1.1]

and a topology T . The atlas topology on M coincides with T if and only ifthe charts of one atlas of M are homeomorphisms with respect to T .

Open subsets of manifolds are manifolds in a natural way by restric-tion of the chart domains, called open submanifolds. Unless otherwisespecified, when working with an open subset of a manifold (often, achart domain), we implicitly mean to use the open submanifold geom-etry. See also Section 8.14 for further facts about open submanifolds.

Definition 8.23. LetM be a manifold and let V be open inM in the atlastopology. For any chart (U , ϕ) ofM such that U ∩ V 6= ∅, build the chart(U ∩ V , ϕ) on V . The collection of these charts forms an atlas for V , turningit into a manifold in its own right. Equipped with this atlas, we call V anopen submanifold ofM.

Example 8.24. In all examples from Section 8.1, we have constructed atlaseswith a finite number of charts. Hence, by Proposition 8.21, their atlas topolo-gies are second-countable. Furthermore, for linear spaces and open subsetsof linear spaces, we have used only one chart, so that the same propositionguarantees the resulting topologies are Hausdorff. We conclude that linearspaces and their open subsets are manifolds.

Exercise 8.25. To show that the circle S1 and the real projective space RPn−1

are manifolds, it remains to verify that their atlases (as constructed in Sec-tion 8.1) induce Hausdorff topologies. Do this using Proposition 8.21. Youmay need to add a few charts to the atlases.

Exercise 8.26. Check that Definition 8.23 is legitimate, that is, show that theproposed charts are indeed charts, that they form an atlas, and that the atlastopology is Hausdorff and second-countable.

Exercise 8.27. LetM andN be two manifolds. For any pair of charts (U , ϕ)

and (V , ψ) ofM and N respectively, consider the map φ defined on U × Vby φ(x, y) = (ϕ(x), ψ(y)). Show that these maps define a smooth structureon the product spaceM×N , called the product manifold structure. De-duce that dim(M×N ) = dimM+ dimN , and that open subsets of theproduct manifold are unions of products of open subsets ofM and N .

8.3 Embedded submanifolds are manifolds

In Example 8.24, we confirmed that linear spaces and their open sub-sets are manifolds in the sense of Definition 8.20. They are also embed-ded submanifolds in the sense of Definition 3.6, which we gave early

Page 176: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

176 an introduction to optimization on smooth manifolds

on, in a restricted setting. In this section, we further show that allsets we have thus far called embedded submanifolds are indeed man-ifolds once equipped with a certain atlas, that the topology we havebeen using on these sets is the corresponding atlas topology, and thatour early notion of smooth maps between embedded submanifolds oflinear spaces coincides with the more general notion of smooth mapsbetween manifolds.

Proposition 8.28. A subset M of a linear space E which is an embeddedsubmanifold as per Definition 3.6 admits an atlas which makes it a manifoldin the sense of Definition 8.20. With this smooth structure, the atlas topologycoincides with the subspace topology as given in Definition 3.15. Further-more, givenM andM′ both embedded submanifolds in linear spaces, a mapF : M → M′ is smooth in the sense of Definition 3.23 if and only if it issmooth in the sense of Definition 8.5 with the atlases constructed here.

Proof. The claim is in three parts.

Part 1. We show that M admits an atlas which makes it a mani-fold*. Chart construction starts along the same lines as in the proof ofTheorem 3.8, where we used the inverse function theorem (IFT), The-orem 3.9. With d = dim E , fix a basis for E in order to identify it withRd. For any x ∈ M, let h : U → Rk be a local defining function, thatis, U is a neighborhood of x in E , h is smooth, Dh(x) ∈ Rk×d has fullrank k, and for all y ∈ U it holds that h(y) = 0 ⇐⇒ y ∈ M. Pick kindices among 1, . . . , d such that the corresponding columns of Dh(x)are linearly independent (this is possible since Dh(x) has rank k). Letπ : Rd → Rd−k be the operator that extracts the other entries of a vec-tor in Rd. For example, if the last k columns of Dh(x) are independent,we could define π(y) as the vector with entries (y1, . . . , yd−k). We cannow define the following map:

F : U → Rd : y 7→ F(y) =

[π(y)h(y)

].

The differential of F at x is invertible. Indeed,

DF(x)[u] =

[Dπ(x)[u]Dh(x)[u]

]=

[π(u)

Dh(x)[u]

].

This is zero if and only if π(u) = 0 (indicating u has at most k nonzeroentries, corresponding to linearly independent columns of Dh(x)) andDh(x)[u] = 0, which implies u = 0, confirming DF(x) is invertible.By the IFT, we may replace U with a possibly smaller neighborhoodof x in E such that F : U → F(U) is a diffeomorphism, that is, F andits inverse are smooth. With these ingredients, we are in a position to

Page 177: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

general manifolds 177

propose a tentative chart forM around x:

U =M∩U, and ϕ : U → ϕ(U ) : y 7→ ϕ(y) = π(y) = trim(F(y)),(8.1)

where trim: Rd → Rd−k extracts the first d− k components of a vector.This map is invertible since h is identically zero on U . Indeed,

ϕ−1(z) = F−1(zpad(z)), (8.2)

where zpad : Rd−k → Rd pads a vector with k zeros at the end, so thattrim zpad is identity on Rd−k, and zpad trim is identity on F(U ). Itremains to verify that ϕ(U ) is open in Rd−k. To this end, notice that

U =M∩U

= y ∈ U : h(y) = 0,= y ∈ U : the last k entries of F(y) are zero

= F−1(

F(U) ∩(

Rd−k × 0))

,

where 0 here denotes the zero vector in Rk. Thus,

ϕ(U ) = trim(

F(U) ∩(

Rd−k × 0))

,

which is open in Rd−k since F(U) is open in Rd and using propertiesof the standard topology on real spaces. This confirms that (U , ϕ)

is a (d − k)-dimensional chart for M around x. Such a chart can beconstructed around every point x ∈ M, so that we cover the wholeset. The last step is to verify that the charts are compatible. To thisend, consider two charts as above, (U , ϕ) and (V , ψ), with overlappingdomains and associated diffeomorphisms F : U → F(U) ⊆ Rd−k andG : V → G(V) ⊆ Rd−k. Then, the change of coordinates map,

ψ ϕ−1 = trim G F−1 zpad,

is smooth by composition of smooth maps, from ϕ(U ∩V) to ψ(U ∩V).These domains are open since

ϕ(U ∩ V) = trim(

F(U ∩V) ∩(

Rd−k × 0))

, and

ψ(U ∩ V) = trim(

G(U ∩V) ∩(

Rd−k × 0))

.

Furthermore, the change of coordinates map is clearly smoothly in-vertible, which finishes the construction of our atlas, turningM into amanifold*.

Part 2. That the atlas and the subspace topologies coincide followsfrom Proposition 8.22. Indeed, we only need to show that the charts

Page 178: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

178 an introduction to optimization on smooth manifolds

constructed above are homeomorphisms with respect to the subspacetopology on M. By definition, U = M∩U is open in that topology.Furthermore, ϕ(U ) is open in Rd−k as we argued above. Since the mapϕ : U → ϕ(U ) is invertible, it remains to argue that it and its inverseare continuous in the subspace topology. That ϕ is continuous is clearsince it is the restriction of the continuous map trimF from U to U .That ϕ−1 is continuous is also clear since it is equal to the continuousmap F−1 zpad, only with the codomain restricted to U .

The topology on E is Hausdorff and second-countable, and it is easyto see that the subspace topology inherits these properties. Thus, weconclude thatM equipped with the above atlas is a manifold.

Part 3. The equivalence of the two definitions of smoothness for mapsbetween manifolds is given in Proposition 3.63.

Additionally, the constructed atlas yields the unique smooth struc-ture on M for which the atlas topology coincides with the subspacetopology—see Section 8.14. This is why, even though in general it doesnot make sense to say that a set is or is not a manifold, it does makesense to say that a subset of a linear space is or is not an embeddedsubmanifold of that linear space.

8.4 Tangent vectors and tangent spaces

In defining tangent vectors to a manifold in Section 3.2, we relied heav- We present one standard definition oftangent vectors on manifolds. Anotherstandard definition is through the notionof derivation. These two perspectives areequivalent.

ily on the linear embedding space. In the general setting however, wedo not have this luxury. We must turn to a more general, intrinsicdefinition.

Let x be a point on a d-dimensional manifold M. Consider the setCx of smooth curves onM passing through x at t = 0:

Cx = c | c : I →M is smooth and c(0) = x.

Smoothness of c on an open interval I ⊆ R around 0 is to be under-stood through Definition 8.5.

We define an equivalence relation on Cx, denoted by ∼. Let (U , ϕ)

be a chart of M around x and consider c1, c2 ∈ Cx. Then, c1 ∼ c2 ifand only if ϕ c1 and ϕ c2 have the same derivative at t = 0, that is:

c1 ∼ c2 ⇐⇒ (ϕ c1)′(0) = (ϕ c2)

′(0). (8.3)

These derivatives are well defined as ϕ ci are smooth functions (bycomposition) from some open interval around 0 to an open subset ofRd. It is an exercise to prove that this equivalence relation is indepen-dent of the choice of chart.

Page 179: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

general manifolds 179

The equivalence relation partitions Cx into equivalence classes: wecall them tangent vectors. The rationale is that all the curves in a sameequivalence class (and only those) pass through x with the same “ve-locity”, as judged by their velocities through ϕ(x) in coordinates.

Definition 8.29 (tangent vector, tangent space). The equivalence class ofa curve c ∈ Cx is the set of curves that are equivalent to c as per (8.3):

[c] = c ∈ Cx : c ∼ c.

Each equivalence class is called a tangent vector to M at x. The tangentspace toM at x, denoted by TxM, is the quotient set, that is, the set of allequivalence classes:

TxM = Cx/∼ = [c] : c ∈ Cx.

Given a chart (U , ϕ) around x, the map

θϕx : TxM→ Rd : [c] 7→ θ

ϕx ([c]) = (ϕ c)′(0) (8.4)

is well defined by construction: the expression (ϕ c)′(0) does notdepend on the choice of representative c in [c]. It is an exercise toshow that θ

ϕx is bijective. This bijection naturally induces a linear space

structure over TxM, by copying the linear structure of Rd:

a · [c1] + b · [c2] , (θϕx )−1(a · θϕ

x ([c1]) + b · θϕx ([c2])

). (8.5)

This structure, again, is independent of the choice of chart. Thus, thetangent space is a linear space in its own right.

Theorem 8.30. Tangent spaces are linear spaces of dimension dimM, withthe linear structure given through (8.5).

When M is an embedded submanifold of a linear space, the twodefinitions of tangent spaces we have seen are essentially equivalent,so that we always use the simpler one. In particular, the tangent spacesof (an open subset of) a linear space E (for example, Rd) are identifiedwith E itself.

Theorem 8.31. For M embedded in a linear space E , there exists a linearspace isomorphism (that is, an invertible linear map) showing that Defini-tions 3.7 and 8.29 are, essentially, equivalent.

Proof. To see this, reconsider the proof of Theorem 3.8, specificallyeq. (3.23), together with the charts in (8.1).

Exercise 8.32. Show that the equivalence relation (8.3) is independent of thechoice of chart (U , ϕ) around x. Show that θ

ϕx (8.4) is bijective. Show that

the linear structure on TxM defined by (8.5) is independent of the choice ofchart, so that it makes sense to talk of linear combinations of tangent vectorswithout specifying a chart.

Page 180: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

180 an introduction to optimization on smooth manifolds

8.5 Differentials of smooth maps

By design, the notion of tangent vector induces a notion of directionalderivatives. Let F : M→M′ be a smooth map. For any tangent vectorv ∈ TxM, pick a representative curve c (formally, c ∈ v) and considerthe map t 7→ F(c(t)): this is a smooth curve on M′ passing throughF(x) at t = 0. The equivalence class of that curve is a tangent vectorto M′ at F(x). The equivalence relation (8.3) is specifically crafted sothat this map between tangent spaces does not depend on the choiceof c in v. This yields a proper notion of differential for maps betweenmanifolds. It is essentially equivalent to Definition 3.26 for the case ofembedded submanifolds of linear spaces.

Definition 8.33. Given manifolds M and M′, the differential of a smooth On the right of (8.6), brackets indicatetaking an equivalence class of curves.On the left, brackets around v are meantto distinguish between x (the point atwhich we differentiate) and v (the direc-tion along which we differentiate).

map F : M → M′ at x is a linear operator DF(x) : TxM → TF(x)M′

defined by:

DF(x)[v] = [t 7→ F(c(t))], (8.6)

where c is a smooth curve onM passing through x at t = 0 such that v = [c].

Definition 8.34. Let F(M) denote the set of smooth scalar fields onM, thatis, the set of smooth functions f : M → R. Then, identifying1 the tangent 1 Identification is through Theorem 8.31.

spaces of R with R itself, a particular case of Definition 8.33 for f ∈ F(M)

defines the differential D f (x) : TxM→ R as:

D f (x)[v] = ( f c)′(0), (8.7)

where v = [c]. More generally, for a smooth map F : M → N where N isan embedded submanifold of a linear space E , identifying the tangent spacesof N to subspaces of E and with v = [c] a tangent vector at x ∈ M, we write

DF(x)[v] = (F c)′(0), (8.8)

where F c is seen as a map into E .

Exercise 8.35. Verify that equation (8.6) is well defined, that is, the right-hand side does not depend on the choice of c representing v. Additionally,show that DF(x) is indeed a linear operator with respect to the linear struc-ture (8.5) on tangent spaces.

Exercise 8.36. For smooth maps F1, F2 : M→ E (with E a linear space) andreal numbers a1, a2, show that F : x 7→ a1F1(x) + a2F2(x) is smooth and wehave linearity:

DF(x) = a1DF1(x) + a2DF2(x).

For smooth maps f ∈ F(M) and G : M → E , show that the product mapf G : x 7→ f (x)G(x) is smooth fromM to E and we have a product rule:

D( f G)(x)[v] = G(x)D f (x)[v] + f (x)DG(x)[v].

Page 181: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

general manifolds 181

Let F : M → M′ and G : M′ → M′′ be smooth. In Exercise 8.12, weverified the composition G F is smooth. Now, show that

D(G F)(x)[v] = DG(F(x))[DF(x)[v]],

that is, we have a chain rule.

8.6 Tangent bundles and vector fields

Identically to Definition 3.34, we define the tangent bundle as the dis-joint union of all tangent spaces, now provided by Definition 8.29.

Definition 8.37. The tangent bundle of a manifoldM is the set:

TM = (x, v) : x ∈ M and v ∈ TxM.

We often conflate the notations (x, v) and v, when the context is clear.

Definition 8.38. The projection π : TM→M extracts the root of a vector,that is, π(x, v) = x. At times, we may write π(v) = x.

Just like tangent bundles of embedded submanifolds are themselvesembedded submanifolds (Theorem 3.35), tangent bundles of mani-folds are manifolds in a natural way. (Smoothness of π is understoodthrough Definition 8.5.)

Theorem 8.39. For any manifold M of dimension d, the tangent bundleTM is itself a manifold of dimension 2d, in such a way that the projectionπ : TM→M is smooth.

Proof. From any chart (U , ϕ) ofM, we construct a chart (U , ϕ) of TMas follows. Define the domain U = π−1(U ) to be the set of all tangentvectors to any point in U . Then, define ϕ : U → ϕ(U ) ⊆ R2d as

ϕ(x, v) = (ϕ(x), θϕx (v)), (8.9)

where θϕx is defined by (8.4). See [Lee12, Prop. 3.18] for details.

The smooth structure on tangent bundles makes differentials ofsmooth maps into smooth maps themselves.

Proposition 8.40. Consider a smooth map F : M→M′ and its differential [Lee12, Prop. 3.21]

DF : TM → TM′ defined by DF(x, v) = DF(x)[v]. With the naturalsmooth structures on TM and TM′, the map DF is smooth.

Proof. Write DF in coordinates using charts from Theorem 8.39, thenuse Proposition 8.46 below.

The manifold structure on TM makes it possible to define smoothvector fields on manifolds as smooth maps fromM to TM.

Page 182: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

182 an introduction to optimization on smooth manifolds

Definition 8.41. A vector field V is a map fromM to TM such that π Vis the identity map. The vector at x is written V(x) and lies in TxM. If V isalso a smooth map, then it is a smooth vector field. The set of smooth vectorfields onM is denoted by X(M).

In Section 8.8, we use the following characterization of smooth vec-tor fields to construct coordinate vector fields.

Proposition 8.42. A vector field V onM is smooth if and only if, for every [Lee12, Prop. 8.1]

chart (U , ϕ) ofM, the map x 7→ θϕx (V(x)) is smooth on U .

Proof. Using Definition 8.5 about smooth maps and the charts of TMdefined by (8.9), we conclude that V is smooth if and only if, for everychart (U , ϕ) ofM,

V = ϕ V ϕ−1 : ϕ(U ) ⊆ Rd → R2d

is smooth, where ϕ(x, v) = (ϕ(x), θϕx (v)). For z = ϕ(x),

V(z) = (z, θϕx (V(x))),

so that V is smooth if and only if x 7→ θϕx (V(x)) is smooth on U .

Let V be a vector field onM. As we did in Definition 5.3, we definethe action of V on a smooth function f ∈ F(U ) with U open in M asthe function V f : U → R determined by

(V f )(x) = D f (x)[V(x)]. (8.10)

Based on the latter, we mention the following characterization of smoothvector fields which is sometimes useful. The proof in the direction weneed is an exercise in Section 8.8.

Proposition 8.43. A vector field V on a manifoldM is smooth if and only [Lee12, Prop. 8.14]

if V f is smooth for all f ∈ F(M).

Exercise 8.44. Show that for V, W ∈ X(M) and f , g ∈ F(M), the vectorfield f V + gW is smooth.

8.7 Retractions

Now equipped with broader notions of smooth maps, tangent bundlesand differentials, the definition of retraction, Definition 3.40, general-izes verbatim. We re-state it here for convenience. Since TxM is alinear space, it has a natural smooth structure as well: we use it be-low to give meaning to smoothness of Rx. Furthermore, with thisstructure, the tangent spaces of TxM are identified with TxM itself(Theorem 8.31), so that T0(TxM)—the domain of DRx(0) below—isidentified with TxM.

Page 183: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

general manifolds 183

Definition 8.45. A retraction onM is a smooth map R: TM→M withthe following properties. For each x ∈ M, let Rx : TxM → M be therestriction of R at x, so that Rx(v) = R(x, v). Then,

1. Rx(0) = x, and

2. DRx(0) : TxM→ TxM is the identity map: DRx(0)[v] = v.

(To be clear, here, 0 denotes the zero tangent vector at x, that is, the equiv-alence class of smooth curves on M that pass through x at t = 0 with zerovelocity, as judged through any chart around x.)

8.8 Coordinate vector fields as local frames

Let (U , ϕ) be a chart on a d-dimensional manifold M. Consider the Here and in many places, we use that Uitself is a manifold; specifically, an opensubmanifold ofM: see Definition 8.23.

following vector fields on U , called coordinate vector fields:

Wi(x) =[t 7→ ϕ−1 (ϕ(x) + tei)

], i = 1, . . . , d, (8.11)

where e1, . . . , ed are the canonical basis vectors for Rd (that is, thecolumns of the identity matrix of size d). The defining property ofthese vector fields is that, when pushed through θ

ϕx (8.4), they corre-

spond to the constant coordinate vector fields of Rd:

θϕx (Wi(x)) =

ddt

ϕ(ϕ−1 (ϕ(x) + tei))

∣∣∣∣t=0

= ei. (8.12)

As a corollary, we obtain a generalization of Proposition 3.59: localframes exist around any point on a manifold (see Definition 3.58).

Proposition 8.46. Coordinate vector fields (8.11) are smooth on U , that is,W1, . . . , Wd belong to X(U ). Furthermore, they form a local frame, that is, forall x ∈ U , the tangent vectors W1(x), . . . , Wd(x) are linearly independent.

Proof. Smoothness follows from Proposition 8.42 and (8.12). Now con-sider the linear structure on TxM defined by (8.5): W1(x), . . . , Wd(x)are linearly independent if and only if they are so after being pushedthrough θ

ϕx , which is clearly the case owing to (8.12).

Corollary 8.47. Given a vector field V onM and a chart (U , ϕ), there exist We use that V is smooth on M if andonly if it is smooth when restricted toany chart domain U equipped with theopen submanifold geometry.

unique functions g1, . . . , gd : U → R such that V|U = g1W1 + · · ·+ gdWd.These functions are smooth if and only if V|U is smooth.

Proof. That functions gi : U → R such that V|U = ∑i giWi exist and areunique follows from linear independence of W1(x), . . . , Wd(x). Thesmoothness equivalence follows from Proposition 8.42 and

θϕx (V(x)) =

d

∑i=1

gi(x)θϕx (Wi(x)) = (g1(x), . . . , gd(x))>, (8.13)

where we used θϕx (Wi(x)) = ei by (8.12).

Page 184: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

184 an introduction to optimization on smooth manifolds

Exercise 8.48. Show that for all V ∈ X(M) and f ∈ F(M) the functionV f is smooth onM (this is one direction of Proposition 8.43).

8.9 Riemannian metrics and gradients

Since tangent spaces are linear spaces, we can define inner productson them. The following definitions already appeared in the context ofembedded submanifolds in Sections 3.7 and 3.8: they extend verbatimto the general case.

Definition 8.49. An inner product on TxM is a bilinear, symmetric, positivedefinite function 〈·, ·〉x : TxM× TxM→ R. It induces a norm for tangentvectors: ‖u‖x =

√〈u, u〉x. A metric on M is a choice of inner product

〈·, ·〉x for each x ∈ M.

Definition 8.50. A metric 〈·, ·〉x onM is a Riemannian metric if it variessmoothly with x, in the sense that if V, W are two smooth vector fields onMthen the function x 7→ 〈V(x), W(x)〉x is smooth fromM to R.

Definition 8.51. A manifold with a Riemannian metric is a Riemannianmanifold.

Definition 8.52. Let f : M → R be a smooth function on a Riemannianmanifold M. The Riemannian gradient of f is the vector field grad f onM uniquely defined by these identities:

∀(x, v) ∈ TM, D f (x)[v] = 〈v, grad f (x)〉x , (8.14)

where D f (x) is as in Definition 8.34 and 〈·, ·〉x is the Riemannian metric.

The gradient of a smooth function is a smooth vector field: theproof of Proposition 3.60 extends as is, using local frames provided byProposition 8.46 for example.

Proposition 8.53. For f ∈ F(M), the gradient grad f is smooth. [Lee12, p343]

Proposition 3.49 also holds true in the general case, with the sameproof. We restate the claim here.

Proposition 8.54. Let f : M → R be a smooth function on a Riemannian See also Exercise 10.67.

manifoldM equipped with a retraction R. Then, for all x ∈ M,

grad f (x) = grad( f Rx)(0), (8.15)

where f Rx : TxM → R is defined on a Euclidean space ( TxM with theinner product 〈·, ·〉x), hence its gradient is a “classical” gradient.

Page 185: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

general manifolds 185

8.10 Lie brackets as vector fields

Recall Definition 5.3 where we introduced the notion of Lie bracket ofsmooth vector fields U, V ∈ X(M): for all f ∈ F(U ) with U open inM, the Lie bracket [U, V] acts on f and produces a smooth functionon U defined by:

[U, V] f = U(V f )−V(U f ). (8.16)

We now extend Proposition 5.8 to show that [U, V] acts on F(M) in theexact same way that a specific smooth vector field does, which allowsus to think of [U, V] itself as being that smooth vector field. To thisend, we first show a special property of coordinate vector fields.

Proposition 8.55. Lie brackets of coordinate vector fields (8.11) vanish iden-tically, that is,

[Wi, Wj] f = 0

for all 1 ≤ i, j ≤ d and all f ∈ F(U ).

Proof. Writing f in coordinates as f = f ϕ−1 (smooth from ϕ(U )open in Rd to R by Definition 8.5), we find using Definition 8.34:

(Wi f )(x) = D f (x)[Wi(x)]

=ddt

f(

ϕ−1 (ϕ(x) + tei))∣∣∣∣

t=0

=ddt

f (ϕ(x) + tei)

∣∣∣∣t=0

= D f (ϕ(x))[ei]

= 〈grad f (ϕ(x)), ei〉, (8.17)

where we use the canonical inner product 〈·, ·〉 on Rd to define theEuclidean gradient of f . Using this result twice, we obtain

(Wj(Wi f ))(x) = D((Wi f ) ϕ−1

)(ϕ(x))[ej]

= D(〈grad f , ei〉

)(ϕ(x))[ej]

=⟨Hess f (ϕ(x))[ej], ei

⟩.

Since the Euclidean Hessian Hess f is self-adjoint, we find that

(Wi(Wj f ))(x) = (Wj(Wi f ))(x),

hence ([Wi, Wj] f )(x) = 0 for all x ∈ U and for all i, j.

Proposition 8.56. Let U, V be two smooth vector fields on a manifold M.There exists a unique smooth vector field W onM such that [U, V] f = W ffor all f ∈ F(M). We identify [U, V] with that smooth vector field.

Page 186: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

186 an introduction to optimization on smooth manifolds

Proof. We first show the claim on a chart domain. Let (U , ϕ) be achart ofM, and let W1, . . . , Wd be the corresponding coordinate vectorfields (8.11). By Corollary 8.47, any two vector fields U, V ∈ X(M) canbe expressed on U as

U|U =d

∑i=1

giWi, V|U =d

∑j=1

hjWj,

for a unique set of smooth functions gi, hj ∈ F(U ). For all f ∈ F(U ),

V f =d

∑j=1

hjWj f .

Using linearity and Leibniz’ rule (Exercise 5.9),

U(V f ) = ∑i,j

giWi(hjWj f ) = ∑i,j

gi(Wihj)(Wj f ) + gihjWi(Wj f ).

With similar considerations for V(U f ),

V(U f ) = ∑i,j

hjWj(giWi f ) = ∑i,j

hj(Wjgi)(Wi f ) + hjgiWj(Wi f ),

we find

[U, V] f = U(V f )−V(U f )

= ∑i,j

gi(Wihj)(Wj f )− hj(Wjgi)(Wi f ) + ∑i,j

gihj[Wi, Wj] f .

Since [Wi, Wj] f = 0 by Proposition 8.55, it follows that, on the domainU , there is a unique smooth vector field, namely,

∑i,j

gi(Wihj)Wj − hj(Wjgi)Wi, (8.18)

which acts on F(U ) in the exact same way as does [U, V]. This con-struction can be repeated on a set of charts whose domains cover M.By uniqueness, the constructions on overlapping chart domains arecompatible, hence this defines a smooth vector field on all ofM, whichwe identify with [U, V].

8.11 Riemannian connections and Hessians

The notion of connection applies in the general case. For conveniencewe repeat Definition 5.17 here. (Definition 5.1 also extends as is.)

Definition 8.57. An (affine) connection onM is an operator

∇ : X(M)×X(M)→ X(M) : (U, V) 7→ ∇UV

which satisfies the following three properties for arbitrary U, V, W ∈ X(M),f , g ∈ F(M) and a, b ∈ R:

Page 187: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

general manifolds 187

1. F(M)-linearity in U: ∇ f U+gWV = f∇UV + g∇WV;

2. R-linearity in V: ∇U(aV + bW) = a∇UV + b∇UW; and

3. Leibniz rule: ∇U( f V) = (U f )V + f∇UV.

The field ∇UV is the covariant derivative of V along U with respect to ∇.

Likewise, Theorem 5.4 regarding the existence and uniqueness ofa Riemannian connection extends without difficulty. We use Proposi-tion 8.56 (stating Lie brackets are vector fields) to state the symmetrycondition in a more standard way.

Theorem 8.58. On a Riemannian manifoldM, there exists a unique connec-tion ∇ which satisfies two additional properties for all U, V, W ∈ X(M):

4. Symmetry: [U, V] = ∇UV −∇VU; and

5. Compatibility with the metric: U〈V, W〉 = 〈∇UV, W〉+ 〈V,∇UW〉.

This connection is called the Levi–Civita or Riemannian connection.

As we showed in Proposition 5.18 in the embedded case, connec-tions are pointwise operators in U. The proof for the embedded caseextends to the general case with two changes: first, we now use themore general proof of existence of local frames provided by Proposi-tion 8.46; second, we must reaffirm the technical Lemma 5.24 whichallows us to make sense of ∇ when applied to locally defined smoothvector fields (such as coordinate vector fields for example).

Proposition 8.59. For any connection ∇ and smooth vector fields U, V ona manifoldM, the vector field ∇UV at x depends on U only through U(x).Thus, we can write ∇uV to mean (∇UV)(x) for any U ∈ X(M) such thatU(x) = u, without ambiguity.

These observations allow us to extend Definition 5.11 for Rieman-nian Hessians to general manifolds.

Definition 8.60. Let M be a Riemannian manifold with its Riemannianconnection ∇. The Riemannian Hessian of f ∈ F(M) at x ∈ M is alinear operator Hess f (x) : TxM→ TxM defined as follows:

Hess f (x)[u] = ∇ugrad f .

Equivalently, Hess f maps X(M) to X(M) as Hess f [U] = ∇Ugrad f .

The proof that the Riemannian Hessian is self-adjoint, given for em-bedded submanifolds in Proposition 5.14, extends verbatim.

Proposition 8.61. The Riemannian Hessian is self-adjoint with respect tothe Riemannian metric. That is, for all x ∈ M and u, v ∈ TxM,

〈Hess f (x)[u], v〉x = 〈u, Hess f (x)[v]〉x .

Page 188: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

188 an introduction to optimization on smooth manifolds

8.12 Covariant derivatives, velocity and geodesics

Recall Definition 5.25: given a smooth curve c : I →M on a manifoldM, the map Z : I → TM is a smooth vector field on c if Z(t) is in Tc(t)Mfor all t ∈ I, and if it is smooth as a map from I (open in R) to TM.The set of smooth vector fields on c is denoted by X(c).

Theorem 5.26, both a definition of covariant derivatives and a state-ment of their existence and uniqueness, extends to general manifoldsas is. So does its proof, provided we use local frames on general mani-folds (Proposition 8.46) and we reaffirm the notation (5.16) justified inthe embedded case.

Theorem 8.62. Let c : I → M be a smooth curve on a manifold equippedwith a connection ∇. There exists a unique operator D

dt : X(c) → X(c)satisfying these three properties for all Y, Z ∈ X(c), U ∈ X(M), g ∈ F(I),and a, b ∈ R:

1. R-linearity: Ddt (aY + bZ) = a D

dt Y + b Ddt Z;

2. Leibniz rule: Ddt (gZ) = g′Z + g D

dt Z;

3. Chain rule:(

Ddt (U c)

)(t) = ∇c′(t)U for all t ∈ I.

This operator is called the induced covariant derivative. Furthermore, ifM is a Riemannian manifold with metric 〈·, ·〉 and ∇ is compatible with themetric (e.g., if it is the Riemannian connection), then the induced covariantderivative also satisfies:

4. Product rule: ddt 〈Y, Z〉 =

⟨Ddt Y, Z

⟩+⟨

Y, Ddt Z

⟩,

where 〈Y, Z〉 ∈ F(I) is defined by 〈Y, Z〉 (t) = 〈Y(t), Z(t)〉c(t).

The general definition of tangent vectors, Definition 8.29, makesit straightforward to define velocity along a curve. Then, using theinduced covariant derivative D

dt , we may define acceleration along acurve similarly to Definition 5.31, and geodesics as in Definition 5.33.

Definition 8.63. Let c : I → M be a smooth curve. The velocity of c is asmooth vector field on c defined for all t in I by:

c′(t) = [τ 7→ c(t + τ)],

where the brackets on the right-hand side take the equivalence class of theshifted curve, as per (8.3). The acceleration of c is a smooth vector field on cdefined as the covariant derivative of the velocity:

c′′ =Ddt

c′.

A geodesic is a smooth curve c : I →M such that c′′(t) = 0 for all t ∈ I.

Page 189: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

general manifolds 189

8.13 Taylor expansions and second-order retractions

Using the general tools constructed thus far, the reasoning that leadto second-order Taylor expansions for embedded submanifolds andwhich culminated in eq. (5.25) extends to a general Riemannian man-ifold M. Hence, we can state in general that, for f ∈ F(M) and anysmooth curve c onM such that c(0) = x and c′(0) = v,

f (c(t)) = f (x) + t 〈grad f (x), v〉x +t2

2〈Hess f (x)[v], v〉x

+t2

2⟨grad f (x), c′′(0)

⟩x + O(t3). (8.19)

Definition 5.36 extends as is to the general case.

Definition 8.64. A second-order retraction R on a Riemannian manifoldM is a retraction such that, for all x ∈ M and all v ∈ TxM, the curvec(t) = Rx(tv) has zero acceleration at t = 0, that is, c′′(0) = 0.

In turn, this allows us to formulate Proposition 5.38 in the generalcase, with the same proof.

Proposition 8.65. Consider a Riemannian manifold M equipped with anyretraction R, and a smooth function f : M→ R. If x is a critical point of f(that is, if grad f (x) = 0), then

f (Rx(s)) = f (x) +12〈Hess f (x)[s], s〉x + O(‖s‖3

x). (8.20)

If R is a second-order retraction, then for any point x ∈ M we have

f (Rx(s)) = f (x) + 〈grad f (x), s〉x +12〈Hess f (x)[s], s〉x + O(‖s‖3

x).

(8.21)

Finally, Proposition 5.39 and its proof also extend as is.

Proposition 8.66. If the retraction is second order or if grad f (x) = 0, then See also Exercise 10.67.

Hess f (x) = Hess( f Rx)(0),

where the right-hand side is the Hessian of f Rx : TxM→ R at 0 ∈ TxM.

8.14 Submanifolds embedded in manifolds

In Chapter 3, we defined our first class of smooth sets, which we calledembedded submanifolds of linear spaces. In this chapter, we consid-ered a general definition of manifolds, and we showed that embeddedsubmanifolds of linear spaces are manifolds. Now, we discuss themore general concept of embedded submanifold of a manifold. Thiswill serve us well in Chapter 9.

Page 190: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

190 an introduction to optimization on smooth manifolds

Given a subset M of a manifold M, there may exist many smoothstructures for M, which may or may not interact nicely with thesmooth structure of M. Consider the inclusion map i : M → M: itmaps points of M to themselves in M, that is, i(x) = x. Dependingon the smooth structure we choose for M, this map may or may notbe smooth. If it is, and it satisfies an additional condition spelled outbelow,M is called a submanifold ofM.

Definition 8.67. Consider two manifolds, M and M, such that M (as a Notice how, in order to define whetheror not M is a submanifold of M, wefirst needM to be a manifold in its ownright.

set) is included inM. If the inclusion map i : M→M is smooth and Di(x)has rank equal to dimM for all x ∈ M, we say thatM is an (immersed)submanifold ofM.

Under the rank condition, dimM≤ dimM and the kernel of Di(x)is trivial. This is just as well, because otherwise there exists a smoothcurve c : I →M passing through c(0) = x with nonzero velocity c′(0),yet the ‘same’ curve c = i c : I →M onM (smooth by composition)passes through x with zero velocity c′(0) = Di(x)[c′(0)].

Among the submanifold structures of M (if any), there may existat most one such that the atlas topology onM coincides with the sub-space topology induced byM. WhenM admits such a smooth struc- The “figure-eight” example shows this is

not always the case [Lee12, Fig. 4.3].ture, we callM (with that structure) an embedded submanifold ofM.

Definition 8.68. IfM is a submanifold ofM and its atlas topology coincideswith the subspace topology of M ⊆ M (that is, every open set of M is the Some authors call them regular subman-

ifolds [BC70], or even just submanifolds[O’N83].

intersection of some open set ofM withM), thenM is called an embeddedsubmanifold ofM, whileM is called the ambient or embedding space.

Theorem 8.69. A subset M of a manifold M admits at most one smooth [Lee12, Thm. 5.31]

structure that makesM an embedded submanifold ofM.

Hence, it makes sense to say that a subset of a manifold is or isnot an embedded submanifold, where in the affirmative we implicitlymean to endowM with that smooth structure.

The next result gives a complete characterization of embedded sub-manifolds. Compare it to Definition 3.6 whereM is a linear space E .

Proposition 8.70. A subsetM of a manifoldM is an embedded subman- [Lee12, Prop. 5.16] and Lemma 3.62.

ifold ofM if and only if either of the following holds:

1. M is an open subset ofM. Then, we also callM an open submanifoldas in Definition 8.23 and dimM = dimM.

2. For a fixed integer k ≥ 1 and for each x ∈ M there exists a neighborhoodU of x inM and a smooth function h : U → Rk such that

h−1(0) =M∩U and rank Dh(x) = k.

Then, dimM = dimM− k and h is called a local defining function.

Page 191: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

general manifolds 191

The tangent spaces ofM are subspaces of those ofM:

TxM = ker Dh(x) ⊆ TxM, (8.22)

where h is any local defining function forM around x.In Proposition 8.70, there is nothing special about Rk: we could

just as well consider local defining maps into an arbitrary manifoldof dimension k, as this is locally equivalent to Rk through a chart.In particular, it often happens that an embedded submanifold can bedefined with a single defining map, motivating this corollary.

Corollary 8.71. Let h : M → N be a smooth map and consider its non- [Lee12, Cor. 5.14]The set h−1(α) is closed since it is thepre-image of the singleton α throughthe continuous map h, and a singleton isclosed in atlas topology since it maps toa singleton in Rd through a chart. Anembedded submanifold which is closedin the embedding space is called properlyembedded [Lee12, Prop. 5.5].

empty level set M = h−1(α). If Dh(x) has rank equal to dimN for allx ∈ M, thenM is closed inM, it is an embedded submanifold ofM withdimension dimM = dimM− dimN , and TxM = ker Dh(x).

If the differential of h is not surjective at all points ofM, a version ofthis corollary still holds provided the rank of the differential is constantin a neighborhood of M. Crucially, it is not sufficient for this conditionto hold just onM: see Section 3.10.

Proposition 8.72. LetM = h−1(α) be a non-empty level set of the smooth [Lee12, Thm. 5.12]

map h : M → N . If rank Dh(x) = r for all x in a neighborhood of M inM, then M is closed, it is an embedded submanifold of M with dimensiondimM = dimM− r, and TxM = ker Dh(x).

As we discovered in Chapters 3 and 5, geometric tools for subman-ifolds embedded in linear spaces are related to their counterparts onthat linear space in a straightforward way. This is true more gener-ally for submanifolds embedded in manifolds, and the proofs we haveconsidered extend to the general case with little friction. We now sum-marize these results stated in the general case.

Let M be an embedded submanifold of M. Smooth maps to and See Section 3.10 for a related discussion.

fromM are related to smooth maps to and fromM as follows, whereN is an arbitrary manifold. In a nutshell: if F is a smooth map onM, then F|M is also smooth (we may restrict the domain withoutlosing smoothness); likewise, if F is a smooth map toM whose imagehappens to be included in M, then F is also smooth as a map to M(we may restrict (or extend) the codomain without losing smoothness).

Proposition 8.73. If the map F : M→ N is smooth (at x ∈ M), then therestriction F = F|M is smooth (at x). The other way around, if F : M→ Nis smooth at x, there exists a neighborhood U of x in M and a smooth mapF : U → N such that F(y) = F(y) for all y ∈ U ∩M. If F is smooth, thenthere exists a neighborhood U of M in M and a smooth map F : U → Nsuch that F = F|M. Such maps F are called smooth extensions of F.

Proof. The first part holds because F|M = F i is smooth by composi-tion, where i : M→M is the inclusion map, smooth by definition of

Page 192: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

192 an introduction to optimization on smooth manifolds

embedded submanifolds: see [Lee12, Thm. 5.27]. For the second part,see the proof of Proposition 3.24 in Section 3.10.

Proposition 8.74. A map F : N → M is smooth (at x) if and only if [Lee12, Cor. 5.30]

F : N →M, defined by F(y) = F(y), is smooth (at x).

From (8.22) we know TxM is a linear subspace of TxM. If we equipthe submanifold M with a Riemannian metric simply by restrictingthe Riemannian metric 〈·, ·〉x of M to the tangent spaces of M, thenM is a Riemannian submanifold of M, and we recover many useful We restrict this notion to embedded sub-

manifolds, but some authors also allowimmersed submanifolds to be Rieman-nian submanifolds [Lee18, p15].

identities. The linear map Projx which projects vectors from TxM toTxM orthogonally with respect to 〈·, ·〉x features abundantly.

For example, consider a smooth function f : M → R and any In the remainder of this section, M is aRiemannian submanifold ofM.smooth extension f : U → R defined on a neighborhood U of M in

M. Then, for all x ∈ M,

grad f (x) = Projx(grad f (x)

). (8.23)

For any two smooth vector fields U, V ∈ X(M) and correspondingsmooth extensions U, V ∈ X(U ), the Riemannian connection ∇ onMis related to the Riemannian connection ∇ onM through the identity(valid alongM): U, V are not necessarily defined on all

of M. We interpret ∇UV in the usualway, using the fact that (∇UV)(x) de-pends on U, V only locally around x. Seealso [Lee18, Thm. 8.2].

∇UV = Proj(∇UV). (8.24)

In pointwise notation, we have for all u ∈ TxM:

∇uV = Projx(∇uV). (8.25)

As a result, the Hessian of the function f above is related to the gradi- The Weingarten map W (5.30) and sec-ond fundamental form II (5.31) are alsodefined in the general context of Rie-mannian submanifolds of Riemannianmanifolds, so that expressions (5.33)and (5.34) for the Hessian still hold.

ent and Hessian of f through these relations: let G(x) = grad f (x) bethe gradient vector field of f on M, and let G be a smooth extensionof G to a neighborhood ofM inM. Then, for all u ∈ TxM⊆ TxM,

Hess f (x)[u] = ∇ugrad f = Projx(∇uG

). (8.26)

A similarly simple expression is valid for covariant derivatives of vec-tor fields along curves, in analogy to (5.19):

Ddt

Z(t) = Projc(t)

(Ddt

Z(t))

, (8.27)

where c is a smooth curve on M (hence also on M), Z is a smoothvector field on c (which can be understood both in M and in M), D

dtis the covariant derivative for vector fields on c in M and D

dt is thecovariant derivative for vector fields on c in M. From this expressionwe also recover a convenient formula for the acceleration c′′ = D

dt c′ ofa curve c onM, in terms of its acceleration c = D

dt c in the embeddingspaceM, akin to (5.23):

c′′(t) = Projc(t)(c(t)). (8.28)

Section 5.11 provides pointers regarding normal parts of ∇UV and c.

Page 193: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

general manifolds 193

8.15 Notes and references

Main references for this chapter are the books by Lee [Lee12, Lee18],Brickell and Clark [BC70], O’Neill [O’N83], and Absil et al. [AMS08].

Brickell and Clark define manifolds to be what we call manifolds*.As a result, topological assumptions are always stated explicitly, whichis instructive to track their importance in various aspects of the the-ory. O’Neill defines a manifold to be a Hausdorff topological spaceequipped with a maximal atlas, without requiring second-countability(though see the note on pp21–22). Lee defines topological manifoldsfirst—imposing both Hausdorff and second-countability—and definessmooth manifolds as an additional layer of structure on those spaces,requiring the atlas topology to match the existing topology. We use thesame definition as Absil et al.: this is compatible with Lee’s definitions.

All of these references also lay out the basics of topology. The rel-evance of the topological conditions imposed in Section 8.2 for opti-mization is spelled out in [AMS08, §3.1.2].

Embedded submanifolds are called regular submanifolds by Brickelland Clark, and simply submanifolds by O’Neill. Furthermore, we meanRiemannian submanifolds to be embedded, whereas Lee allows themto be immersed as well, pointing out when it is necessary for them tobe embedded.

We defined tangent vectors as equivalence classes of curves, whichis one of the standard approaches. Another standard definition of tan-gent vectors, favored notably by Lee and O’Neill, is through the notionof derivation. These definitions are equivalent. A (brief) discussion ofthe link between these two definitions appears in [Lee12, p72].

Page 194: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian
Page 195: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

9Quotient manifolds

The Grassmannian Gr(n, p) is the set of linear subpsaces of dimensionp in Rn. Perhaps the best-known example of an optimization problemover Gr(n, p) is principal component analysis (PCA). Given k pointsy1, . . . , yk ∈ Rn, the goal is to find a linear subspace L ∈ Gr(n, p)which fits the data as well as possible, in the following sense:

minL∈Gr(n,p)

k

∑i=1

dist(L, yi)2, (9.1)

where dist(L, y) is the Euclidean distance between y and the point inL closest to y. This particular formulation of the problem admits anexplicit solution involving the SVD of the data matrix M = [y1, . . . , yk].This is not the case for other cost functions, which may be more accom-modating of outliers in the data, or more amenable to the inclusion ofpriors. For these, we may need more general optimization algorithmsto address (9.1). Thus we ask: how can one solve optimization prob-lems over Gr(n, p)?

Any iterative algorithm to minimize a function f : Gr(n, p) → R

generates a sequence of subspaces L0, L1, L2, . . . The first point of orderis to choose how these subspaces are to be represented in memory. Areasonable idea is to represent L ∈ Gr(n, p) with a matrix X ∈ Rn×p

whose columns form a basis for L. For each L, many matrices X fitthis requirement. For numerical reasons, it is often beneficial to useorthonormal bases. Thus, we decide to represent L with a matrix X inSt(n, p), that is, L = span(X) and X>X = Ip.

Even working with orthonormal bases to represent subspaces, thereare still many possible choices. To be definite, we define an equiva-lence relation ∼ over St(n, p): two matrices X, Y ∈ St(n, p) are deemedequivalent if their columns span the same subspace:

X ∼ Y ⇐⇒ span(X) = span(Y) ⇐⇒ X = YQ for some Q ∈ O(p),

where O(p) is the orthogonal group: the set of orthogonal matrices of

Page 196: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

196 an introduction to optimization on smooth manifolds

size p× p. Formally, this allows us to identify subspaces with equiva-lence classes: if L = span(X), we identify L with

[X] = Y ∈ St(n, p) : Y ∼ X = XQ : Q ∈ O(p).

This identification establishes a one-to-one correspondence betweenGr(n, p) and the set of equivalence classes, called the quotient set:

St(n, p)/∼ = [X] : X ∈ St(n, p). (9.2)

It is also common to denote this quotient set by St(n, p)/O(p), to high-light the special role of the orthogonal group in the equivalence rela-tion: we discuss this more below.

Given X ∈ St(n, p) such that L = span(X), the distance functionin (9.1) admits an explicit expression: XX> is the matrix which rep-resents orthogonal projection from Rn to L, so that, in the Euclideannorm ‖ · ‖,

dist(L, y)2 = ‖y− XX>y‖2 = ‖y‖2 − ‖X>y‖2.

Hence, with A = MM>, ‖ · ‖ denoting the Frobenius norm for matricesand

f (X) =k

∑i=1‖X>yi‖2 = ‖X>M‖2 = Tr(X>AX), (9.3)

we may rewrite (9.1) equivalently as

max[X]∈St(n,p)/∼

f ([X]), f ([X]) = f (X). (9.4)

Crucially, f is well defined on the quotient set since f (X) = f (Y)whenever X ∼ Y: we say f is invariant under ∼.

On the one hand, problem (9.4) is closely related to

maxX∈St(n,p)

f (X), (9.5)

which we know how to handle using our optimization tools for em-bedded submanifolds, generating a sequence of matrices X0, X1, . . . inSt(n, p).

On the other hand, a practical implementation of a (yet to be de-termined) optimization algorithm on St(n, p)/∼, which generates asequence of equivalence classes [X0], [X1], . . ., also actually generatesmatrices X0, X1, . . . in Stiefel to represent these equivalence classes.One wonders then: in practical terms, what distinguishes an algorithmon St(n, p)/∼ from one on St(n, p)?

The key consideration is preservation of invariance. To illustrate thisnotion, let us consider how gradient descent proceeds to minimize

Page 197: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 197

f on St(n, p) as a Riemannian submanifold of Rn×p with the usualEuclidean metric. Using the projector to the tangent spaces of Stiefel,ProjSt

X (7.25), the gradient is given by

12

grad f (X) = ProjStX (AX) (9.6)

= (In − XX>)AX + XX>AX− X>AX

2= (In − XX>)AX.

(Notice how the second term vanishes: we will see that this is not byaccident.) Assuming constant step-size α for simplicity, Riemanniangradient descent iterates

Xk+1 = G(Xk) , RXk (−αgrad f (Xk)).

When is it legitimate to think of this sequence of iterates as correspond-ing to a sequence on the quotient set? Exactly when the equivalence classof Xk+1 depends only on the equivalence class of Xk, and not on Xk itself.Indeed, only then can we claim that the algorithm iterates from [Xk] to[Xk+1].

To assess the latter, we must determine how [Xk+1] changes if Xk isreplaced by another representative of the same equivalence class, thatis, if Xk is replaced by XkQ for some orthogonal Q. A first observationis that

∀X ∈ St(n, p), Q ∈ O(p), grad f (XQ) = grad f (X) ·Q.

Hence, if the retraction has the property that This statement relies on the fact:

V ∈ TXSt(n, p) =⇒ VQ ∈ TXQSt(n, p).∀(X, V) ∈ TSt(n, p), Q ∈ O(p), [RXQ(VQ)] = [RX(V)], (9.7)

then it follows that, for all Q ∈ O(p),

[G(XQ)] = [RXQ(−αgrad f (XQ))] = [RX(−αgrad f (X))] = [G(X)].

Thus, under that condition, [Xk+1] is indeed a function of [Xk]:

X ∼ Y =⇒ G(X) ∼ G(Y). (9.8)

We already know retractions which satisfy property (9.7). For ex-ample, the polar retraction (7.22) can be written as

RpolX (V) = (X + V)(Ip + V>V)−1/2,

so that

RpolXQ(VQ) = (X + V)Q ·

(Q>[

Ip + V>V]

Q)−1/2

= RpolX (V) ·Q. (9.9)

Also, the QR retraction (7.20) is such that RQRX (V) is a matrix whose

columns form an orthonormal basis for span(X + V). As a result,

Page 198: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

198 an introduction to optimization on smooth manifolds

RQRXQ(VQ) is a matrix whose columns form a basis for span((X +V)Q),

which of course is the same subspace (it does not, however, satisfy thestronger property that RXQ(VQ) = RX(V) ·Q as the polar one did).

These considerations allow us to conclude that Riemannian gradientdescent for f on St(n, p) with either of these retractions induces a well-defined sequence on the quotient set St(n, p)/∼, defined by the map

[Xk+1] = F([Xk]) , [G(Xk)].

At this point, a few questions come naturally:

1. Is the sequence defined by [Xk+1] = F([Xk]) itself a “gradient de-scent” sequence of sorts for the optimization problem (9.4) on thequotient set?

2. Can we devise more sophisticated algorithms, such as the trust-regions method, to operate on the quotient set?

3. Are other quotient sets similarly amenable to optimization?

We answer all questions in the affirmative. The crux of this chapter isto argue that quotient sets such as St(n, p)/∼ are themselves Rieman-nian manifolds in a natural way, called Riemannian quotient manifolds.This identification of Gr(n, p) with St(n, p)/∼ gives meaning to theclaim that Gr(n, p) is a quotient manifold; it is called the Grassmannmanifold. All the tools and algorithms we have developed for optimiza-tion on general manifolds apply in particular to quotients manifolds.The iterative method described above turns out to be a bona fide Rie-mannian gradient descent method in that geometry, and with morework we can similarly describe second-order optimization algorithms.

Parts of this chapter focus on a particular class of Riemannian quo-tient manifolds obtained through group actions on manifolds, as is thecase for Gr(n, p) constructed here. Particular attention is given tothe practical representation of points and tangent vectors for quotientmanifolds, and to the computation of objects such as gradients andHessians.

What do we stand to gain from the quotient approach? First, itshould be clear that nothing is lost: Riemannian quotient manifoldsare Riemannian manifolds, hence all algorithms and accompanyingtheory apply. Second, optimization on the quotient achieves a naturalgoal: if the cost function of an optimization problem is insensitive tocertain transformations, then it is reasonable to require an algorithmfor that problem to be similarly unfazed. Sometimes, this propertyleads to computational advantages. Even when it does not, the quo-tient perspective can yield better theoretical understanding.

Specifically, consider the local convergence rates we mentioned forgradient descent (Section 4.6), Newton’s method (Theorem 6.4) and

Page 199: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 199

trust regions (Section 6.6): for all of these, the fast convergence guar-antees hold provided the algorithm converges to a critical point wherethe Hessian of the cost function is positive definite. It is easy to comeup with counter-examples showing that the condition is necessary ingeneral. For example, with f (x) = x4 on the real line, gradient de-scent with (appropriate) constant step-size converges sublinearly, andNewton’s method converges only linearly to zero.

As we show in Lemma 9.38, if the cost function on the total space (theset before we pass to the quotient) is invariant under the quotient, thenits Hessian cannot possibly be positive definite at critical points. Thisis because the cost function is constant along the equivalence classes:directions tangent to these equivalence classes are necessarily in thekernel of the Hessian. Thus, the standard fast convergence results donot ever apply on the total space.

Yet, it often happens that we do see fast convergence on the totalspace empirically. This is the case notably for problem (9.5) above, onthe Stiefel manifold. Why is that?

As transpires from the discussion above and as we detail further inthis chapter, the reason is that, under certain circumstances, optimiza-tion algorithms on the total space can be interpreted as matching al-gorithms on the quotient manifold. Moreover, the spurious directionstangent to equivalence classes are quotiented out in their own way, sothat they do not appear in the kernel of the Hessian on the quotientmanifold: that Hessian can be positive definite. In that scenario, thequotient approach does not confer a computational advantage overthe total space approach (the two are algorithmically equivalent), butit does provide the stronger theoretical perspective, aptly explainingwhy we do get fast local convergence.

9.1 A definition and a few facts

Let ∼ be an equivalence relation on a manifold M with equivalenceclasses

[x] = y ∈ M : x ∼ y,

and let

M =M/∼ = [x] : x ∈ M (9.10)

be the resulting quotient set. The canonical projection or natural projec-tion links the total spaceM to its quotientM:

π : M→M : x 7→ π(x) = [x]. (9.11)

The quotient set M inherits a topology from M called the quotienttopology, turning M into a quotient space. This topology is defined as

Page 200: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

200 an introduction to optimization on smooth manifolds

follows:

U ⊆ M is open ⇐⇒ π−1(U ) is open inM.

This notably ensures that π, then called the quotient map, is continuous.Say we equip the quotient spaceMwith a smooth structure (assum-

ing this is possible). Then, it makes sense to ask whether π is smoothand, accordingly, whether its differential at some point has full rank.These considerations enter into the definition of quotient manifold.

Definition 9.1. The quotient set M = M/∼ equipped with a smooth Owing to the rank condition, π is calleda submersion. By construction, it is alsosurjective.

structure is a quotient manifold of M if the projection π (9.11) is smoothand its differential Dπ(x) : TxM→ T[x]M has rank dimM for all x ∈ M.

As an exercise, one can show that the projective space RPn−1 withsmooth structure as in Example 8.10 is a quotient manifold of Rn\0with the equivalence relation that deems two points to be equivalentif they belong to the same line through the origin. However, this wayof identifying quotient manifolds is impractical, as it requires first toknow that the quotient space is a manifold with a certain atlas, then tocheck explicitly that π has the required properties using that particularsmooth structure. In this chapter, we discuss more convenient tools.

By construction, π is continuous with respect to the quotient spacetopology. With a quotient manifold structure on M, π is smooth,hence a fortiori continuous with respect to the atlas topology. In fact,the atlas topology coincides with the quotient topology in that case.We have the following remarkable result.

Theorem 9.2. A quotient space M = M/∼ admits at most one smooth [BC70, Prop. 6.3.1], [Lee12, Thm. 4.31]

structure that makes it a quotient manifold ofM. When this is the case, theatlas topology ofM is the quotient topology.

This statement should be compared to Theorem 8.69 for embed-ded submanifolds: a subset of a manifold admits at most one smoothstructure that makes it an embedded submanifold. Thus, just as itmade sense to say that a subset of a manifold is or is not an embed-ded submanifold, so it makes sense to say that a quotient space of amanifold is or is not a quotient manifold.

A direct consequence of Definition 9.1 and Corollary 8.71 is thatequivalence classes are embedded submanifolds of the total space.As we discuss this, it appears that we must sometimes distinguishbetween [x] as a point of M and [x] as a subset of M. When inneed, we adopt this convention: [x] = π(x) is a point of M, whereas[x] = π−1(π(x)) is a subset ofM.

Proposition 9.3. LetM =M/∼ be a quotient manifold. For any x ∈ M,the equivalence class F = π−1(π(x)), also called a fiber, is closed in M

Page 201: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 201

and it is an embedded submanifold ofM. Its tangent spaces are given by

TyF = ker Dπ(y) ⊆ TyM. (9.12)

In particular, dimF = dimM− dimM.

Proof. Apply Corollary 8.71 with π : M → M as the defining map,and F as the level set y ∈ M : π(y) = [x].

Thus, when an equivalence relation yields a quotient manifold, thatequivalence relation partitions the total space into closed, embeddedsubmanifolds called fibers. In particular, notice that all fibers have thesame dimension. This sometimes allows one to determine quickly thata given quotient space cannot possibly be a quotient manifold—seeExercise 9.7. In the following example, we illustrate Proposition 9.3through the spaces that featured in the introduction.

Example 9.4. Consider the set M = St(n, p)/∼ as in (9.2). We have notyet argued that this is a quotient manifold: we do so in the next section. Fornow, let us assume thatM indeed is a quotient manifold. Then, given a pointX ∈ St(n, p), Proposition 9.3 tells us that the fiber

F = Y ∈ St(n, p) : X ∼ Y = XQ : Q ∈ O(p)

is an embedded submanifold of St(n, p). (We could also show this directly.)The tangent space to F at X is a subspace of TXSt(n, p), corresponding

to the kernel of the differential of π at X (9.12). As Dπ(x) is an abstractobject, it is often more convenient to approach TXF as follows: all tangentvectors in TXF are of the form c′(0) for some smooth curve c : I → F withc(0) = X. Moreover, any such curve is necessarily of the form c(t) = XQ(t)with Q : I → O(p) a smooth curve on the manifold O(p) with Q(0) = Ip.Thus, all tangent vectors in TXF are of the form XQ′(0). Now we recall thatthe tangent space to O(p) at Q(0) = Ip is the set of skew-symmetric matricesof size p (7.30) to conclude that

TXF = XΩ : Ω + Ω>= 0 ⊂ TXSt(n, p).

We can connect this to π: by design, c(t) , π(c(t)) = [X] is a constantcurve on St(n, p)/∼. Since we are assumingM is a quotient manifold, π issmooth too. This allows us to use the chain rule:

0 = c′(0) = Dπ(c(0))[c′(0)] = Dπ(X)[XΩ].

This confirms that any matrix of the form XΩ is in the kernel of Dπ(X).

Theorem 9.2 tells us that a quotient space may be a quotient mani-fold in at most one way. When it is, we sometimes want to have accessto charts of the resulting smooth structure on the quotient manifold.The next result provides such charts. It constitutes one part of what iscalled the rank theorem in differential geometry.

Page 202: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

202 an introduction to optimization on smooth manifolds

Proposition 9.5. Let M = M/∼ be a quotient manifold with canonical [Lee12, Thm. 4.12] [BC70, Prop. 6.1.1]

projection π and dimM = n + k, dimM = n. For all x ∈ M, there existsa chart (U , ϕ) ofM around x and a chart (U , ϕ) ofM around π(x) = [x]such that π(U ) ⊆ U and the coordinate representation of π, Note that U is not guaranteed to contain

whole fibers, that is, π−1(π(U )) may notbe included in U .π = ϕ π ϕ−1 : ϕ(U ) ⊆ Rn+k → ϕ(U ) ⊆ Rn, (9.13)

is simply the function π(z1, . . . , zn+k) = (z1, . . . , zn).

It is an exercise to check that π is an open map, that is: it maps opensets ofM to open sets ofM [Lee12, Prop. 4.28]. We may thus replaceU with π(U ) in Proposition 9.5 when convenient.

Exercise 9.6. Show that the projective space RPn−1 with the smooth struc-ture of Example 8.10 is a quotient manifold of Rn\0 with the equivalencerelation x ∼ y ⇐⇒ x = αy for some α ∈ R.

Exercise 9.7. Consider the following equivalence relation overM = Rn×p,with 1 ≤ p < n: X ∼ Y if and only if Y = XQ for some Q ∈ O(p). ArguethatM/∼ is not a quotient manifold. (Contrast this with the introduction,whereM = St(n, p).)

Exercise 9.8. LetM be a quotient manifold ofM with canonical projectionπ. Show that π is an open map, that is, if U is open in M, then π(U ) isopen inM. Deduce that, for any function f : M→ R, a point x ∈ M is alocal minimizer for f = f π if and only if π(x) is a local minimizer for f .

9.2 Quotient manifolds through group actions

There exists an explicit characterization of which equivalence relationson a manifold M yield quotient manifolds (see Section 9.16). Us-ing this characterization, however, is not straightforward. Fortunately,there exists a special class of suitable equivalence relations definedthrough group actions on manifolds that are both simple to identifyand important in practice. This covers our approach to the Grassmannmanifold in the introduction of this chapter (where the group is O(p))and other examples we discuss below (see Exercise 9.19).

We start with a few definitions regarding groups, Lie groups andgroup actions. A set G equipped with an operation · : G× G → G is agroup if

1. The operation is associative: a · (b · c) = (a · b) · c for all a, b, c ∈ G;

2. There exists a unique element e ∈ G (called the identity) such thate · g = g · e = g for all g ∈ G; and

3. For each g ∈ G there is an element g−1 ∈ G (called the inverse of g)such that g · g−1 = g−1 · g = e.

Page 203: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 203

If the set G is further equipped with a smooth structure—making ita manifold G—and the group operation plays nicely with the smoothstructure, then we call G a Lie group.

Definition 9.9. Let G be both a manifold and a group with operation ·. If theproduct map

prod : G × G → G : (g, h) 7→ prod(g, h) = g · h

and the inverse map

inv : G → G : g 7→ inv(g) = g−1

are smooth, then G is a Lie group. Smoothness of prod is understood withrespect to the product manifold structure on G × G (see Exercise 8.27).

Example 9.10. Some examples of Lie groups include O(n) (the orthogonalgroup), SO(n) (the rotation group) and GL(n) (the general linear group,which is the set of invertible matrices of size n × n), with group operationgiven by the matrix product, and smooth structure as embedded submanifoldsof Rn×n. Their identity is the identity matrix In. Another example is thegroup of translations, Rn, whose group operation is vector addition. Its iden-tity is the zero vector. Yet another common example is the special Euclideangroup, SE(n), whose elements are of the form (R, t) ∈ SO(n)×Rn, withgroup operation (R, t) · (R′, t′) = (RR′, Rt′ + t). The identity element is(In, 0). Equivalently, we may represent (R, t) as the matrix

[ R t0 1], in which

case the group operation is the matrix product.

Elements of a group can sometimes be used to transform points of amanifold. For example, X ∈ St(n, p) can be transformed into anotherelement of St(n, p) by right-multiplication with an orthogonal matrixQ ∈ O(p). Under some conditions, these transformations are calledgroup actions.

Definition 9.11. Given a Lie group G and a manifold M, a left groupaction is a map θ : G ×M→M such that:

1. For all x ∈ M, θ(e, x) = x (identity), and

2. For all g, h ∈ G and x ∈ M, θ(g · h, x) = θ(g, θ(h, x)) (compatibility).

As a consequence, for all g ∈ G, the map x 7→ θ(g, x) is invertible on M,with inverse x 7→ θ(g−1, x). The group action is smooth if θ is smooth asa map on the product manifold G ×M to the manifoldM. We then say thegroup G acts smoothly onM.

Similarly, a right group action is a map θ : M× G → M such thatθ(x, e) = x and θ(x, g · h) = θ(θ(x, g), h), for all g, h ∈ G and x ∈ M, andthis action is smooth if θ is smooth as a map between manifolds.

Page 204: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

204 an introduction to optimization on smooth manifolds

A group action induces an equivalence relation, as follows.

Definition 9.12. The orbit of x ∈ M through the left action θ of G is theset Gx , θ(g, x) : g ∈ G. This induces an equivalence relation ∼ onM:

x ∼ y ⇐⇒ y = θ(g, x) for some g ∈ G,

that is, two points of M are equivalent if they belong to the same orbit. As Some authors write G\M or M/G todistinguish between left and right actionquotients. We always writeM/G.

such, orbits and equivalence classes coincide. We denote the quotient spaceM/∼ asM/G (also called the orbit space), where the specific group actionis indicated by context. (A similar definition holds for right actions.)

Example 9.13. The map θ(X, Q) = XQ defined on St(n, p) × O(p) is asmooth, right group action. Its orbits are the equivalence classes we haveconsidered thus far, namely, [X] = XQ : Q ∈ O(p). Thus, St(n, p)/O(p)is one-to-one with the Grassmann manifold Gr(n, p).

We have already discussed that not all equivalence relations onmanifolds lead to quotient manifolds. Unfortunately, neither do allsmooth group actions: further properties are required. Specifically, itis sufficient for the actions also to be free and proper.

Definition 9.14. A group action θ is free if only the identity fixes any x.Explicitly: a left action is free if θ(g, x) = x =⇒ g = e for all x ∈ M.

Definition 9.15. A left group action θ is proper if Recall that a set S is compact if, given anycollection of open sets whose union con-tains S (that is, an open cover), one canselect a finite number of open sets fromthat collection whose union still containsS (called a finite subcover).

ϑ : G ×M→M×M : (g, x) 7→ ϑ(g, x) = (θ(g, x), x)

is a proper map, that is, any compact subset of M×M maps to a compactsubset of G ×M through ϑ−1. The definition is similar for right actions.

Checking whether an action is free is often straightforward. Check-ing for properness, on the other hand, can be more delicate. Fortu-nately, if the group G is compact (which is the case for SO(n) andO(n)), then every smooth action is proper. If not, see Section 9.16 forsome pointers, specifically Proposition 9.58.

Proposition 9.16. Every smooth action by a compact Lie group is proper. [Lee12, Cor. 21.6]

The reason we require the action to be proper is topological: ifthe action is smooth and proper, then the quotient topology is Haus-dorff [Lee12, Prop. 21.4]. On the other hand, there exist smooth, freeactions that are not proper and for which the quotient topology endsup not being Hausdorff [Lee12, Ex. 21.3, Pb. 21-5]. If the action is notfree, then different orbits could have different dimensions, which isimpossible for a quotient manifold.

We can now state the main theorem of this section. This is our toolof choice to identify quotient manifolds.

Page 205: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 205

Theorem 9.17. If the Lie group G acts smoothly, freely and properly on the [Lee12, Thm. 21.10]

smooth manifoldM, then the quotient spaceM/G is a quotient manifold ofdimension dimM− dimG; orbits (that is, fibers) have dimension dimG.

Example 9.18. Continuing our running example, we now check that theGrassmann manifold, seen as the quotient space St(n, p)/O(p), is indeed aquotient manifold. We already checked that the action θ(X, Q) = XQ issmooth. By Proposition 9.16, it is proper since O(p) is compact. It is alsofree since XQ = X implies Q = Ip (by left-multiplying with X>). Thus,Theorem 9.17 implies Gr(n, p), identified with St(n, p)/O(p), is a quotientmanifold. More explicitly: the theorem tells us there exists a unique smoothstructure which turns Gr(n, p) into a manifold such that

π : St(n, p)→ Gr(n, p) : X 7→ π(X) , [X] = XQ : Q ∈ O(p)

has the properties laid out in Definition 9.1. Additionally, we know that

dim Gr(n, p) = dim St(n, p)− dim O(p) = p(n− p).

By Proposition 9.3, the fibers are closed, embedded submanifolds of St(n, p)with dimension p(p−1)

2 : this is compatible with our work in Example 9.4where we showed the tangent space to a fiber at X is XΩ : Ω ∈ Skew(p).

In contrast, one can check that the group action underlying Exercise 9.7 issmooth and proper, but it is not free: not all orbits have the same dimension,hence the quotient space is not a quotient manifold.

Exercise 9.19. In each item below, a Lie group G (recall Example 9.10) actson a manifold M through some action θ (the first one is a right action, theother two are left actions). Check that these are indeed group actions and thatthe quotient spacesM/G are quotient manifolds.

1. M = SO(n)k, G = SO(n), θ((R1, . . . , Rk), Q) = (R1Q, . . . , RkQ).

2. M = Rm×rr ×Rn×r

r , G = GL(r), θ(J, (L, R)) = (LJ−1, RJ>). Recall that Rm×nk is the set of matrices of

size m× n and rank k.

3. M = Rd×nd , G = SE(d), θ((R, t), X) = RX + t1>.

Describe the equivalence classes and the significance of the quotient manifolds.

9.3 Smooth maps to and from quotient manifolds

Smooth maps on a quotient manifoldM/∼ can be understood entirelythrough smooth maps on the corresponding total spaceM.

Theorem 9.20. Given a quotient manifold M = M/∼ with canonical [Lee12, Thm. 4.29]

projection π and any manifold N , a map F : M→ N is smooth if and onlyif F = F π : M→ N is smooth.

Page 206: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

206 an introduction to optimization on smooth manifolds

M

M

NF

πF = F π

One direction is clear: if F is smooth on the quotient manifold,then F = F π is smooth on the total space by composition: we callF the lift of F. Consider the other direction: if F on M is invariantunder ∼, then it is of the form F = F π for some map F on thequotient and we say F descends to the quotient. To argue that F issmooth if F is smooth we introduce the notion of local section: a mapS which smoothly selects a representative of each equivalence class insome neighborhood. One can establish their existence using the specialcharts afforded by Proposition 9.5 (we omit a proof).

Proposition 9.21. For any x ∈ M there exists a neighborhood U of [x] on [Lee12, Thm. 4.26] [BC70, Prop. 6.1.4]

the quotient manifoldM =M/∼ and a smooth map S : U → M (called alocal section) such that π S is the identity map on U and S([x]) = x.

Proof of Theorem 9.20. If F is smooth, then F is smooth by composition.The other way around, if F is smooth, let us show that F is smooth at anarbitrary [x]. Use Proposition 9.21 to pick a local section S defined ona neighborhood U of [x]. Since F = F π, we find that F|U = F S: thisis smooth by composition. Thus, F is smooth in some neighborhoodaround any point [x], that is, F is smooth.

We note another result, this one about maps into quotient manifolds.

M

MNF

Proposition 9.22. Let F : N →M be a map from one manifold into another,and let M = M/∼ be a quotient manifold of M with projection π. If Fis smooth, then F = π F : N → M is smooth. The other way around, ifF : N → M is smooth, then for all [x] ∈ M there exists a neighborhood Uof [x] such that F|F−1(U ) = π F for some smooth map F : F−1(U )→M.

Proof. The first part is through composition of smooth maps. For thesecond part, consider F = S F with a local section S defined on U , asprovided by Proposition 9.21: the domain F−1(U ) is open in N sinceF is continuous, F is smooth by composition, and it is indeed the casethat π F is equal to F on F−1(U ) since π S is the identity on U .

The first part states that a smooth map into the total space yieldsa smooth map into the quotient manifold after composition with π.In particular, if c : I → M is a smooth curve on the total space, thenc = π c is a smooth curve on the quotient manifold.

The second part offers a partial converse. For example, if c : I →Mis a smooth curve on the quotient, then for any t0 ∈ I there exists aninterval J ⊆ I around t0 and a smooth curve c : J → M such thatc(t) = π(c(t)).

Page 207: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 207

9.4 Tangent, vertical and horizontal spaces

Tangent vectors to a quotient manifoldM =M/∼ are rather abstractobjects: a point [x] ∈ M itself is an equivalence class, and a tangentvector ξ ∈ T[x]M is an equivalence class of smooth curves onM pass-ing through [x]. Fortunately, we can put the total spaceM to good useto select concrete representations of tangent vectors.

In all that follows, it is helpful to think of the case where M isitself an embedded submanifold of a linear space E (in our runningexample, M = St(n, p) is embedded in Rn×p). Then, tangent vectorstoM can be represented easily as matrices, as we did in early chapters.

Accordingly, our goal is to establish one-to-one correspondences be-tween certain tangent vectors ofM and tangent vectors ofM. Owingto Definition 9.1, a tool of choice for this task is Dπ(x): it maps TxMonto T[x]M. This map, however, is not one-to-one. To resolve thisissue, we proceed to restrict its domain

Consider a point x ∈ M and its fiber F . We know from Propo-sition 9.3 that TxF is a subspace of TxM and that it coincides withthe kernel of Dπ(x). We call it the vertical space Vx. In some sense,vertical directions are the “uninteresting” directions of TxM from thestandpoint of the quotient manifold. If M is a Riemannian manifold, Technically, the Riemannian metric on

M is not required: one could just aswell define Hx to be any subspace ofTxM such that the direct sum of Vx andHx coincides with TxM. However, thisleaves a lot of freedom that we do notneed. We opt for this more directive def-inition of horizontal space, while notingthat other authors use the terminologyin a broader sense [AMS08, §3.5.8].

we have access to an inner product 〈·, ·〉x on TxM, which naturallysuggests that we also consider the orthogonal complement of Vx.

Definition 9.23. For a quotient manifold M =M/∼, the vertical spaceat x ∈ M is the subspace

Vx = TxF = ker Dπ(x)

where F = y ∈ M : y ∼ x is the fiber of x. IfM is Riemannian, we callthe orthogonal complement of Vx the horizontal space at x:

Hx = (Vx)⊥ =

u ∈ TxM : 〈u, v〉x = 0 for all v ∈ Vx

.

Then, TxM = Vx ⊕Hx is a direct sum of linear spaces.

We can now make the following claim: since ker Dπ(x) = Vx, therestricted linear map

Dπ(x)|Hx : Hx → T[x]M (9.14)

is bijective. As such, we may use (concrete) horizontal vectors at x torepresent (abstract) tangent vectors at [x] unambiguously. The formerare called horizontal lifts of the latter.

Definition 9.24. Consider a point x ∈ M and a tangent vector ξ ∈ T[x]M.The horizontal lift of ξ at x is the (unique) horizontal vector u ∈ Hx suchthat Dπ(x)[u] = ξ. We write

u = (Dπ(x)|Hx )−1[ξ] = liftx(ξ). (9.15)

Page 208: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

208 an introduction to optimization on smooth manifolds

These compositions are often useful:

Dπ(x) liftx = Id and liftx Dπ(x) = ProjHx , (9.16)

where ProjHx is the orthogonal projector from TxM to Hx.

Conveniently, this definition also allows us to understand smoothcurves that represent ξ on the quotient manifold. Indeed, since thehorizontal lift u of ξ at x is a tangent vector to M at x, there exists asmooth curve c : I → M such that c(0) = x and c′(0) = u. Push thiscurve to the quotient manifold as follows:

c = π c : I →M.

This is a curve on M, smooth by composition. Moreover, c(0) = [x]and, by the chain rule,

c′(0) = Dπ(c(0))[c′(0)] = Dπ(x)[u] = ξ. (9.17)

In other words: c = π c is a smooth curve on the quotient spacewhich passes through [x] with velocity ξ.

Of course, the horizontal lift depends on the point at which thevector is lifted, but there is no ambiguity as to which abstract tangentvector it represents. Specifically, for a tangent vector ξ ∈ T[x]M, ifx ∼ y, we may consider horizontal lifts ux ∈ Hx and uy ∈ Hy. While ux

and uy are generally different objects, they represent the same tangentvector ofM:

Dπ(x)[ux] = ξ = Dπ(y)[uy]. (9.18)

The following example illustrates the concept of vertical and horizontalspaces for St(n, p)/O(p) and shows how horizontal lifts of a samevector at two different points of a fiber are related.

Example 9.25. In Example 9.18 we determined the tangent spaces of fibersofM = St(n, p)/O(p), so that

VX = XΩ : Ω ∈ Skew(p).

With the usual Riemannian metric on St(n, p), namely, 〈U, V〉X = Tr(U>V),it follows that

HX = U ∈ TXSt(n, p) : 〈U, XΩ〉X = 0 for all Ω ∈ Skew(p).

In this definition, we conclude that X>U must be symmetric. Yet, from (7.15)we also know that U ∈ Rn×p is in TXSt(n, p) exactly when X>U is skew-symmetric. Hence, we deduce that

HX = U ∈ Rn×p : X>U = 0.

Page 209: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 209

For a given ξ ∈ T[X]M, say UX is its horizontal lift at X. Consider anotherpoint in [X], namely, Y = XQ for some Q ∈ O(p). What is the horizontallift of ξ at Y? To determine this, as a first step, we select a smooth curve c onSt(n, p) such that c(0) = X and c′(0) = UX . From eq. (9.17) we know that

ξ = (π c)′(0).

Now, consider this other smooth curve on St(n, p): c(t) = c(t)Q. Clearly,c(0) = XQ = Y and c′(0) = c′(0)Q = UXQ . Since by construction π cand π c are the same curve onM, we may conclude that

ξ = (π c)′(0) = Dπ(c(0))[c′(0)] = Dπ(Y)[UXQ].

Crucially, UXQ is a horizontal vector at Y. Uniqueness of horizontal liftsthen tells us that UY = UXQ is the horizontal lift of ξ at Y, that is,

liftXQ(ξ) = liftX(ξ) ·Q. (9.19)

9.5 Vector fields

A vector field on a quotient manifold M is defined in the usual wayas a suitable map from M to the tangent bundle TM. In light of theabove discussion regarding horizontal lifts of vectors, it is natural torelate vector fields onM to horizontal vector fields, that is, vector fieldson the total space whose tangent vectors are horizontal.

Specifically, if V is a vector field onM =M/∼, then

V(x) = liftx(V([x])) (9.20)

uniquely defines a horizontal vector field V called the horizontal lift ofV. We also write more compactly

V = lift(V). (9.21)

Conveniently, a vector field is smooth exactly if its horizontal lift issmooth.

Theorem 9.26. A vector field V on a quotient manifold M =M/∼ withcanonical projection π is related to its horizontal lift V by:

V π = Dπ V. (9.22)

Furthermore, V is smooth onM if and only if V is smooth onM. M

M

TM

TM

V

π

V

The “if” direction of this proposition is fairly direct. To establishthe “only if” part, we need one additional technical result first. FromProposition 9.5, recall that for all x′ ∈ M there exists a chart (U , ϕ)

of M around x′ and a chart (U , ϕ) of M around π(x′) = [x′] suchthat π = ϕ π ϕ−1 is simply π(z1, . . . , zn+k) = (z1, . . . , zn), withdimM = n + k and dimM = n. Recall also the definition of coordi-nate vector fields given by equation (8.11).

Page 210: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

210 an introduction to optimization on smooth manifolds

Proposition 9.27. The coordinate vector fields W1, . . . , Wn+k for the chartϕ have the property that (with e1, . . . , en the canonical basis vectors of Rn):

Dπ(x)[Wi(x)] =

(Dϕ(π(x)))−1[ei] if i ∈ 1, . . . n,0 if i ∈ n + 1, . . . , n + k.

In particular, Wn+1, . . . , Wn+k are vertical.

Proof. Each coordinate vector field Wi is defined for z ∈ ϕ(U ) by (8.11):

Wi(ϕ−1(z)) = Dϕ−1(z)[ei], (9.23)

where ei is the ith canonical basis vector of Rn+k. Differentiate π at zalong the direction z ∈ Rn+k: using the simple expression of π on oneside, and the chain rule for π = ϕ π ϕ−1 on the other side, we get

(z1, . . . , zn) = Dπ(z)[z]

= Dϕ(π(ϕ−1(z)))[Dπ(ϕ−1(z))

[Dϕ−1(z)[z]

]].

Introducing the notation x = ϕ−1(z), the expression simplifies to:

(z1, . . . , zn) = Dϕ(π(x))[Dπ(x)

[Dϕ−1(z)[z]

]]. (9.24)

In particular, for z = ei we recognize the coordinate vector fields asin (9.23) so that

Dϕ(π(x)) [Dπ(x) [Wi(x)]] =

ei if i ∈ 1, . . . , n,0 if i ∈ n + 1, . . . , n + k.

To conclude, note that Dϕ(π(x)) is invertible since ϕ is a chart.

We can now give a proof for our main result characterizing smooth-ness of vector fields on quotient manifolds.

Proof of Theorem 9.26. Equation (9.22) follows from the definition ofV (9.21) and from the properties of horizontal lifts (9.16). Using Theo-rem 9.20 then equation (9.22), we find these equivalences:

V is smooth ⇐⇒ V π is smooth ⇐⇒ Dπ V is smooth.

Since Dπ is smooth by Proposition 8.40, if V is smooth, then V issmooth by composition.

The other way around, if V is smooth, then Dπ V is smooth. Wewant to deduce that V is smooth. To this end, for any x′ ∈ M, summonthe coordinate vector fields W1, . . . , Wn+k afforded by Proposition 9.27

and defined on some neighborhood U of x′. By Corollary 8.47, thereexist unique functions gi : U → R such that, on the domain U ,

V(x) =n+k

∑i=1

gi(x)Wi(x), (9.25)

Page 211: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 211

and V is smooth on U if (and only if) these functions are smooth.We first show g1, . . . , gn are smooth. Since Dπ V is smooth,

x 7→n+k

∑i=1

gi(x)Dπ(x)[Wi(x)]

is smooth. Using properties of Dπ Wi specified by Proposition 9.27,we further find that

x 7→n

∑i=1

gi(x) (Dϕ(π(x)))−1 [ei] = (Dϕ(π(x)))−1 [(g1(x), . . . , gn(x))]

is smooth, where ei is the ith canonical basis vector of Rn. SinceDϕ(π(x)) is smooth as a function of x (because it is part of a chartfor TM, see Theorem 8.39), it follows that g1, . . . , gn are smooth.

It only remains to show gn+1, . . . , gn+k are also smooth. To this end,recall that, in defining horizontal spaces, we invoked a Riemannianmetric 〈·, ·〉x on M. We use it here too, noting once again that thisstructure is not strictly necessary. We establish linear equations relat-ing the coordinate functions. With j ∈ 1, . . . , k, we get k equations bytaking an inner product of (9.25) against Wn+j. Since V is horizontaland each Wn+j is vertical, we find:

0...0

=

⟨W1, Wn+1

⟩· · ·

⟨Wn, Wn+1

⟩...

...⟨W1, Wn+k

⟩· · ·

⟨Wn, Wn+k

g1...

gn

+

⟨Wn+1, Wn+1

⟩· · ·

⟨Wn+k, Wn+1

⟩...

...⟨Wn+1, Wn+k

⟩· · ·

⟨Wn+k, Wn+k

gn+1...

gn+k

.

Since (a) the functions⟨Wi, Wj

⟩are smooth for all i and j (by definition

of Riemannian metrics and smoothness of coordinate vector fields),(b) the coordinate functions g1, . . . , gn are smooth, and (c) the k × kcoefficient matrix is positive definite (by linear independence of thecoordinate vector fields) and thus smoothly invertible, we concludethat gn+1, . . . , gn+k are indeed smooth. This confirms V is smooth atan arbitrary x′, hence V is smooth.

In light of the above result, actions of smooth vector fields on smoothfunctions on the quotient manifold are easily understood in the totalspace.

Proposition 9.28. For a quotient manifold M = M/∼ with canonicalprojection π, consider V ∈ X(M) and f ∈ F(M) together with their liftsV ∈ X(M) and f ∈ F(M). Then, the lift of V f is V f , that is:

(V f ) π = V f . (9.26)

In words: we may lift then act, or act then lift.

Page 212: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

212 an introduction to optimization on smooth manifolds

Proof. By definition of the action of a smooth vector field on a smoothfunction (8.10), for all [x] ∈ M,

(V f )([x]) = D f ([x])[V([x])].

On the other hand, by the chain rule on f = f π and (9.22),

(V f )(x) = D f (x)[V(x)] = D f ([x])[Dπ(x)[V(x)]] = D f ([x])[V([x])].

Hence, (V f )(x) = (V f )(π(x)) for all x ∈ M.

Another useful consequence of Theorem 9.26 is that we can con-struct local frames (Definition 3.58) for M that separate into horizon-tal and vertical parts. We use this and the next proposition to arguesmoothness of certain retractions in Theorem 9.32 below.

Proposition 9.29. Let M = M/∼ be a quotient manifold with canonical That the local frame is orthonormalmeans that, for all x in the domain,

⟨Wi(x), Wj(x)

⟩x =

1 if i = j,0 otherwise.

See also Section 9.7 for a comment re-garding orthonormality of W1, . . . , Wn.

projection π and dimM = n, dimM = n + k. For every x ∈ M, thereexists an orthonormal local frame W1, . . . , Wn+k ofM smoothly defined on aneighborhood U of x inM such that

1. W1, . . . , Wn are horizontal vector fields, and

2. Wn+1, . . . , Wn+k are vertical vector fields.

Also, Wi = Dπ[Wi] for i = 1, . . . , n form a local frame forM on π(U ).

Proof. By Proposition 8.46, the coordinate vector fields W1, . . . , Wn+k

provided by Proposition 9.27 already form a local frame. Moreover,Wn+1, . . . , Wn+k are already vertical. However, W1, . . . , Wn may not behorizontal. To build W1, . . . , Wn+k, apply Gram–Schmidt orthogonal-ization to W1, . . . , Wn+k in reverse order: it is an exercise to verify thatthis achieves the desired result and preserves smoothness.

We can use this last proposition to show that the lift operator issmooth. To make sense of this statement, we resort to local sections(Proposition 9.21).

Proposition 9.30. For every [x′] on a quotient manifoldM =M/∼, thereexists a local section S : U →M on a neighborhood U of [x′] such that

` : TU → TM : ([x], ξ) 7→ `([x], ξ) = liftS([x]) (ξ)

is smooth.

Proof. Using Proposition 9.29, select a local frame W1, . . . , Wn+k on aneighborhood U of x′ in M. This also yields a corresponding lo-cal frame W1, . . . , Wn on U = π(U ) (a neighborhood of [x′]) definedby Wi = Dπ[Wi]. By construction, W1, . . . , Wn are horizontal andWn+1, . . . , Wn+k are vertical. Select a local section S : U → M such

Page 213: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 213

that S([x′]) = x′ (if this requires reducing the domain U , do so andreduce U as well to preserve the relation U = π(U )). Notice that thesedomains are still neighborhoods of [x′] and x′ respectively, and the lo-cal frames are well defined on them. Further select a chart (U , ϕ) ofM around [x′] and a chart (U , ϕ) ofM around x′ such that S(U ) ⊆ U ;again, reduce domains if necessary.

Use the local frame W1, . . . , Wn to build a chart of TU as follows:

([x], ξ) 7→ (ϕ([x]), a1, . . . , an),

where a1, . . . , an are defined through ξ = a1W1([x]) + · · ·+ anWn([x]).That this is a chart follows from the fact that basic charts of the tangentbundle are defined using coordinate vector fields (see Theorem 8.39),and changing coordinates between these and any local frame is a dif-feomorphism. Likewise, build a chart of TM on the domain TU as

(x, u) 7→ (ϕ(x), a1, . . . , an+k),

where ais are uniquely defined by u = a1W1(x) + · · ·+ an+kWn+k(x).We can write ` through these charts as ˜ : R2n → R2(n+k): since

liftS([x])(ξ) = liftS([x]) (a1W1([x]) + · · ·+ anWn([x]))

= a1W1(S([x])) + · · ·+ anWn(S([x])),

the coordinates of the vector part of `([x], ξ) are obtained simply byappending k zeros, so that

˜(z1, . . . , zn, a1, . . . , an) =(

ϕ(S(ϕ−1(z))), a1, . . . , an, 0, . . . , 0).

This is a smooth function, hence ` is smooth.

Exercise 9.31. Work out the details for the proof of Proposition 9.29.

9.6 Retractions

Given a retraction R on the total space M, we may try to define aretraction R on the quotient manifoldM as follows:

R[x](ξ) =[Rx(liftx(ξ))

]. (9.27)

If this is well defined, that is, if the right-hand side does not dependon the choice of lifting point x ∈ [x], this is indeed a retraction.

Theorem 9.32. If the retraction R on the total spaceM satisfies [AMS08, Prop. 4.1.3]

x ∼ y =⇒ Rx(liftx(ξ)) ∼ Ry(lifty(ξ)) (9.28)

for all ([x], ξ) ∈ TM, then (9.27) defines a retraction R onM =M/∼.

Page 214: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

214 an introduction to optimization on smooth manifolds

Proof. Since liftx(0) = 0, it holds that R[x](0) = [x]. Assuming for nowthat R is indeed smooth, by the chain rule, for all ζ ∈ T[x]M,

DR[x](0)[ζ] = Dπ(x)[DRx(0)[Dliftx(0)[ζ]]

]= ζ,

where we used Dliftx(0) = liftx since it is a linear operator, DRx(0)is identity since R is a retraction, and Dπ(x) liftx is identity. Thisconfirms that DR[x](0) is the identity operator on T[x]M.

To verify smoothness, invoke Proposition 9.30 to select a local sec-

tion S : U → M; then, R[x](ξ) = π(

RS([x])

(liftS([x])(ξ)

))is smooth

on TU since π, S and R are smooth, and so is the map ([x], ξ) 7→liftS([x])(ξ). To conclude, repeat this argument on a collection of do-mains U to cover all of TM.

Example 9.33. As we can guess from the introduction of this chapter, boththe QR retraction and the polar retraction on St(n, p) satisfy the condition inTheorem 9.32. Indeed, from (9.19) we know that, for all Q ∈ O(p),

XQ + liftXQ(ξ) = (X + liftX(ξ)) Q.

As a result, these are valid retractions on the quotient manifold St(n, p)/O(p):

RQR[X]

(ξ) = [qfactor(X + liftX(ξ))] , and (9.29)

Rpol[X]

(ξ) = [pfactor(X + liftX(ξ))] , (9.30)

where qfactor extracts the Q-factor of a QR decomposition of a matrix inRn×p, and pfactor extracts its polar factor: see (7.20) and (7.22).

9.7 Riemannian quotient manifolds

A quotient manifold M = M/∼ is a manifold in its own right. Assuch, we may endow it with a Riemannian metric of our choosing. Asis the case for Riemannian submanifolds—which inherit their metricfrom the embedding space—endowing the quotient manifold with ametric inherited from the total space leads to nice formulas for objectssuch as gradients, connections, Hessians and covariant derivatives.

What does it take for the Riemannian metric ofM to induce a Rie-mannian metric on the quotient manifoldM? A natural idea is to tryto work with horizontal lifts. Specifically, consider ξ, ζ ∈ T[x]M. It istempting to (tentatively) define an inner product 〈·, ·〉[x] on T[x]M by

〈ξ, ζ〉[x] = 〈liftx(ξ), liftx(ζ)〉x , (9.31)

where 〈·, ·〉x is the Riemannian metric on TxM. For this to make sense,the definition of 〈ξ, ζ〉[x] may not depend on our choice of x: the point

Page 215: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 215

at which tangent vectors are lifted. That is, for all ξ, ζ ∈ T[x]M, wemust have

x ∼ y =⇒ 〈liftx(ξ), liftx(ζ)〉x =⟨lifty(ξ), lifty(ζ)

⟩y . (9.32)

If this condition holds for all [x], we may ask whether (9.31) definesa Riemannian metric on M. The answer is yes. Indeed, recall fromDefinition 8.50 that a metric is Riemannian if for every two smoothvector fields U, V ∈ X(M) the function

f ([x]) = 〈U([x]), V([x])〉[x]

is smooth on M. To see that this is the case, consider the horizontallifts U, V of U, V, and the function f = 〈U, V〉 onM:

f (x) = 〈U(x), V(x)〉x = 〈liftx(U([x])), liftx(V([x]))〉x = f ([x]).

The function f is smooth since U and V are smooth by Theorem 9.26.Furthermore, f = f π, which shows f is smooth by Theorem 9.20.This discussion yields the following result, which doubles as a defini-tion of Riemannian quotient manifold. Notice also how, by construction, The term “Riemannian quotient mani-

fold” is coined in [AMS08, p53].lifting commutes with taking inner products, that is,

∀U, V ∈ X(M), 〈U, V〉 π = 〈lift(U), lift(V)〉 . (9.33)

Theorem 9.34. If the Riemannian metric onM satisfies (9.32), then (9.31)defines a Riemannian metric on the quotient manifold M = M/∼. Withthis metric,M is called a Riemannian quotient manifold ofM.

For a Riemannian quotient manifold, Dπ(x)|Hx and its inverse liftx

are isometries for all x ∈ M; the canonical projection π is then called aRiemannian submersion [O’N83, Def. 7.44]. One particular consequenceis that the vector fields Wi in Proposition 9.29 are orthonormal.

Example 9.35. With the usual trace inner product on St(n, p) to make it aRiemannian submanifold of Rn×p, we consider the following tentative metricfor St(n, p)/O(p):

〈ξ, ζ〉[X] = 〈U, V〉X = Tr(U>V),

where U = liftX(ξ) and V = liftX(ζ). Using the relationship (9.19) betweenlifts at different points of a fiber, we find that, for all Q ∈ O(p),⟨

liftXQ(ξ), liftXQ(ζ)⟩

XQ = 〈UQ, VQ〉XQ = Tr((UQ)>(VQ))

= Tr(U>V) = 〈U, V〉X = 〈liftX(ξ), liftX(ζ)〉X .

This confirms that the tentative metric is invariant under the choice of lift-ing point: condition (9.32) is fulfilled, thus Theorem 9.34 tells us this is aRiemannian metric on the quotient manifold, turning it into a Riemannianquotient manifold.

Page 216: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

216 an introduction to optimization on smooth manifolds

9.8 Gradients

The gradient of a smooth function on a quotient manifold equippedwith a Riemannian metric is defined in the same way as for any man-ifold, see Definition 8.52. Being a smooth vector field on the quotientmanifold, the gradient is an abstract object. Prompted by the discus-sions of the last few sections, we aim to represent the gradient via ahorizontal lift. In the important special case of a Riemannian quotientmanifold as defined through Theorem 9.34, this can be done rathereasily, as we now show.

Consider f : M → R and its lift f = f π. On the one hand, thegradient of f with respect to the metric onM satisfies:

∀([x], ξ) ∈ TM, D f ([x])[ξ] = 〈grad f ([x]), ξ〉[x] .

On the other hand, the gradient of the lifted function f with respect tothe metric on the total spaceM obeys:

∀(x, u) ∈ TM, D f (x)[u] =⟨grad f (x), u

⟩x .

Fix a point x ∈ M. Starting with the latter, using the chain rule onf = f π, and concluding with the former we find:

∀u ∈ TxM,⟨grad f (x), u

⟩x = D f (x)[u]

= D f (π(x))[Dπ(x)[u]]

= 〈grad f ([x]), Dπ(x)[u]〉[x] .

This holds for all tangent vectors. Thus, for horizontal vectors in par-ticular, using the definition of metric on a Riemannian quotient mani-fold given by (9.31), we get

∀u ∈ Hx,⟨grad f (x), u

⟩x = 〈grad f ([x]), Dπ(x)[u]〉[x]= 〈liftx(grad f ([x])), u〉x .

This tells us that the horizontal part of grad f (x) is equal to the lift ofgrad f ([x]) at x. What about the vertical part? That one is necessarilyzero, owing to the fact that f is constant along fibers. Indeed,

∀v ∈ Vx,⟨grad f (x), v

⟩x = D f (x)[v] = D f ([x])[Dπ(x)[v]] = 0,

since Dπ(x)[v] = 0 for v ∈ Vx. This leads to a simple conclusion.

Proposition 9.36. The Riemannian gradient of f on a Riemannian quotientmanifold is related to the Riemannian gradient of the lifted function f = f π

on the total space via

liftx(grad f ([x])) = grad f (x), (9.34)

for all x ∈ M.

Page 217: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 217

In words: to compute the horizontal lift of the gradient of a smoothfunction f on a Riemannian quotient manifold, we need only computethe gradient of the lifted function, f = f π. In other words: takinggradients commutes with lifting. Compare with (8.23) for Riemanniansubmanifolds.

Example 9.37. In the introduction of this chapter, we considered the costfunction f (9.3) defined on St(n, p):

f (X) = Tr(X>AX).

This function has the invariance f (XQ) = f (X) for all Q ∈ O(p). Thus,there is a well-defined smooth function f on the Riemannian quotient man-ifold St(n, p)/O(p), related to f by f = f π. Remembering the expres-sion (9.6) for the gradient of f with respect to the usual Riemannian metricon St(n, p), and applying Proposition 9.36 to relate it to the gradient of f onthe Riemannian quotient manifold, we find:

liftX(grad f ([X])) = grad f (X) = 2(In − XX>)AX. (9.35)

Notice how the gradient of f is necessarily horizontal: comparing with the ex-plicit description of the horizontal and vertical spaces given in Example 9.25,we see why one of the terms in (9.6) had to cancel.

9.9 A word about Riemannian gradient descent

Consider a smooth cost function f on a quotient manifoldM =M/∼endowed with a Riemannian metric and a retraction R. Given an initialguess [x0] ∈ M, RGD on f iterates

[xk+1] = R[xk ](−αkgrad f ([xk])) (9.36)

with step-sizes αk determined in some way. How can we run thisabstract algorithm numerically, in practice?

The first step is to decide how to store the iterates [x0], [x1], [x2], . . .in memory. An obvious choice is to store x0, x1, x2, . . . themselves.These are points of M: if the latter is an embedded submanifold of aEuclidean space for example, this should be straightforward.

Having access to xk as a representative of [xk], we turn to computinggrad f ([xk]). In the spirit of Section 9.4, we consider its horizontal liftat xk. This is a tangent vector toM at xk: it should be straightforwardto store in memory as well. If M is a Riemannian quotient manifoldofM, then Proposition 9.36 conveniently tells us that

liftxk (grad f ([xk])) = grad f (xk), (9.37)

where f = f π and π : M → M is the canonical projection. Thus,by computing grad f (xk), we get a hold of grad f ([xk]).

Page 218: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

218 an introduction to optimization on smooth manifolds

With these ingredients in memory, it remains to discuss how we cancompute xk+1. Let us assume that R is related to a retraction R onMthrough (9.27). Then, proceeding from (9.36) we deduce that

[xk+1] = R[xk ](−αkgrad f ([xk]))

=[Rxk (−αk liftxk (grad f ([xk])))

]=[Rxk (−αkgrad f (xk))

]. (9.38)

Thus, if M is a Riemannian quotient manifold of M and if R and Rare related via (9.27), then numerically iterating

xk+1 = Rxk (−αkgrad f (xk)) (9.39)

on M is equivalent to running the abstract iteration (9.36) on M. In-terestingly, iteration (9.39) is nothing but RGD on f . In this sense, andunder the stated assumptions, RGD onM and onM are identical.

As a technical point, note that for (9.39) to be a proper instantiationof (9.36), we must make sure that the step-size αk is chosen as a func-tion of [xk] but not as a function of xk. Under the same assumptionsas above, this is indeed the case so long as αk is determined based onthe line-search function (and possibly other invariant quantities)—thiscovers typical line-search methods. Explicitly, the line-search functionsfor f at x and for f at [x] are the same:

∀t, f(Rx(−tgrad f (x))

)= f

(R[x](−tgrad f ([x]))

).

Though running RGD onM or onMmay be the same, we still reapa theoretical benefit from the quotient perspective. We discussed thelocal convergence behavior of RGD in Section 4.6, noting that we mayexpect linear convergence to a local minimizer if the Hessian of the costfunction at that point is positive definite. Crucially, the cost functionf on the total spaceM cannot admit such critical points because of itsinvariance under ∼.

Lemma 9.38. Let M be a Riemannian manifold and let f : M → R besmooth on a quotient manifold M = M/∼ with canonical projection π.If x ∈ M is a critical point for f = f π, then the vertical space Vx isincluded in the kernel of Hess f (x). In particular, if dimM < dimM thenHess f (x) is not positive definite.

Proof. Pick an arbitrary vertical vector v ∈ Vx. Since the fiber of x isan embedded submanifold of M with tangent space Vx at x, we canpick a smooth curve c on the fiber of x such that c(0) = x and c′(0) =v. With ∇ and D

dt denoting the Riemannian connection and inducedcovariant derivative onM, we have these identities as in (5.20):

Hess f (x)[v] = ∇vgrad f =Ddt

grad f (c(t))∣∣∣∣t=0

.

Page 219: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 219

By Proposition 9.36, the fact that x is a critical point for f implies that[x] is a critical point for f . Still using that same proposition, we alsosee that

grad f (c(t)) = liftc(t)(grad f ([c(t)])) = liftc(t)(grad f ([x])) = 0.

Thus, we conclude that Hess f (x)[v] = 0.

Thus, the standard theory does not predict fast local convergencefor RGD on f .

The good news is: the trivial eigenvalues associated to vertical di-rections do not appear in the spectrum of the Hessian of f on thequotient manifold (see Exercise 9.43). Thus, if the version of RGD weactually run on M is equivalent to RGD on M, we may apply thelocal convergence results of Section 4.6 to f rather than to f . In manyinstances, the local minimizers of f do have the property that the Hes-sian there is positive definite, in which case we can claim (and indeedobserve) fast local convergence on the quotient manifold.

As a closing remark: bear in mind that, in full generality, givena sequence x0, x1, x2, . . . on M, it may happen that the sequence ofequivalence classes [x0], [x1], [x2], . . . converges to a limit point in M,while x0, x1, x2, . . . itself does not converge inM.

9.10 Connections

Let M be a Riemannian manifold. Recall from Theorem 8.58 thatM is equipped with a uniquely defined Riemannian connection, heredenoted by ∇. Likewise, a Riemannian quotient manifoldM =M/∼is equipped with its own uniquely defined Riemannian connection, ∇.Conveniently, due to the strong link between the Riemannian metricon M and that on M, their Riemannian connections are also tightlyrelated. The main object of this section is to establish this formula:

lift(∇UV) = ProjH(∇UV

), (9.40)

where lift : X(M) → X(M) returns the horizontal lift of a vectorfield (9.21), U = lift(U), V = lift(V), and ProjH : X(M) → X(M)

orthogonally projects each tangent vector to the horizontal space at itsbase.

The proof of this statement is based on the Koszul formula (5.10),which we first encountered in the proof of Theorem 5.4. Recall that thisformula completely characterizes the Riemannian connection in termsof the Riemannian metric and Lie brackets: for all U, V, W ∈ X(M),

2 〈∇UV, W〉 = U 〈V, W〉+ V 〈W, U〉 −W 〈U, V〉− 〈U, [V, W]〉+ 〈V, [W, U]〉+ 〈W, [U, V]〉 .

Page 220: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

220 an introduction to optimization on smooth manifolds

To make progress, we must first understand how Lie brackets on thequotient manifold are related to Lie brackets of horizontal lifts.

Proposition 9.39. For any two smooth vector fields U, V ∈ X(M) and theirhorizontal lifts U, V ∈ X(M),

lift([U, V]) = ProjH([U, V]). (9.41)

Proof. From (9.26) and (9.33), recall that for all U, V ∈ X(M) andf ∈ F(M) and their lifts U = lift(U), V = lift(V) and f = f π:

(V f ) π = V f , 〈U, V〉 π = 〈U, V〉 . (9.42)

Then, by definition of Lie brackets,

lift([U, V]) f = ([U, V] f ) π

= (UV f ) π − (VU f ) π

= UV f − VU f

= [U, V] f

= ProjH([U, V]) f ,

where the last equality holds because f is constant along vertical di-rections. The fact that this holds for all lifted functions f allows toconclude. Slightly more explicitly, using V f =

⟨V, grad f

⟩twice, the

above can be reformulated as:

〈lift([U, V]), grad f 〉 = 〈ProjH([U, V]), grad f 〉.

Then, consider for each point x ∈ M a collection of dimM functionsf whose gradients at [x] form a basis for the tangent space T[x]M: thegradients of their lifts form a basis for the horizontal space Hx, whichforces the horizontal parts of lift([U, V]) and ProjH([U, V]) to coincide.Since both fields are horizontal, they are equal.

With U, V, W denoting the horizontal lifts of U, V and W, using (9.41)and (9.42) several times we find that:

(U 〈V, W〉) π = U(〈V, W〉 π) = U⟨V, W

⟩, and

〈U, [V, W]〉 π = 〈U, lift([V, W])〉 =⟨U, [V, W]

⟩,

where in the last equality we used that U is horizontal. With theseidentities in hand, compare the Koszul formulas for both ∇ and ∇:this shows the second equality in⟨

ProjH(∇UV), W⟩=⟨∇UV, W

⟩= 〈∇UV, W〉 π =

⟨lift(∇UV), W

⟩,

while the first equality holds owing to horizontality of W. Once more,since this holds for all lifted horizontal fields W, we see that (9.40)holds, as announced. This discussion warrants the following theorem.

Page 221: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 221

Theorem 9.40. LetM be a Riemannian quotient manifold ofM. The Rie- [O’N83, Lem. 7.45]

mannian connections ∇ onM and ∇ onM are related by

lift(∇UV) = ProjH(∇UV

)for all U, V ∈ X(M), with U = lift(U) and V = lift(V).

Compare this result to (8.24) for Riemannian submanifolds.

Exercise 9.41. Show that [GHL04, Prop. 3.35], [dC92, Ex. 8.9]

∇UV = lift(∇UV) +12

ProjV([U, V]),

where ProjV = Id−ProjH is the orthogonal projector to vertical spaces. Ar-gue furthermore that ProjV([U, V]) at x depends only on U(x) and V(x).

9.11 Hessians

Given a smooth function f on a Riemannian quotient manifold M =

M/∼, the Hessian of f is defined for ([x], ξ) ∈ TM by

Hess f ([x])[ξ] = ∇ξgrad f . (9.43)

For any vector field V ∈ X(M), Theorem 9.40 tells us that

liftx(∇ξV) = ProjHx (∇uV), (9.44)

where u = liftx(ξ) and V = lift(V). Recall from Proposition 9.36 that

lift(grad f ) = grad f , (9.45)

with f = f π. Combining, we find that

liftx(Hess f ([x])[ξ]) = ProjHx(∇ugrad f

). (9.46)

Finally, since ∇ugrad f = Hess f (x)[u], we get the following result.

Proposition 9.42. The Riemannian Hessian of f on a Riemannian quotientmanifold is related to the Riemannian Hessian of the lifted function f = f π

on the total space as

liftx(Hess f ([x])[ξ]) = ProjHx(Hess f (x)[u]

), (9.47)

for all x ∈ M and ξ ∈ T[x]M, with u = liftx(ξ).

See Example 9.46 for an illustration. We conclude with an exerciselinking first- and second-order critical points on the total space and onthe quotient space.

Page 222: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

222 an introduction to optimization on smooth manifolds

Exercise 9.43. Let f : M → R be smooth on a Riemannian quotient man-ifold M = M/∼ with canonical projection π, and let f = f π. FromProposition 9.36, it is clear that x ∈ M is a first-order critical point for f ifand only if [x] is a first-order critical point for f .

Show that if x is critical then the eigenvalues of Hess f (x) are exactly theeigenvalues of Hess f ([x]) together with a set of dimM−dimM additionaleigenvalues equal to zero. (Hint: use Lemma 9.38.) Deduce that x is a second-order critical point for f if and only if [x] is second-order critical for f .

9.12 A word about Riemannian Newton’s method

We describe Newton’s method on a general Riemannian manifold inSection 6.2. Applied to the minimization of a function f on a quotientmanifoldM =M/∼ with retraction R, the update equation is

[xk+1] = R[xk ](ξk), (9.48)

where ξk ∈ T[xk ]M is the solution of the linear equation

Hess f ([xk])[ξk] = −grad f ([xk]), (9.49)

which we assume to be unique. In the spirit of Section 9.9, we nowdiscuss how to run (9.48) in practice.

Let us assume that M is a Riemannian quotient manifold withcanonical projection π. We lift both sides of (9.49) to the horizontalspace at xk. With sk = liftxk (ξk), Propositions 9.36 and 9.42 tell us thatthe linear equation is equivalent to

ProjHxk

(Hess f (xk)[sk]

)= −grad f (xk), (9.50)

where f = f π. This system is to be solved for sk ∈ Hxk .Although ProjHxk

and Hess f (xk) are both symmetric operators onTxkM, their composition is not necessarily symmetric. This is easilyresolved: since sk is horizontal, we may also rewrite the above as

ProjHxk

(Hess f (xk)

[ProjHxk

(sk)])

= −grad f (xk). (9.51)

This is a linear system with symmetric operator

ProjHxkHess f (xk) ProjHxk

. (9.52)

By construction, if (9.49) has a unique solution ξk, then (9.51) has aunique horizontal solution sk = liftxk (ξk). (If we solve (9.51) in thewhole tangent space TxkM, then all solutions are of the form sk + vwith v ∈ Vxk , and sk is the solution of minimal norm.)

If the retraction R is related to a retraction R on M via (9.27), thencontinuing from (9.48) we see that

[xk+1] = R[xk ](ξk) =

[Rxk (liftxk (ξk))

]=[Rxk (sk)

]. (9.53)

Page 223: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 223

In summary, to run Newton’s method on f in practice, we may iterate

xk+1 = Rxk (sk) (9.54)

with sk ∈ Hxk the horizontal solution of (9.51) (unique if and only ifthe solution of (9.49) is unique). It is an exercise to check that theconjugate gradients algorithm (CG) from Section 6.3 is well attuned tothe computation of sk.

In contrast, Newton’s method on M also iterates (9.54) but with sk

a solution of this linear system over TxkM (if one exists):

Hess f (xk)[sk] = −grad f (xk). (9.55)

Such a solution may not be horizontal (and its horizontal part maynot be a solution), or it may not be unique. Thus, running Newton’smethod in the total space is not equivalent to running it on the quotientmanifold. What is more, if xk converges to a critical point (which isdesirable), Lemma 9.38 tells us that Hess f (xk) converges to a singularoperator. Thus, we must expect difficulties in solving the linear systemon the total space. (However, see Exercise 9.45 for a numerical twist.)

The reasoning above extends to see how to run the Riemanniantrust-region method on Riemannian quotient manifolds as well.

Exercise 9.44. In light of eq. (9.51), consider the linear system Hs = b with

H = ProjHx Hess f (x) ProjHx and b = −grad f (x)

defined at some point x ∈ M. Show that the eigenvalues of H (a self-adjoint operator on TxM) are those of Hess f ([x]) together with an additionaldimM− dimM trivial eigenvalues. In contrast with Lemma 9.38, showthis even if x is not a critical point. Conclude that H is positive definite onHx exactly if Hess f ([x]) is positive definite. In that scenario, discuss how theiterates of CG behave when applied to the system Hs = b, especially minding CG is Algorithm 6.2.

horizontality. How many iterations need to be run at most?

Exercise 9.45. Continuing from Exercise 9.44, assume [x] is a strict second-order critical point: grad f ([x]) = 0 and Hess f ([x]) 0. Newton’s methodon f converges to [x] if it ever gets close enough. Consider the Newton systemfor f at a point x near x on the total space, ignoring the quotient structure:

Hess f (x)[s] = −grad f (x), s ∈ TxM. (9.56)

From Lemma 9.38, we know that Hess f (x) has a kernel, hence for x closeto x we expect this system to be ill conditioned. And indeed, solving (9.56)exactly with a standard algorithm such as Gaussian elimination can lead tocatastrophic failure when x is close to x.

However, it is much more common to (try to) solve (9.56) with CG. A typi-cal observation then would be that roughly dimM iterations of CG on (9.56)

Page 224: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

224 an introduction to optimization on smooth manifolds

are fairly well behaved. The next iteration would break CG. Nevertheless,since the iterates of CG are monotonically improving approximate solutionsof (9.56), it would be reasonable to return the best solution reached so far.1 As 1 Matlab’s implementation of CG, pcg,

does so.it turns out, that (approximate) solution is numerically close to the solutionone would compute if working on the quotient manifold (as in Exercise 9.44).

Explain this observation. (Hint: use local frames as in Proposition 9.29,use Lemma 9.38 at x, show that

⟨v, Hess f (x)[v]

⟩x = 0 for all x ∈ M and

v ∈ Vx, and track the Krylov space implicitly generated by CG.)

Exercise 9.45 loosely explains why, empirically, running the trust-region method with truncated CG as subproblem solver in the totalspace (ignoring the quotient) or on the quotient manifold (with match-ing retractions) often yields strikingly similar results, even though thesuperlinear convergence guarantees (Section 6.6) break in the totalspace due to Hessian singularity.

The use of CG (or another Krylov space-based solver) is importanthere: the solution of the Newton system in the total space at a pointwhich is close to a strict second-order critical point is not, in general,close to a lift of the Newton step in the quotient space; but numericallythe CG algorithm finds an approximate solution to that linear systemwhich happens to mimic the quotient approach.

9.13 Total space embedded in a linear space

For all quotient manifolds described in Exercise 9.19, the total spaceMis an embedded submanifold of a linear space E (a space of matrices).It is often convenient to makeM into a Riemannian submanifold of E ,then to makeM =M/∼ into a Riemannian quotient manifold ofM.In this scenario, the geometric tools forM can be described directly interms of objects in E .

Consider a smooth function ¯f : E → R (possibly only defined on aneighborhood ofM). Its restriction, f = ¯f |M, is smooth too. SinceMis a Riemannian submanifold of E , we know from (3.37) that

grad f (x) = Projx(

grad ¯f (x))

, (9.57)

where Projx is the orthogonal projector from E to TxM.If furthermore f is invariant under ∼ so that f = f π for some

smooth function f on the Riemannian quotient manifold M, thenProposition 9.36 tells us that

liftx(grad f ([x])) = Projx(

grad ¯f (x))

. (9.58)

This notably shows that the right-hand side is a horizontal vector, eventhough we have only asked for f to be invariant: there is no such re-

Page 225: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 225

quirement for all of ¯f , as the equivalence relation ∼ is not even for-mally defined outside ofM. We exploit this observation to write also:

liftx(grad f ([x])) = ProjHx(

grad ¯f (x))

, (9.59)

where ProjHx is the orthogonal projector from E to Hx.

To see this, note that ProjHx (u) = u for allu ∈ Hx , and ProjHx Projx = ProjHx sinceHx ⊆ TxM, and apply to (9.58).

Similarly, we can express the Hessian of f in terms of ¯f . Indeed,Proposition 9.42 states

liftx(Hess f ([x])[ξ]) = ProjHx(Hess f (x)[u]

)(9.60)

with u = liftx(ξ). Moreover, we know from connections on Rieman-nian submanifolds (5.4) that

Hess f (x)[u] = ∇ugrad f (x) = Projx(

D ¯G(x)[u])

, (9.61)

where ¯G is a smooth extension of grad f to a neighborhood of M inE . Note that to pick the extension ¯G we are free to entertain expres-sions for Projx

(grad ¯f (x)

)or ProjHx

(grad ¯f (x)

)as they are both equal

to grad f (x) but one may lead to more convenient intermediate expres-sions than the other. Then,

liftx(Hess f ([x])[ξ]

)= ProjHx

(D ¯G(x)[u]

). (9.62)

These formulas are best illustrated through an example.

Example 9.46. Consider Gr(n, p) = St(n, p)/O(p) as a Riemannian quo-tient manifold of St(n, p), itself a Riemannian submanifold of Rn×p equippedwith the usual trace inner product. The cost function ¯f (X) = 1

2 Tr(X>AX)

is smooth on Rn×p, hence its restriction f = ¯f |St(n,p) is smooth too. Since fis invariant under O(p), we further find that f is smooth on Gr(n, p), withf ([X]) = f (X). The Euclidean derivatives of ¯f are:

grad ¯f (X) = AX and Hess ¯f (X)[U] = AU.

The horizontal spaces are given by HX = U ∈ Rn×p : X>U = 0, and thecorresponding orthogonal projectors are

ProjHX (Z) = (In − XX>)Z = Z− X(X>Z). (9.63)

Choosing to work with (9.59) (rather than (9.58)) because ProjHX is somewhatsimpler than ProjX (the projector to tangent spaces of the Stiefel manifold),we deduce that the lifted gradient of f is:

liftX(grad f ([X])) = (In − XX>)grad ¯f (X)

= AX− X(X>AX). (9.64)

An obvious smooth extension to all of Rn×p is simply given by

¯G(X) = (In − XX>)grad ¯f (X),

Page 226: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

226 an introduction to optimization on smooth manifolds

with directional derivatives

D ¯G(X)[U] = (In − XX>)Hess ¯f (X)[U]− (UX>+ XU>)grad ¯f (X).

Then, we get the lifted Hessian via (9.62). For any U = liftX(ξ), since U ishorizontal, we get after some simplifications:

liftX(Hess f ([X])[ξ]

)= (In − XX>)Hess ¯f (X)[U]−UX>grad ¯f (X)

= AU − X(X>AU)−U(X>AX). (9.65)

We can also compute with the Hessian in a quadratic form:

〈ξ, Hess f ([X])[ξ]〉[X] = 〈U, AU − X(X>AU)−U(X>AX)〉X= 〈U, AU −U(X>AX)〉,

where 〈U, V〉 = Tr(U>V).Notice how intermediate formulas in (9.64) and (9.65) provide convenient

expressions directly in terms of the Euclidean gradient and Hessian of ¯f .

Example 9.47. In the previous example, projections to horizontal spaces aremore convenient than projections to tangent spaces of the total space. This isnot always the case. For example, let E = Rd×n be the embedding space for

M = X ∈ Rd×n : det(XX>) 6= 0 and X1 = 0,

that is, rank-d matrices whose columns sum to zero, and letM =M/O(d)be defined by the equivalence classes [X] = QX : Q ∈ O(d). Equivalenceclasses are one-to-one with non-degenerate clouds of n labeled points in Rd

up to rigid motion. Make M into a Riemannian quotient manifold of M,itself a Riemannian submanifold of E .

In this case,M is an open subset of an affine subspace of E . Consequently,the tangent spaces TXM are all the same: ProjX is independent of X; let usdenote it with Proj. It is more convenient then to use (9.58) for the gradient:

liftX(grad f ([X])) = Proj(

grad ¯f (X))

.

The right-hand side offers a suitable smooth extension ¯G of grad f . It is easyto differentiate it since Proj is constant: D ¯G(X)[U] = Proj

(Hess ¯f (X)[U]

).

Then, we conclude via (9.62) that

liftX(Hess f ([X])[ξ]

)= ProjHX

(Hess ¯f (X)[U]

),

where U = liftX(ξ) and we used ProjHX Proj = ProjHX .

Exercise 9.48. Let A ∈ Rn×n be a symmetric matrix. A subspace V is That second-order critical points areglobal optimizers is shown in [SI14,Prop. 3.4, Prop. 4.1] under the assump-tion that there is a gap between the pthand (p + 1)st smallest eigenvalues of A.With some care, the eigengap assump-tion can be removed. The other claimsare standard.

stable (or invariant) under A if v ∈ V =⇒ Av ∈ V; show that anysuch subspace admits an orthonormal basis composed of eigenvectors of A(and vice versa). Based on Example 9.46, establish the following facts aboutmin[X]∈Gr(n,p)

12 Tr(X>AX):

Page 227: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 227

1. The critical points are the subspaces of dimension p stable under A.

2. The global minimizers are the subspaces spanned by p orthonormal eigen-vectors associated to p smallest eigenvalues of A (counting multiplicities).

3. The second-order critical points are the global minimizers.

9.14 Horizontal curves and covariant derivatives

Our primary goal in this section is to understand the covariant deriva-tive of smooth vector fields along smooth curves on a Riemannianquotient manifold M =M/∼, following their discussion for generalmanifolds in Section 8.12. In so doing, we aim to relate the (uniquelydefined) covariant derivative D

dt along a curve c on M to that of Malong a related curve c, denoted by D

dt .We can push any curve c fromM to a smooth curve c onM, defined

through c = π c. By the chain rule, their velocities are related as:

c′(t) = Dπ(c(t))[c′(t)]. (9.66)

Since liftc(t) Dπ(c(t)) is the orthogonal projector to the horizontalspace Hc(t), we can also write

liftc(t)(c′(t)) = ProjHc(t)(c

′(t)). (9.67)

The latter simplifies in a way that proves particularly useful for ourpurpose if the velocity of c is everywhere horizontal.

Definition 9.49. A smooth curve c : I →M is a horizontal curve if c′(t)is a horizontal vector for all t, that is, if c′(t) ∈ Hc(t) for all t.

For a smooth vector field Z ∈ X(c), we define its horizontal lift Zby Z(t) = liftc(t)(Z(t)), and we write Z = lift(Z) for short. We usesimilar definitions for ProjH acting on vector fields of X(c). It is anexercise to show that smoothness is preserved.

Theorem 9.50. Given a horizontal curve c : I →M and the corresponding See Section 9.16 for a comment regard-ing the relevance of the horizontality as-sumption.

smooth curve c = π c on the Riemannian quotient manifoldM =M/∼,the covariant derivative of a vector field Z ∈ X(c) is given by

Ddt

Z = Dπ(c)[

Ddt

Z]

, (9.68)

where Z = lift(Z) is the horizontal lift of Z to the curve c.

Proof. First of all, this is well defined. Indeed, for any Z ∈ X(c), the liftZ ∈ X(c) is uniquely defined, its covariant derivative D

dt Z is indeed inX(c), and pushing it through Dπ(c) produces a specific smooth vectorfield in X(c). We need to prove that this vector field happens to be

Page 228: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

228 an introduction to optimization on smooth manifolds

Ddt Z. To this end, we contemplate the three defining properties of D

dt inTheorem 8.62.

The first property, R-linearity in Z, follows easily from linearityof lift, D

dt and Dπ(c). The second property, the Leibniz rule, doestoo for similar reasons. More work is needed to verify the chain rule.Explicitly, we must show that, for all U ∈ X(M), the proposed formulasatisfies

Ddt

(U c) = ∇c′U.

Since lift(U c) = U c, the proposed formula yields

Dπ(c)[

Ddt

lift (U c)]= Dπ(c)

[Ddt

(U c)]= Dπ(c)

[∇c′U

], (9.69)

where we used the chain rule for Ddt . Importantly, we now use that

c′ is horizontal to invoke the pointwise formula for ∇ (9.44). Morespecifically, using that vertical vectors are in the kernel of Dπ(c) andc′ = lift(c′) as in (9.67) owing to horizontality,

Dπ(c)[∇c′U

]= Dπ(c)

[ProjH

(∇c′U

)]= ∇c′U.

This concludes the proof.

Under the same assumptions, the formula in Theorem 9.50 can bestated equivalently as:

lift(

Ddt

Z)= ProjH

(Ddt

Z)

, (9.70)

which is more informative regarding numerical representation.

Exercise 9.51. Consider a smooth curve c : I → M and its projection toM: c = π c. With Z a vector field along c, show that Z is smooth ifand only if Z = lift(Z) is smooth along c. Furthermore, show that if Z is a(not necessarily horizontal) smooth vector field along c, then ProjH(Z) is a(necessarily horizontal) smooth vector field along c.

9.15 Acceleration, geodesics and second-order retractions

The acceleration c′′ of a smooth curve c on a quotient manifold M isdefined—as it is in the general case—as the covariant derivative of itsvelocity. Owing to Theorem 9.50, if c is a horizontal curve related to cby c = π c, and ifM is a Riemannian quotient manifold ofM, then

c′′(t) =Ddt

c′(t) = Dπ(c(t))[

Ddt

c′(t)]= Dπ(c(t))

[c′′(t)

], (9.71)

Page 229: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 229

which we can also write as

liftc(t)(c′′(t)) = ProjHc(t)

(c′′(t)

). (9.72)

Recall that geodesics are curves with zero acceleration. A direct conse-

In particular, if c is horizontal, we have‖c′′(t)‖c(t) = ‖ProjHc(t) c

′′(t)‖c(t): acceler-ation can only decrease in going to thequotient.

quence of (9.71) is that horizontal geodesics on the total space descendto geodesics on the quotient manifold.

Corollary 9.52. Let M be a Riemannian quotient manifold of M, with [O’N83, Lem. 7.46]

canonical projection π. If c : I →M is a geodesic onM and it is a horizontalcurve, then c = π c is a geodesic onM.

In this last corollary, it is in fact sufficient to have c be a geodesicwith horizontal velocity at any single time, e.g., c′(0) horizontal, asthen it is necessarily horizontal at all times. Anticipating the defini-tion of completeness of a manifold (Section 10.1), this notably impliesthat M is complete if M is complete [GHL04, Prop. 2.109]. A localconverse to Corollary 9.52 also holds. The proof (omitted) relies onstandard results from ordinary differential equations.

Proposition 9.53. Let c : I → M/∼ be a smooth curve on a Riemannian See Section 9.16 for a discussion.

quotient manifold such that c′(t0) 6= 0, with I an open interval around t0.

1. For any x0 such that c(t0) = [x0], there exists an open interval J ⊆ Iaround t0 and a unique, smooth curve c : J → M such that c|J = π c(that is, c is a lift of c), c is horizontal, and c(t0) = x0.

2. On J, the curve c is a geodesic if and only if c is a geodesic.

Example 9.54. Consider the total space of full-rank matrices M = Rd×nd

with d ≤ n: an open submanifold of Rd×n. Consider also the quotient spaceM =M/∼ with equivalence relation X ∼ Y ⇐⇒ X>X = Y>Y, that is,two clouds of n labeled points in Rd are equivalent if they have the same Grammatrix. Equivalence classes are of the form [X] = QX : Q ∈ O(d), thatis, two clouds are equivalent if they are the same up to rotation and reflection.Use Theorem 9.17 to verify that M is a quotient manifold of M. Its pointsare in one-to-one correspondence with positive semidefinite matrices of size nand rank d. With the usual metric 〈U, V〉X = Tr(U>V) on Rd×n

d , we canfurther turnM into a Riemannian quotient manifold.

Given X, Y ∈ Rd×nd , the straight line c(t) = (1− t)X + tY is a geodesic

on [0, 1] provided it remains in Rd×nd . Assuming this is the case, we may

further ask: what does it take for c to be horizontal? Since the fiber of Xis the submanifold QX : Q ∈ O(d), we find that the vertical spaces areVX = ΩX : Ω ∈ Skew(d), hence the horizontal spaces are given byHX = U ∈ Rd×n : XU>= UX>. Thus, c′(t) = Y− X belongs to Hc(t)exactly if the following is symmetric:

c(t)c′(t)>= ((1− t)X + tY)(Y− X)>

= XY>− t(XY>+ YX>) + tYY>− (1− t)XX>.

Page 230: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

230 an introduction to optimization on smooth manifolds

This holds for all t exactly if XY> is symmetric. If so, c is a horizontal geodesicand Corollary 9.52 states c(t) = [(1− t)X + tY] is a geodesic onM.

What is the significance of the condition XY> = YX>? Consider theEuclidean distance between QX and Y in the total space, where Q ∈ O(d)remains unspecified for now:

‖QX−Y‖2 = ‖X‖2 + ‖Y‖2 − 2 Tr(QXY>).

It can be shown that this distance is minimized with respect to Q ∈ O(d) ifQXY> is symmetric and positive semidefinite. Specifically, if XY>= UΣV>

is an SVD decomposition, then the minimum is attained by Q = VU> (thepolar factor of XY>). Replacing X by QX (which does not change its equiva-lence class) “aligns” X to Y in the sense that ‖X−Y‖ is minimized.

Assume X and Y are aligned as described, so that XY>= YX> 0. SinceX and Y have full rank,

c(t)c(t)>= (1− t)2XX>+ t(1− t)(XY>+ YX>) + t2YY>

is positive definite for all t ∈ [0, 1]. In other words: if X and Y are aligned,the straight line c(t) connecting them indeed remains in Rd×n

d for t ∈ [0, 1]and it is horizontal. Since c is a horizontal geodesic, c is a geodesic too.

Anticipating concepts of length and distance from Section 10.1, we claimthat the length of c on [0, 1] is ‖Y− X‖, and that c has the same length as c.Since no shorter curve connects the same end points, the Riemannian distancebetween the equivalence classes [X] and [Y] is nothing but the Euclideandistance between their best aligned representatives.

Massart and Absil discuss the geometry ofM in detail [MA20].

Another direct consequence of (9.71) is that second-order retractions(Definition 8.64) onMwhich satisfy condition (9.28) and whose curvesare horizontal yield second-order retractions on the quotient manifold.

Corollary 9.55. Let R be a retraction onM such that R as defined by (9.27)is a retraction on the Riemannian quotient manifold M = M/∼. If R issecond order and its retraction curves,

c(t) = Rx(tu),

are horizontal for every u ∈ Hx, then R is second order onM.

Proof. The retraction on the quotient manifold generates curves

c(t) = R[x](tξ) =[Rx(tu)

]with u = liftx(ξ); hence, c = π c. Since c is horizontal, we mayapply (9.71) and evaluate at t = 0. (This also makes it clear that cneeds only be horizontal in a neighborhood of t = 0.)

Page 231: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 231

Example 9.56. Recall the polar retraction (7.22) on St(n, p):

RX(U) = (X + U)(

Ip + U>U)−1/2

. (9.73)

This is a second-order retraction. We already checked condition (9.28) for it, sothat it yields a retraction on the quotient manifold Gr(n, p) = St(n, p)/O(p).Furthermore, the retraction curves are horizontal. Indeed, for any U ∈ HX

(meaning X>U = 0), consider the curve

c(t) = RX(tU) = (X + tU)(

Ip + t2U>U)−1/2

and its velocity

c′(t) = U(

Ip + t2U>U)−1/2

+ (X + tU)ddt

((Ip + t2U>U

)−1/2)

.

This curve is horizontal if, for all t, the matrix

c(t)>c′(t) =(

Ip + t2U>U)−1/2

(tU>U)(

Ip + t2U>U)−1/2

+(

Ip + t2U>U)+1/2 d

dt

((Ip + t2U>U

)−1/2)

is zero. Replace U>U with its eigendecomposition VDV>, with V ∈ O(p)and D diagonal: the right-hand side is diagonal in the basis V, and it is asimple exercise to conclude that it is indeed identically zero. As a result, thepolar retraction is horizontal on St(n, p) and, when used as a retraction onGr(n, p), it is second order.

Exercise 9.57. Consider a Riemannian quotient manifoldM =M/∼ withcanonical projection π. Let c be a smooth curve onM such that c(0) = x andc′(0) = u, and let f = f π be a smooth function onM. Define c = π cand ξ = Dπ(x)[u]. Obtain a Taylor expansion for f c in two ways:

1. Apply the general formula (8.19) to f c; and

2. Apply (8.19) to f c.

Of course, the two formulas are equal since f c = f c. Assuming c is ahorizontal curve, use Propositions 9.36 and 9.42 and eq. (9.71) to verify thatthe formulas also match term-by-term.

9.16 Notes and references

The main source for this chapter is the book by Absil et al. [AMS08,§3 and §5], which gives an original and concise treatment of quotientmanifolds for Riemannian optimization, with an emphasis on gener-ality and practicality. The main sources for differential geometric as-pects and proofs are the differential geometry books by Brickell and

Page 232: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

232 an introduction to optimization on smooth manifolds

Clark [BC70, §6] and Lee [Lee12, §4 and §21]. O’Neill provides use-ful results regarding connections on Riemannian submersions [O’N83,pp212–213], as do Gallot et al. [GHL04].

Many results hold generally for the case where M and M aresmooth manifolds (not necessarily related by an equivalence relation)and π : M→M is a submersion (it is smooth and its differentials aresurjective) or a Riemannian submersion (its differentials are isometriesonce restricted to horizontal spaces). Reference books often state re-sults at this level of generality. In contrast, we also require π to besurjective (it is a quotient map). For example, while π : R2\0 → R2

(both with their usual Riemannian structures) defined by π(x) = x isa Riemannian submersion, it is not a quotient map because it is notsurjective: we exclude such cases. Certain results that do not hold forgeneral submersions may hold for surjective submersions.

An advantage of Brickell and Clark’s treatment is that they definesmooth manifolds without topological restrictions (recall Section 8.2).As a result, the role of the two topological properties (Hausdorff andsecond countability) is apparent throughout the developments. Thisproves helpful here, considering the fact that certain quotient spacesfail to be quotient manifolds specifically because their quotient topolo-gies fail to have these properties.

For a full characterization of when a quotient space is or is not aquotient manifold, see [AMS08, Prop. 3.4.2]. In this chapter, we pre-sented a necessary condition (Proposition 9.3, which implies fibers ofa quotient manifold must all be submanifolds of the same dimension),and a sufficient condition (Theorem 9.17, which states free, proper andsmooth group actions yield quotient manifolds). For a partial converseto the latter, see [Lee12, Pb. 21-5].

When the group acting on the total space is not compact, it maybe delicate to determine whether the action is proper. The followingcharacterization may help in this regard.

Proposition 9.58. Let G be a Lie group acting smoothly on a manifoldM. [Lee12, Prop. 21.5]

The following are equivalent:

1. The action θ is proper.

2. If x0, x1, x2, . . . is a sequence on M and g0, g1, g2, . . . is a sequence onG such that both xkk=0,1,2,... and θ(gk, xk)k=0,1,2,... converge, then asubsequence of gkk=0,1,2,... converges.

3. For every compact K ⊆ M, the set GK = g ∈ G : θ(g, K) ∩ K 6= ∅ iscompact.

The smoothness criterion for vector fields on quotient manifoldsgiven in Theorem 9.26 is an exercise in do Carmo’s book [dC92, Ex. 8.9,

Page 233: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 233

p186] and is linked to the concept of π-related vector fields [Lee12,Pb. 8-18c]. The main difference for the latter is that Theorem 9.26 statesresults with respect to the special horizontal distribution we chose (em-anating from the Riemannian metric on the total space), whereas re-sults regarding π-related vector fields often focus on the horizontaldistribution tied to charts in normal form (Proposition 9.5).

In the proof of Theorem 9.50, one may wonder what goes wrong if cis not horizontal. In that case, to proceed from (9.69) we separate c′(t)into its horizontal and vertical parts, and we use linearity:

Dπ(c)[∇c′U

]= Dπ(c)

[∇ProjH(c′)U

]+ Dπ(c)

[∇ProjV(c′)U

]= ∇c′U + Dπ(c)

[∇ProjV(c′)U

].

For the horizontal part, the same argument as in the proof of Theo-rem 9.50 based on (9.44) and (9.67) still applies, yielding the first term.The second term though, does not vanish in general. This is because,in general, U is not “constant” along fibers: the lift of U([x]) at x neednot be the “same” as its lift at y ∼ x. (To make sense of the quotedterms, see the notion of parallel vector fields in Section 10.3.)

We verify this on an example. Consider Gr(n, p) = St(n, p)/O(p).We know a horizontally lifted vector field on St(n, p): take for exampleU(X) = grad f (X) = AX − X(X>AX), where f (X) = 1

2 Tr(X>AX).Furthermore, any vertical vector at X is of the form XΩ for someΩ ∈ Skew(p). Then, using the formula for the connection ∇ onSt(n, p) (5.4),

∇XΩU = ProjX(

AXΩ− XΩ(X>AX)− X(Ω>XAX + X>AXΩ))

= (In − XX>)AXΩ,

where ProjX is the orthogonal projector to TXSt(n, p) (7.25). To ourpoint, this vector is horizontal, and it can be nonzero, hence the vectorDπ(X)[∇XΩU] can be nonzero.

It is useful to add a word about Proposition 9.53: this concernsthe possibility of horizontally lifting curves c : I → M from the quo-tient manifold to the total space. That this can be done locally (mean-ing: that we can obtain a horizontal lift c defined on an open intervalaround any t0 ∈ I) is relatively direct, invoking standard results fromordinary differential equations (ODE) [Lee12, Thm. 9.12].

The argument goes like this: if c′(t0) 6= 0, then there exists an inter-val J ⊆ I around t0 such that c(J) is an embedded submanifold ofM.As a result, it is possible to extend the smooth vector field c′ on c(J) toa smooth vector field V defined on a neighborhood U of c(J). It satis-fies V(c(t)) = c′(t) for all t ∈ J. Pick x0 ∈ M such that c(t0) = [x0],

Page 234: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

234 an introduction to optimization on smooth manifolds

and consider this ODE where the unknown is the curve γ on U :

γ′(t) = V(γ(t)), γ(t0) = [x0].

Clearly, γ(t) = c(t) is a solution for t ∈ J. Since solutions of ODEsare unique, we deduce that γ|J = c|J . Now we turn to constructinghorizontal lifts. Consider V = lift(V): this is a smooth vector field onU = π−1(U ). We can again write down an ODE:

c′(t) = V(c(t)), c(t0) = x0.

There exist an open interval J′ around t0 and a solution c : J′ → U ,smooth and unique. Clearly, c is horizontal because c′(t) is a horizontalvector by construction. If we project c to the quotient, then we get acurve γ = π c. Notice that γ(t0) = [x0] and

γ′(t) = Dπ(c(t))[c′(t)] = Dπ(c(t))[V(c(t))] = V([c(t)]) = V(γ(t)).

Thus, γ satisfies the first ODE we considered, and we conclude thatπ c = γ = c|J′ . In words: c is a horizontal lift of c on the intervalJ′. Moreover, the lifted curve depends smoothly on the choice of rep-resentative x0 ∈ c(t0) because solutions of ODEs depend smoothly notonly on time but also on initial conditions.

This argument and a few more elements form the basis of the proofof Proposition 9.53 presented by Gallot et al. [GHL04, Prop. 2.109],where the emphasis is on the case where c is a geodesic.

It is natural to ask: if c is defined on the interval I, can we not lift itto a horizontal curve c also defined on all of I? The argument above isnot sufficient to reach this stronger conclusion, in part because it onlyuses the fact that π is a Riemannian submersion: it does not use thefact that π is surjective. Hence, as Gallot et al. point out, we mightbe in the case where π : R2\0 → R2 is the map π(x) = x betweenthe punctured plane and the plane, both equipped with their usualRiemannian metrics. This is indeed a Riemannian submersion, but itis not surjective (in particular, it is not a quotient map). It is clear thata geodesic (a straight line) through the origin in R2 cannot be liftedentirely to R2\0.

Thus, at the very least, we should require π to be surjective (whichit is in the setting of quotient manifolds). Unfortunately, that is not suf-ficient. John M. Lee shares2 a counter-example withM = (−1, 1)×R 2 math.stackexchange.com/

questions/3524475and M = S1 as Riemannian submanifolds of R2. Consider the mapπ(x, y) = (cos(2πx), sin(2πx)). This is indeed a surjective Riemanniansubmersion from M to M. Yet, consider the curve c : (−2, 2) → Mdefined by c(t) = (cos(2πt), sin(2πt)). Its unique horizontal lift sat-isfying c(0) = (0, 0) is given by c(t) = (t, 0): evidently, c can only beextended up to (−1, 1), not up to (−2, 2).

Page 235: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

quotient manifolds 235

Fortunately, there exist several sufficient conditions. One can readthe following about that question in a classic book by Besse [Bes87,§9.E] (See Section 10.1 for a definition of complete manifolds.)

Proposition 9.59. Let π : M→M be a surjective Riemannian submersion. If M is not connected, apply the claimto each complete connected component.IfM is connected and complete, thenM is also connected and complete, all

fibers are complete (but not necessarily connected), and for every smooth curvec : I →M with non-vanishing velocity and for every x0 ∈ c(t0) there existsa unique horizontal lift c : I → M such that c = π c and c(t0) = x0.Moreover, c is a geodesic if and only if c is a geodesic.

If π has this property, namely, that all curves with non-vanishingvelocity can be lifted horizontally on their whole domain and made topass through any representative of the equivalence class at some initialpoint, we say it is Ehresmann-complete. In this same reference, it is alsonoted that when this property holds, then π is a smooth fiber bundle.Furthermore, the property may hold withoutM being complete.

Here is a special case of interest. If the quotient is obtained as perTheorem 9.17 through a smooth, free and proper Lie group action ona smooth manifold, then it also forms a fiber bundle [Lee12, Pb. 21-6]—in that case, the fiber bundle is also called a principal G-bundle,and the standard fiber is the Lie group itself. It can be shown that if(but not only if) the standard fiber is compact, then the fiber bundleis Ehresmann-complete [Mic08, pp204–206]. This is summarized asfollows.

Proposition 9.60. If G is a compact Lie group acting smoothly and freely onM, then M = M/G is a quotient manifold, and it has the property thatany smooth curve c : I → M with non-vanishing velocity can be lifted to aunique horizontal curve c : I → M passing through any x0 ∈ c(t0) at t0.Moreover, c is a geodesic if and only if c is a geodesic.

See also [Mic08, Lem. 26.11] and [KN63, Prop. II.3.1, p69]. Thanksto P.-A. Absil, John M. Lee, Mario Lezcano-Casado and Estelle Massartfor discussions on this topic.

Page 236: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian
Page 237: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

10Additional tools

At times, it is useful to resort to some of the more advanced toolsRiemannian geometry has to offer. We discuss some of these herein relation to optimization. The background on differential geometrygiven in Chapters 3 and 5 is often sufficient. We omit classical proofs,pointing to standard texts instead.

We start with the notion of Riemannian distance, which allows usto turn a (connected) Riemannian manifold into a metric space. Itturns out that the associated metric space topology coincides with thesmooth manifold topology, and that shortest paths between pairs ofpoints are geodesics. From there, we discuss the Riemannian expo-nential map: this is a retraction whose curves are geodesics. There, wealso give a formal and not-so-standard treatment of the inverse of theexponential map and, more generally, of the inverse of retractions.

Moving on, parallel transports allow us to move tangent vectorsaround, from tangent space to tangent space, isometrically. Combinedwith the exponential map, this tool makes it possible to define a notionof Lipschitz continuity for the gradient and the Hessian of a cost func-tion on a Riemannian manifold. This leads to a sharp understandingof the regularity assumptions we made in Chapters 4 and 6 to controlthe worst-case behavior of optimization algorithms.

We follow up with the (also not-so-standard) notion of transporter—a poor man’s version of parallel transport. This is useful to design cer-tain algorithms. It also affords us a practical notion of finite differenceapproximation for the Hessian, which makes it possible to use second-order optimization algorithms without computing the Hessian.

In closing, we discuss covariant differentiation of tensor fields ofany order.

As a notable omission, we do not discuss curvature at all: see forexample [Lee18, Chs 1 and 7] for an introduction.

Page 238: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

238 an introduction to optimization on smooth manifolds

10.1 Distance, geodesics and completeness

A distance on a set M is a function dist : M×M → R such that, forall x, y, z ∈ M,

1. dist(x, y) = dist(y, x);

2. dist(x, y) ≥ 0, and dist(x, y) = 0 if and only x = y; and

3. dist(x, z) ≤ dist(x, y) + dist(y, z).

Equipped with a distance, M is a metric space. A natural topology ona metric space is the metric topology, defined such that the functionsx 7→ dist(x, y) are continuous. Specifically, a subset U ⊆ M is open ifand only if, for every x ∈ U , there exists a radius r > 0 such that theball y ∈ M : dist(x, y) < r is included in U .

In this section, we first state without proof that if M is a Rieman- Two points of M belong to the sameconnected component if and only if thereexists a continuous curve in M joiningthem.

nian manifold then its Riemannian metric induces a distance on (theconnected components of) M, and that the topology of M as a man-ifold is equivalent to the topology of M as a metric space equippedwith that distance. Intuitively, dist(x, y) is the length of the shortestpiecewise smooth curve on M joining x and y, or the infimum overthe lengths of such curves.

LetM be a Riemannian manifold. Given a piecewise smooth curve Piecewise smooth means for some choiceof 0 = a0 < a1 < · · · < ak < ak+1 = 1 therestrictions c|(ai ,ai+1)

are smooth for i =0, . . . , k, and c is continuous. Integrationis summed on the open intervals.

c : [0, 1] → M, we define the length of c as the integral of its speed‖c′(t)‖c(t):

L(c) =∫ 1

0‖c′(t)‖c(t)dt. (10.1)

(Here and below, it is clear how definitions extend to curves on anarbitrary domain [a, b].) The notion of length of a curve leads to anatural notion of distance onM, called the Riemannian distance:

dist(x, y) = infc

L(c), (10.2)

where the infimum is taken over all piecewise smooth curves from[0, 1] to M such that c(0) = x and c(1) = y. We have the followingimportant result.

Theorem 10.1. IfM is connected (meaning there exists a continuous curve [Lee18, Thm. 2.55]

connecting every two points), equation (10.2) defines a distance. Equippedwith this distance,M is a metric space whose metric topology coincides withits atlas topology.

IfM is not connected, we may consider this result on the connectedcomponents of M separately. Sometimes, it helps to extend the defi-nition to accept dist(x, y) = ∞ when x, y belong to distinct connectedcomponents. (Owing to second-countability of the atlas topology (see

Page 239: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 239

Section 8.2), a manifold has finitely many, or countably infinitely manyconnected components.)

If the infimum in (10.2) is attained for some curve c (which is not Think of M = R2\0 as a Riemanniansubmanifold of R2, and consider con-necting x and −x.

always the case), we call c a minimizing curve. Remarkably, up to pa-rameterization, these are geodesics (Definition 5.33). In other words:two competing generalizations of the notion of straight line from linearspaces to manifolds turn out to be equivalent: one based on shortestpaths, one based on zero acceleration.

Theorem 10.2. Every minimizing curve admits a constant-speed parameter- [Lee18, Thm. 6.4]

ization such that it is a geodesic, called a minimizing geodesic.

This theorem admits a partial converse. Note that it could not havea full converse since, for example, two nearby points on a sphere canbe connected through both a short and a long geodesic.

Theorem 10.3. Every geodesic c : [0, 1] →M is locally minimizing, that [Lee18, Thm. 6.15]

is, every t ∈ [0, 1] has a neighborhood I ⊆ [0, 1] such that, if a, b ∈ I satisfya < b, then the restriction c|[a,b] is a minimizing curve.

Equipped with a distance, we define a first notion of completeness.Recall that a sequence x0, x1, x2, . . . is Cauchy if for every ε > 0 thereexists an integer k such that, for all m, n > k, dist(xm, xn) < ε.

Definition 10.4. A connected Riemannian manifold is metrically completeif it is complete as a metric space equipped with the Riemannian distance, thatis, if every Cauchy sequence on the manifold converges on the manifold.

There exists another useful notion of completeness for manifolds.

Definition 10.5. A Riemannian manifold is geodesically complete if everygeodesic can be extended to a geodesic defined on the whole real line.

The following is an important classical result that justifies omittingto specify whether we mean metric or geodesic completeness.

Theorem 10.6 (Hopf–Rinow). A connected Riemannian manifold M is [Lee18, Thm. 6.19, Pb. 6-14][O’N83, Thm. 5.21]metrically complete if and only if it is geodesically complete. Additionally,The last part is the Heine–Borel property.M is complete (in either sense) if and only if its compact subsets are exactly

its closed and bounded subsets.

For disconnected manifolds, complete refers to geodesic complete-ness, which is equivalent to metric completeness of each connectedcomponent. For example, the orthogonal group O(n), which has twoconnected components, is complete in this sense.

On a complete manifold, two points in the same connected compo-nent can always be connected by a (not necessarily unique) geodesicwhich attains the infimum in (10.2).

Page 240: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

240 an introduction to optimization on smooth manifolds

Theorem 10.7. If M is complete, then any two points x, y in the same [Lee18, Cor. 6.21] [O’N83, Prop. 5.22]

connected component are connected by a minimizing geodesic c : [0, 1]→Msuch that c(0) = x, c(1) = y and dist(x, y) = L(c).

Example 10.8. Compact Riemannian manifolds are complete.

Example 10.9. A finite-dimensional Euclidean space E is connected andcomplete. The unique minimizing geodesic from x to y is the line segmentt 7→ (1− t)x + ty on [0, 1], and the Riemannian distance dist(x, y) is equalto the Euclidean distance ‖x− y‖.

Exercise 10.10. Show that the length L(c) is independent of the parameter-ization of the curve c, that is, L(c h) = L(c) for any surjective, monotone,piecewise smooth h : [0, 1]→ [0, 1].

10.2 Exponential and logarithmic maps

Using standard tools from the study of ordinary differential equations,one can show that on a Riemannian manifold, for every (x, v) ∈ TM,there exists a unique maximal geodesic [Lee18, Cor. 4.28]

γv : I →M, with γv(0) = x and γ′v(0) = v.

Here, maximal refers to the fact that the interval I is as large as possible(this is not in contrast to the notion of minimizing geodesic we justdefined in the previous section). We use these geodesics to define aspecial map.

Definition 10.11. Consider the following subset of the tangent bundle:

O = (x, v) ∈ TM : γv is defined on an interval containing [0, 1].

The exponential map Exp: O →M is defined by

Exp(x, v) = Expx(v) = γv(1).

The restriction Expx is defined on Ox = v ∈ TxM : (x, v) ∈ O.

For example, in a Euclidean space, Expx(v) = x + v. By Defini-tion 10.5, a manifold M is (geodesically) complete exactly if the do-main of the exponential map is the whole tangent bundle TM.

Given t ∈ R, it holds that γtv(1) = γv(t) whenever either is de-fined [Lee18, Lem. 5.18]. This allows us to express the exponentialmap as

Expx(tv) = γv(t), (10.3)

which is often more convenient. In particular, the domain of Expx is Star-shaped around the origin means:

v ∈ Ox =⇒ tv ∈ Ox for all t ∈ [0, 1].star-shaped around the origin in TxM. Conveniently, Exp is smooth.

Page 241: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 241

Proposition 10.12. The exponential map is smooth on its domain O, which [Lee18, Prop. 5.19]

is open in TM.

The domain O contains all tangent space origins: We say that O isa neighborhood of the zero section of the tangent bundle:

(x, 0) ∈ TM : x ∈ M ⊂ O. (10.4)

The exponential map is a retraction on its domain. More precisely:

Proposition 10.13. The exponential map is a second-order retraction, with [AMS08, §5.5]

a possibly restricted domain O ⊆ TM.

Proof. Proposition 10.12 claims smoothness of Exp. By definition, forany (x, v) ∈ TM, Expx(0) = γv(0) = x, and furthermore

DExpx(0)[v] =ddt

Expx(tv)∣∣∣∣t=0

= γ′v(0) = v,

so that DExpx(0) is the identity map on TxM for all x ∈ M. Finally, itis clear that this retraction is second order (Definition 5.36) since γ′′v (t)is zero for all t, hence in particular for t = 0.

Given a point x and a (sufficiently short) tangent vector v, the expo-nential map produces a new point y = Expx(v). One may reasonablywonder whether, given the two points x, y, one can recover the tangentvector v. In what follows, we aim to understand to what extent theexponential map can be (smoothly) inverted.

A first observation, rooted in the inverse function theorem for man-ifolds [Lee12, Thm. 4.5], is that any retraction R at a point x is locallya diffeomorphism around the origin in the tangent space at x, becauseRx is smooth and DRx(0) is the identity (hence a fortiori invertible).This applies in particular to the exponential map. For the latter, theinjectivity radius quantifies how large the local domains can be.

Definition 10.14. The injectivity radius of a Riemannian manifoldM at a [Lee18, p165]

point x, denoted by inj(x), is the supremum over radii r > 0 such that Expxis defined and is a diffeomorphism on the open ball When we say a map F is a diffeomor-

phism on an open domain U, we meanthat F(U) is open and F is a diffeomor-phism from U to F(U).

B(x, r) = v ∈ TxM : ‖v‖x < r.

By the inverse function theorem, inj(x) > 0.

Consider the ball U = B(x, inj(x)) in the tangent space at x. Itsimage U = Expx(U) is a neighborhood of x in M. By definition, U is a kind of normal neighborhood of x.

[Lee18, p131]Expx : U → U is a diffeomorphism, with well-defined, smooth inverseExp−1

x : U → U. With these choices of domains, v = Exp−1x (y) is the

unique shortest tangent vector at x such that Expx(v) = y. Indeed,if there existed another vector u ∈ TxM such that Expx(u) = y and‖u‖ ≤ ‖v‖, then u would be included in U, which would contradictinvertibility. This suggests the following definition.

Page 242: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

242 an introduction to optimization on smooth manifolds

Definition 10.15. For x ∈ M, let Logx denote the logarithmic map at x, This definition does not exclude suffi-ciently many points from the domainof Logx to ensure smoothness: comparewith Corollary 10.19 below. See also thediscussion of cut locus and, in particular,of conjugate points in [Lee18, §10].

Logx(y) = arg minv∈TxM

‖v‖x subject to Expx(v) = y, (10.5)

with domain such that this is uniquely defined.

In particular, with domains U = B(x, inj(x)) and U = Expx(U) asabove, Logx : U → U is a diffeomorphism with inverse Expx : U → U ,and it is an exercise to show that

‖Logx(y)‖x = dist(x, y), (10.6)

where dist is the Riemannian distance on M. For example, in a Eu-clidean space, Logx(y) = y− x for all x, y. It is important to specifythe domain of Exp−1

x , as there may be some arbitrary choices to make(and not all of them yield Logx = Exp−1

x ). This is illustrated in thefollowing example.

Example 10.16. On the sphere Sn−1, the exponential map is (Example 5.32)

v 7→ Expx(v) = cos(‖v‖)x +sin(‖v‖)‖v‖ v.

This is smooth over the whole tangent bundle, with the usual smooth exten-sion sin(t)/t = 1 at t = 0. Given x, y ∈ Sn−1, we seek an expression forExp−1

x (y). Since x>x = 1 and x>v = 0, considering y = Expx(v) as above,we deduce that x>y = cos(‖v‖). Thus, the following vector (which is readilycomputed given x and y) is parallel to v:

u , y− (x>y)x = Projx(y) =sin(‖v‖)‖v‖ v.

It has norm | sin(‖v‖)| and is parallel to v. Let us exclude the case u = 0which is easily treated separately. Then, dividing u by its norm yields:

u‖u‖ = sign(sin(‖v‖)) v

‖v‖ .

If we restrict the domain of Expx to contain exactly those tangent vectorsv whose norm is strictly less than π, then sign(sin(‖v‖)) = 1. Fur-thermore, the equation x>y = cos(‖v‖) then admits the unique solution‖v‖ = arccos(x>y), where arccos : [−1, 1]→ [0, π] is the principal inverseof cos. Overall, this yields the following expression:

y 7→ Exp−1x (y) = arccos(x>y)

u‖u‖ , (10.7)

smooth over Sn−1\−x. Since the chosen domain for Expx is B(x, π), theinverse is the logarithm: Exp−1

x = Logx. Also, dist(x, y) = arccos(x>y).The crucial point is that, in deriving this expression, we made the (some-

what arbitrary) choice of defining the domain of Expx in a specific way. This

Page 243: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 243

leads to a particular formula for the inverse, and a particular domain forExp−1

x . If we choose the domain of Expx differently, we may very well obtaina different formula for Exp−1

x (not equal to Logx) and a different domain forit as well. For example, on the circle S1, we could decide that if y is aheadof x (counter-clockwise) by an angle less than π/2, then Exp−1

x (y) returnsa vector of length less than π/2, and otherwise it returns a vector of lengthless than 3π/2, pointing in the clockwise direction.

So far, we have fixed the point x, allowing us to claim that, onsome domains, the map y 7→ Exp−1

x (y) is smooth in y. In order todiscuss smoothness jointly in x and y, we need more work. We startwith a general discussion valid for any retraction, and specialize to theexponential map later on.

Proposition 10.17. Let M be a manifold with retraction R defined on aneighborhood O of the zero section of TM. Consider the following map:

E : O →M×M : (x, v) 7→ E(x, v) = (x, Rx(v)). (10.8)

If T ⊆ O is open in TM such that, for all x, Rx is a diffeomorphism onTx = v ∈ TxM : (x, v) ∈ T , then V = E(T ) is open in M×M andE : T → V is a diffeomorphism.

Proof. First, to see that E : T → V is invertible, consider any pairs(x, v), (y, w) ∈ T such that E(x, v) = E(y, w). In other words, we have(x, Rx(v)) = (y, Ry(w)), so that x = y and v, w ∈ Tx. By assumption,Rx is injective on Tx, hence we deduce from Rx(v) = Rx(w) that v = w.

Second, to show that V is open and E : T → V is a diffeomorphism,it remains to check that the differential of E is invertible everywhere inT (the result then follows from applying the inverse function theorem1 1 [Lee12, Thm. 4.5]

at each point of T ). To this end, consider any (x, v) ∈ T . Somewhat To be formal, we should give a more pre-cise description of the tangent space toTM at (x, v). Here, it is identified withTxM× TxM.

informally, the differential DE(x, v) is a block matrix of size two-by-two as follows:

DE(x, v) '[

I 0∗ DRx(v)

].

Indeed, the differential of the first entry of E(x, v) = (x, Rx(v)) withrespect to x is the identity, and it is zero with respect to v. The secondentry has some unspecified differential with respect to x, while itsdifferential with respect to v is DRx(v). Crucially, since v is in Tx,we know by assumption that Rx is a diffeomorphism around v, henceDRx(v) is invertible. We conclude that DE(x, v) is invertible for all(x, v) ∈ T , as announced.

In particular, under the stated conditions, (x, y) 7→ (x, R−1x (y)) is

a diffeomorphism from V to T , meaning the inverse retraction can

Page 244: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

244 an introduction to optimization on smooth manifolds

be defined smoothly jointly in x and y (with care when it comes todomains).

In this last proposition, the fact that T is open is crucial: this is whatties the domains Tx together. Without this assumption, we can stillhave an inverse, but not necessarily a smooth inverse. Furthermore, itis natural to want to include the tangent space origins in T , that is, tomake T a neighborhood of the zero section in TM. It is convenient tomake this happen using a continuous function ∆ : M→ (0, ∞]:

T =(x, v) ∈ TM : ‖v‖x < ∆(x)

. (10.9)

If Rx is defined and is a diffeomorphism on the open ball B(x, ∆(x))in TxM for all x, then Proposition 10.17 applies, and V contains thediagonal (x, x) : x ∈ M.

Conveniently, for the exponential map, we can take ∆ to be as largeas one could possibly hope, namely: we can choose ∆ to be the injec-tivity radius function.

Proposition 10.18. On a Riemannian manifold M, the injectivity radius This does not requireM to be connectedor complete: see the chapter notes inSection 10.8 for a proof.

function inj : M→ (0, ∞] is continuous.

Corollary 10.19. The map (x, v) 7→ (x, Expx(v)) is a diffeomorphism from

T =(x, v) ∈ TM : ‖v‖x < inj(x)

to

V =(x, y) ∈ M×M : dist(x, y) < inj(x)

.

Its inverse is (x, y) 7→ (x, Logx(y)), smooth from V to T .

Under this corollary, we see that (x, y) 7→ Logx(y) is smooth jointlyin x and y over some domain. This is apparent in Example 10.16 forthe sphere, where inj(x) = π for all x.

More generally, we show that for any retraction there exists a posi-tive and continuous function ∆ which can be used to argue existenceof a smooth inverse.

Proposition 10.20. On a Riemannian manifold M, consider the followingopen subsets of the tangent bundle TM: If M is not connected, add the explicit

requirement that x, x′ belong to the sameconnected component, even if δ = ∞.Vδ(x) =

(x′, v′) ∈ TM : dist(x, x′) < δ and ‖v′‖x′ < δ

.

Notice that (x, 0) is in Vδ(x) for all δ > 0. For any retraction R on Mdefined on a neighborhood O of the zero section in TM, define the function∆ : M→ (0, ∞] by:

∆(x) = sup

δ > 0 : Vδ(x) ⊆ O and E is a diffeomorphism on Vδ(x)

,

where E is as defined in (10.8). Then, ∆ is positive and continuous, and Rx

is defined and is a diffeomorphism on B(x, ∆(x)) for all x.

Page 245: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 245

Proof. To see that ∆(x) is positive at every x, apply the inverse func-tion theorem to the fact that the differential of E at (x, 0) is invertible,since it is of the form DE(x, 0) '

[I 0∗ I]

(same as in the proof of Propo-sition 10.17).

To see that ∆ is continuous, we show that ∆(x)−∆(x′) ≤ dist(x, x′)for every two points x, x′ ∈ M. Then, switching the roles of x and x′,we find |∆(x)−∆(x′)| ≤ dist(x, x′), which shows ∆ is continuous withrespect to the Riemannian distance. This is equivalent to continuitywith respect to the atlas topology by Theorem 10.1.

Pick any two points x, x′ ∈ M. If dist(x, x′) ≥ ∆(x), the claim is If ∆(x) = ∞ for some x, then O = TMand E is a diffeomorphism on TM, sothat ∆(x) = ∞ for all x in the same con-nected component: this is also compati-ble with the claim.

clear. So assume dist(x, x′) < ∆(x), and define δ = ∆(x)− dist(x, x′).We claim

Vδ(x′) ⊂ V∆(x)(x).

Indeed, pick any (x′′, v′′) ∈ Vδ(x′). Then,

1. ‖v′′‖x′′ < δ ≤ ∆(x), and

2. dist(x′′, x) ≤ dist(x′′, x′) + dist(x′, x) < δ + dist(x′, x) = ∆(x).

We know that E is a diffeomorphism on V∆(x)(x). Thus, a fortiori,E is a diffeomorphism on Vδ(x′). By definition of ∆(x′), this implies∆(x′) ≥ δ = ∆(x)− dist(x, x′), which is what we needed to show.

The conclusion about Rx follows from the facts that E is a diffeo-morphism on each V∆(x)(x) (which covers B(x, ∆(x))) and from theform of DE, as in the proof of Proposition 10.17.

For general retractions, we obtain the following corollary whichnotably means that, over some domain of M×M which containsall pairs (x, x), the map (x, y) 7→ R−1

x (y) can be defined smoothlyjointly in x and y. There is no need to require that M be a Rieman-nian manifold because the existence of a Riemannian metric is guar-anteed [Lee12, Prop. 13.3]: that is sufficient to apply Proposition 10.20.

Corollary 10.21. For any retraction R on a manifoldM there exists a neigh-borhood T of the zero section of the tangent bundle TM on which

(x, v) 7→ (x, Rx(v))

is a diffeomorphism; T can be taken of the form (10.9) with ∆ : M→ (0, ∞]

continuous.

We close with the notion of injectivity radius of a whole manifold.It may be zero, positive or infinite.

Definition 10.22. The injectivity radius inj(M) of a Riemannian manifold The set of manifolds with positive injec-tivity radius is strictly included in the setof complete manifolds: Exercise 10.25.

M is the infimum of inj(x) over x ∈ M.

Page 246: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

246 an introduction to optimization on smooth manifolds

Proposition 10.23. For a compact Riemannian manifold, inj(M) ∈ (0, ∞). [Lee18, Lem. 6.16]

A Euclidean space has infinite injectivity radius. The unit sphereSn−1 has injectivity radius π. Importantly, the manifold Rm×n

r of ma-trices with fixed rank r embedded in Rm×n (Section 7.5) has zero injec-tivity radius. This is in part due to the fact that there exist matrices inRm×n

r that are arbitrarily close to matrices of rank strictly less than r,as measured in the embedding space (Rm×n

r is not complete).

Exercise 10.24. Consider a smooth curve c : I →M on a Riemannian man-ifold M. Show that its speed ‖c′(t)‖c(t) is constant if and only if c′′(t) isorthogonal to c′(t) at all times. In particular, if c is the unique minimizinggeodesic from c(0) = x to c(1) = y, deduce that c′(0) = Logx(y) so that

‖Logx(y)‖x = ‖c′(0)‖x = dist(x, y).

Likewise, deduce that if ‖v‖x < inj(x) then dist(x, Expx(v)) = ‖v‖x.

Exercise 10.25. Show that if inj(M) is positive then M is complete. Theconverse is not true: give an example of a complete, connected manifold whoseinjectivity radius is zero.

Exercise 10.26. Let K be any subset of a Riemannian manifold M and letr : K → R+ be continuous on R+ = t ≥ 0 (in subspace topologies). Showthat K is compact inM if and only if

T = (x, s) ∈ TM : x ∈ K and ‖s‖x ≤ r(x)

is compact in TM.

10.3 Parallel transport

Consider a Riemannian manifold M and a tangent vector u ∈ TxM. The Riemannian structure is not neces-sary for all claims here to hold, but itis convenient and fits our general treat-ment well.

In several situations, it is desirable to somehow transport u from xto another point y ∈ M. In so doing, we would like for u and itstransported version to be related in some meaningful way.

c(t)

Z(t)

M

Figure 10.1: Parallel transports ‘move’tangent vectors from one tangent spaceto another, along a specified curve. Theycan be used to compare or combinetangent vectors at different points bytransporting them to a common tangentspace.

The differential geometric tool of choice for this task is called paralleltransport. Let c : I →M be a smooth curve such that

c(0) = x and c(1) = y.

Consider a smooth vector field Z ∈ X(c) on this curve with Z(0) = u.If Z does not ‘vary’ too much, it is tempting to consider Z(1) as atransport of u to y. One convenient way to formalize this is to requirethat Z be parallel, that is, using the concept of covariant derivative(Theorem 5.26), to require

Z ∈ X(c), Z(0) = u, andDdt

Z = 0. (10.10)

Using standard tools from ordinary differential equations, one canshow that such a vector field exists and is unique.

Page 247: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 247

Definition 10.27. A vector field Z ∈ X(c) such that Ddt Z = 0 is parallel.

Theorem 10.28. On a Riemannian manifoldM equipped with its Rieman- [Lee18, Thm. 4.32]

nian connection and associated covariant derivative Ddt , for any smooth curve

c : I → M, t0 ∈ I and u ∈ Tc(t0)M, there exists a unique parallel vector

field Z ∈ X(c) such that Z(t0) = u.

This justifies the following definition.

Definition 10.29. Given a smooth curve c onM, the parallel transport of Also called parallel translation.

tangent vectors at c(t0) to the tangent space at c(t1) along c,

PTct1←t0

: Tc(t0)M→ Tc(t1)

M,

is defined by PTct1←t0

(u) = Z(t1), where Z ∈ X(c) is the unique parallel In particular, t 7→ PTct←t0

(u) is a parallelvector field.vector field such that Z(t0) = u.

On occasion, we may write PTcy←x or even PTy←x when the times Think of a tangent vector at the equator

pointing North. Transport it to the Northpole via the shortest path. Alternatively,transport the same vector by first mov-ing along the equator for some distancebefore going to the North pole.

t0, t1 and the curve c such that x = c(t0) and y = c(t1) are clear fromcontext, but beware:

Parallel transport from x to y depends on the choice of curve connectingx and y.

This is, in fact, a crucial feature of Riemannian geometry, intimatelyrelated to the notion of curvature [Lee18, Ch. 7]. Often times, whenthe curve is not specified, one implicitly means to move along theminimizing geodesic connecting x and y, assuming it exists and isunique.

Proposition 10.30. The parallel transport operator PTct1←t0

is linear. It isalso an isometry, that is,

∀u, v ∈ Tc(t0)M, 〈u, v〉c(t0)

=⟨PTc

t1←t0(u), PTc

t1←t0(v)⟩

c(t1).

Furthermore,(PTc

t1←t0

)∗=(PTc

t1←t0

)−1= PTc

t0←t1, where the star denotes

the adjoint. In particular, PTct←t is the identity.

Proof. For linearity, consider u, v ∈ Tc(t0)M and a, b ∈ R, arbitrary. By

Theorem 10.28, there exist unique parallel vector fields Zu, Zv ∈ X(c)such that Zu(t0) = u and Zv(t0) = v. Since Z = aZu + bZv ∈ X(c) isalso parallel and Z(t0) = au + bv, we conclude that Z is the uniqueparallel vector field used in the definition of

PTct1←t0

(au + bv) = Z(t1) = aZu(t1) + bZv(t1)

= aPTct1←t0

(u) + bPTct1←t0

(v),

which shows linearity. To verify isometry, notice that

ddt〈Zu(t), Zv(t)〉c(t) =

⟨Ddt

Zu(t), Zv(t)⟩

c(t)+

⟨Zu(t),

Ddt

Zv(t)⟩

c(t)= 0,

Page 248: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

248 an introduction to optimization on smooth manifolds

using compatibility of the covariant derivative with the Riemannianmetric and the fact that Zu, Zv are parallel. Thus, the inner product isconstant. Isometry implies that the adjoint and the inverse coincide.That the inverse corresponds to parallel transport along the same curvewith swapped times t0, t1 follows from uniqueness again.

By Definition 10.29, it is clear that t1 7→ PTct1←t0

(u) = Z(t1) issmooth (it is a parallel vector field on c). We can also argue smooth-ness in t0, as follows: given Y ∈ X(c), the map t0 7→ PTc

t1←t0(Y(t0)) is

smooth. One convenient way of making this point is via parallel frames.Consider an arbitrary basis e1, . . . , ed for the tangent space at c(t), foran arbitrary t in the domain of definition of c. Construct the parallelvector fields

Ei(t) = PTct←t(ei), for i = 1, . . . , d. (10.11)

Since parallel transport is an isometry, for all t, the vectors Ei(t) form abasis for the tangent space at c(t) (moreover, if the ei are orthonormal,then so are the Ei(t)). There exist unique functions αi(t) such that

Y(t) =d

∑i=1

αi(t)Ei(t). (10.12)

These functions are smooth since Y is smooth. Owing to linearity,

PTct1←t0

(Y(t0)) =d

∑i=1

αi(t0)Ei(t1),

which is clearly smooth in both t0 and t1.Covariant derivatives admit a convenient expression in terms of par-

allel transports: transport the vector field to a common tangent space,differentiate in the usual way (in that fixed tangent space), then trans-port back.

Proposition 10.31. Given a vector field Z ∈ X(c) defined around t0,

Ddt

Z(t) = PTct←t0

(ddt

PTct0←tZ(t)

)= lim

δ→0

PTct←t+δZ(t + δ)− Z(t)

δ.

Proof. Transport any basis e1, . . . , ed of Tc(t0)M along c to form Ei(t) =

PTct←t0

ei. There exist unique, smooth, real functions α1, . . . , αd suchthat Z(t) = ∑d

i=1 αi(t)Ei(t). Then, by the properties of covariant deriva-tives (Theorem 5.26) and D

dt Ei = 0,

Ddt

Z(t) =d

∑i=1

α′i(t)Ei(t)

= PTct←t0

d

∑i=1

α′i(t)ei

= PTct←t0

ddt

d

∑i=1

αi(t)ei = PTct←t0

ddt

PTct0←tZ(t),

Page 249: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 249

as announced. The important point is that t 7→ PTct0←tZ(t) is a map

into the fixed tangent space Tc(t0)M, hence why we can take a classical

derivative ddt .

Exercise 10.32. On the sphere Sn−1 as a Riemannian submanifold of Rn [QGA10a]

with the usual metric, parallel transport along the geodesic c(t) = Expx(tv)admits the following explicit expression:

PTct←0(u) =

(In + (cos(t‖v‖)− 1)

vv>

‖v‖2 − sin(t‖v‖) xv>

‖v‖

)u.

Verify this claim. (Recall Example 5.32 for the exponential.)

Exercise 10.33. Show that if Y is a parallel vector field along a smooth curvec then Y(t1) = PTc

t1←t0(Y(t0)) for all t0, t1 in the domain of c.

10.4 Lipschitz conditions and Taylor expansions

One of the most convenient regularity assumptions one can make re- In this section, we consider maps be-tween smooth manifolds where the mapitself may not be smooth: we define thisin analogy with Definition 8.5. Explicitly,we say a map F : M → M′ is k times(continuously) differentiable at a pointx ∈ M if F = ψ F ϕ−1 is k times (con-tinuously) differentiable at ϕ(x) (in theusual sense), where ϕ and ψ are chartsaround x and F(x), respectively. We sayF is k times (continuously) differentiableif it has that property at every point inM. If M is Riemannian, f : M → R is(continuously) differentiable iff it has a(continuous) Riemannian gradient, andf is twice (continuously) differentiableiff it has a (continuous) Riemannian Hes-sian.

garding the cost function f of an optimization problem is that it or itsderivatives be Lipschitz continuous. Indeed, in the Euclidean case, it iswell known that such properties lead to global bounds on the discrep-ancy between f and its Taylor expansions of various orders. These, inturn, ease worst-case iteration complexity analyses. Here, we considerdefinitions of Lipschitz continuity on Riemannian manifolds, and wederive Taylor bounds analogous to their Euclidean counterparts. In sodoing, the main difficulty is to handle manifolds that are not complete.

Let A, B be two metric spaces. A map F : A → B is L-Lipschitzcontinuous if L ≥ 0 is such that

∀x, y ∈ A, distB(F(x), F(y)) ≤ L distA(x, y),

where distA, distB denote the distances on A and B. In particular:

Definition 10.34. A function f : M → R on a connected manifold M is We implicitly assume that manifolds inthis section are Riemannian.L-Lipschitz continuous if

∀x, y ∈ M, | f (x)− f (y)| ≤ L dist(x, y), (10.13)

where dist is the Riemannian distance on M. If M is disconnected, werequire the condition to hold on each connected component separately.

This definition is equivalent to the similar condition we state below.This next one is more convenient to study iterates of an optimizationalgorithm presented as xk+1 = Expxk

(sk) for some tangent sk.

Proposition 10.35. A function f : M→ R is L-Lipschitz continuous if and In this section, we usually omit sub-scripts for inner products and norms.only if

∀(x, s) ∈ O, | f (Expx(s))− f (x)| ≤ L‖s‖, (10.14)

where O ⊆ TM is the domain of the exponential map (Definition 10.11).

Page 250: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

250 an introduction to optimization on smooth manifolds

To prove this, we first introduce a lemma which states any continu-ous curve c can be interpolated by a ‘broken geodesic’ γ. Of course, ifc is piecewise smooth it has a length and we have L(γ) ≤ L(c).

c(t)

γ(t) M

notM

Figure 10.2: In Lemma 10.36, the curve γis made of a finite number of minimizinggeodesic segments, with endpoints on c.

Lemma 10.36. Given c : [0, 1] → M continuous on a manifold M, thereexist a finite number of times 0 = t0 < t1 < · · · < tn−1 < tn = 1 such thatdist(c(ti), c(ti+1)) < inj(c(ti)) for all i.

These times define a piecewise smooth curve γ : [0, 1] → M satisfyingγ(ti) = c(ti) and such that γ|[ti ,ti+1]

is the minimizing geodesic connectingits endpoints. As such, there exist tangent vectors s0, . . . , sn−1 such thatγ(ti+1) = Expγ(ti)

(si) and ∑n−1i=0 ‖si‖ = L(γ).

Proof. Consider the recursive routine construct with inputs a, b whichproceeds as follows: if dist(c(a), c(b)) < inj(c(a)), return (a, b); if not,return construct(a, (a + b)/2) and construct((a + b)/2, b), merged.We claim that construct(0, 1) is an appropriate selection. Indeed, theroutine terminates after a finite number of steps because inj c is con-tinuous and positive on the compact domain [0, 1] so that it is boundedaway from zero, and c is continuous so that for ε > 0 small enoughwe can have dist(c(t), c(t + ε)) arbitrarily small. Furthermore, for allselected ti, ti+1, we have dist(c(ti), c(ti+1)) < inj(c(ti)). Hence, thereexists a (unique) minimizing geodesic connecting c(ti) to c(ti+1), forall i, and ‖si‖ = L(γ|[ti ,ti+1]

).

Proof of Proposition 10.35. Under condition (10.13), the claim is clear:

∀(x, s) ∈ O, | f (Expx(s))− f (x)| ≤ L dist(Expx(s), x) ≤ L‖s‖

since t 7→ Expx(ts) is a smooth curve defined on [0, 1] with length ‖s‖.The other way around, let us assume condition (10.14) holds. IfM

is complete (that is, O = TM) the claim is also clear: by Theorem 10.7,for all x, y ∈ M in the same connected component there exists s inTxM such that y = Expx(s) and ‖s‖ = dist(x, y).

If M is not complete, we proceed as follows: by definition of dis-tance (10.2), for all x, y ∈ M in the same connected component andfor all ε > 0, there exists a piecewise smooth curve c : [0, 1]→M withlength L(c) ≤ dist(x, y) + ε such that c(0) = x and c(1) = y. Con-struct a broken geodesic γ as provided by Lemma 10.36: there existtimes 0 = t0 < · · · < tn = 1 and tangent vectors s0, . . . , sn−1 suchthat γ(ti) = c(ti) and γ(ti+1) = Expγ(ti)

(si) for all i, and ∑n−1i=0 ‖si‖ =

L(γ) ≤ L(c). Then,

| f (x)− f (y)| ≤n−1

∑i=0| f (γ(ti))− f (γ(ti+1))|

(10.14)≤ L ·

n−1

∑i=0‖si‖ ≤ L · L(c).

This reasoning holds for all ε > 0, hence condition (10.13) follows.

Page 251: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 251

If f has a continuous gradient, we express Lipschitz continuity asfollows.

Proposition 10.37. If f : M → R has a continuous gradient, then f isL-Lipschitz continuous if and only if

∀x ∈ M, ‖grad f (x)‖ ≤ L. (10.15)

Proof. For any (x, s) ∈ O, consider c(t) = Expx(ts) for t ∈ [0, 1]. Then,

f (c(1))− f (c(0)) =∫ 1

0( f c)′(t)dt =

∫ 1

0

⟨grad f (c(t)), c′(t)

⟩dt.

Thus, if the gradient norm is bounded by L at all points along c,

| f (Expx(s))− f (x)| ≤ L∫ 1

0‖c′(t)‖dt = L · L(c) = L‖s‖.

This shows that (10.14) holds.The other way around, for any x ∈ M, assuming (10.14) holds and

using that the domain of Expx is open around the origin,

‖grad f (x)‖ = maxs∈TxM,‖s‖=1

〈grad f (x), s〉

= maxs∈TxM,‖s‖=1

D f (x)[s]

= maxs∈TxM,‖s‖=1

limt→0

f (Expx(ts))− f (x)t

≤ L,

since f (Expx(ts))− f (x) ≤ L‖ts‖ = L|t|.

We now turn to defining Lipschitz continuity for the Riemanniangradient of a function f . Since grad f is a map fromM to TM, to applythe general notion of Lipschitz continuity directly we would need topick a distance on the tangent bundle.2 However, this would not lead 2 A canonical choice would follow from

the Sasaki metric [GHL04, §2.B.6].to interesting notions for us. Indeed, the distance between grad f (x)and grad f (y) would necessarily have to be positive if x 6= y since theywould always be distinct points in TM. Contrast this to the Euclideancase f : E → R, where it is natural to measure grad f (x)− grad f (y) inthe Euclidean metric, disregarding the root points. With this in mind,it is natural to rely on the notion of parallel transport (Section 10.3) tocompare tangent vectors at distinct points. Since parallel transport isdependent on paths, this leaves some leeway in the definition.

The following definition is fairly common. Notice how the restric-tion by the injectivity radius allows us to resolve any ambiguity interms of choice of path along which to transport.

Definition 10.38. A vector field V on a connected manifoldM is L-Lipschitz For our purpose, this notion is particu-larly relevant with V = grad f , in whichcase we would say f has an L-Lipschitzcontinuous gradient.

continuous if, for all x, y ∈ M with dist(x, y) < inj(x),∥∥PTγ0←1V(y)−V(x)

∥∥ ≤ L dist(x, y), (10.16)

Page 252: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

252 an introduction to optimization on smooth manifolds

where γ : [0, 1] → M is the unique minimizing geodesic connecting x to y.IfM is disconnected, require the condition on each connected component.

Here too, we provide an equivalent definition in terms of the ex-ponential map: this may be more convenient to analyze optimizationalgorithms, and has the added benefit of allowing the comparison ofpoints which are further apart than the injectivity radius (but still con-nected by a geodesic).

Proposition 10.39. A vector field V on a manifoldM is L-Lipschitz contin-uous if and only if

∀(x, s) ∈ O, ‖P−1s V(Expx(s))−V(x)‖ ≤ L‖s‖, (10.17)

where O ⊆ TM is the domain of Exp and Ps denotes parallel transport alongγ(t) = Expx(ts) from t = 0 to t = 1.

Proof. For any x, y ∈ M such that dist(x, y) < inj(x), there exists aunique s ∈ TxM such that y = Expx(s) and ‖s‖ = dist(x, y). Thus, ifcondition (10.17) holds, then (10.16) holds.

The other way around, for any (x, s) ∈ O, consider the geodesicγ(t) = Expx(ts) defined over [0, 1]. It may or may not be minimizing.In any case, owing to Lemma 10.36, the interval [0, 1] can be partitionedby 0 = t0 < · · · < tn = 1 such that dist(γ(ti), γ(ti+1)) < inj(γ(ti)).Since

PTγ0←1 = PTγ

t0←tn−1 PTγ

tn−1←tn

and since parallel transport is an isometry, we find that

‖PTγt0←tn

V(γ(tn))−V(x)‖ = ‖PTγtn−1←tn

V(γ(tn))− PTγtn−1←t0

V(x)‖

≤ ‖PTγtn−1←tn

V(γ(tn))−V(γ(tn−1))‖

+ ‖PTγtn−1←t0

V(x)−V(γ(tn−1))‖

≤ L dist(γ(tn−1), γ(tn))

+ ‖PTγt0←tn−1

V(γ(tn−1))−V(x)‖,

where in the last step we used (10.16). Repeat this argument on theright-most term n− 1 times to conclude

‖PTγ0←1V(Expx(s))−V(x)‖ ≤ L

n−1

∑i=0

dist(γ(ti), γ(ti+1)) = L · L(γ),

using that γ is a geodesic. To conclude, note that L(γ) = ‖s‖ and thatPTγ

0←1 = P−1s , so that condition (10.17) holds.

If the vector field V is continuously differentiable, it is easy to saymore about ‘long range’ vector transports, comparing V at points xand y which may not necessarily be connected by a geodesic.

Page 253: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 253

Proposition 10.40. If V is a continuously differentiable vector field on amanifoldM, then it is L-Lipschitz continuous if and only if

∀(x, s) ∈ TM, ‖∇sV‖ ≤ L‖s‖, (10.18)

where ∇ is the Riemannian connection. In that case, for any smooth curvec : [0, 1]→M connecting x to y, it holds that

‖PTc0←1V(y)−V(x)‖ ≤ L · L(c). (10.19)

Proof. We first show that (10.18) implies (10.19). Since the latter itselfimplies (10.17), this also takes care of showing that (10.18) implies Vis L-Lipschitz continuous. To this end, consider an orthonormal ba-sis e1, . . . , ed ∈ TxM and their parallel transports Ei(t) = PTc

t←0(ei).Then, V(c(t)) = ∑d

i=1 vi(t)Ei(t) for some continuously differentiablefunctions vi, and

d

∑i=1

v′i(t)Ei(t) =Ddt

(V c)(t) = ∇c′(t)V.

Furthermore,

PTc0←1V(c(1))−V(c(0)) =

d

∑i=1

(vi(1)− vi(0))ei

=d

∑i=1

(∫ 1

0v′i(t)dt

)ei =

∫ 1

0PTc

0←t

(∇c′(t)V

)dt.

Consequently, using that parallel transports are isometric,

‖PTc0←1V(y)−V(x)‖ ≤

∫ 1

0‖∇c′(t)V‖dt

(10.18)≤ L

∫ 1

0‖c′(t)‖dt = L · L(c).

Now for the other direction: assume V is L-Lipschitz continuous. Forany x ∈ M, using that the domain of Expx is open around the origin,we know that for all s ∈ TxM the smooth curve c(t) = Expx(ts) isdefined around t = 0. Then, by Proposition 10.31,

∇sV =Ddt

V(c(t))∣∣∣∣t=0

= limt→0

PTc0←tV(c(t))−V(c(0))

t.

By (10.17), the norm of the numerator is bounded by |t|L, which con-cludes the proof.

Corollary 10.41. If f : M → R is twice continuously differentiable on amanifoldM, then grad f is L-Lipschitz continuous if and only if Hess f (x)has operator norm bounded by L for all x, that is, if for all x we have

‖Hess f (x)‖ = maxs∈TxM‖s‖=1

‖Hess f (x)[s]‖ ≤ L.

Page 254: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

254 an introduction to optimization on smooth manifolds

Let us summarize these findings.

Corollary 10.42. For a vector field V on a manifoldM, these are equivalent:

1. V is L-Lipschitz continuous.

2. For all x, y in the same component with dist(x, y) < inj(x), it holdsthat ‖PTγ

0←1V(y)−V(x)‖ ≤ L dist(x, y) with γ the unique minimizinggeodesic connecting x to y.

3. For all (x, s) in the domain of Exp, ‖P−1s V(Expx(s))− V(x)‖ ≤ L‖s‖

where Ps is parallel transport along c(t) = Expx(ts) from t = 0 to t = 1.

If V is continuously differentiable, the above are equivalent to the following:

4. For any smooth c : [0, 1]→M, ‖PTc0←1V(c(1))−V(c(0))‖ ≤ L · L(c).

5. For all (x, s) ∈ TM, ‖∇sV‖ ≤ L‖s‖.

Particularizing to V = grad f the above provides a good under-standing of functions f with Lipschitz continuous gradients.

Going one degree higher, we now define and discuss functions with Section 10.7 gives a general take on ten-sor fields, adopting the viewpoint thatHess f (x) is a bilinear map from (TxM)2

to R, through the Riemannian metric:Hess f (x)(u, v) = 〈Hess f (x)[u], v〉 .

a Lipschitz continuous Hessian. The Hessian Hess f is a tensor field oforder two onM: for each x, Hess f (x) is a linear operator from TxM toitself. The following definition applies.

Definition 10.43. Let H be a tensor field of order two on a connected mani- For each x, H(x) : TxM → TxM is lin-ear. We are particularly interested in thespecial case where H(x) = Hess f (x).

foldM. We say H is L-Lipschitz continuous if for all x, y ∈ M such thatdist(x, y) < inj(x) we have

‖PTγ0←1 H(y) PTγ

1←0 − H(x)‖ ≤ L dist(x, y), (10.20)

where ‖ · ‖ denotes the operator norm with respect to the Riemannian metric, ‖H(x)‖ = maxs∈TxM,‖s‖=1 ‖H(x)[s]‖and γ : [0, 1] → M is the unique minimizing geodesic connecting x to y. IfM is disconnected, we require the condition on each connected component.

The proof of the following proposition is left as an exercise.

Proposition 10.44. A tensor field H of order two on a manifold M is L-Lipschitz continuous if and only if

∀(x, s) ∈ O, ‖P−1s H(Expx(s)) Ps − H(x)‖ ≤ L‖s‖, (10.21)

where O ⊆ TM is the domain of Exp and Ps denotes parallel transport alongγ(t) = Expx(ts) from t = 0 to t = 1.

We make the following statement now, deferring a formal definitionof what the covariant derivative of a tensor field is to Section 10.7.

Proposition 10.45. If H is a continuously differentiable tensor field of ordertwo on a manifoldM, then it is L-Lipschitz continuous if and only if

∀(x, s) ∈ TM, ‖∇sH‖ ≤ L‖s‖, (10.22)

Page 255: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 255

where ∇ is the Riemannian connection. In that case, for any smooth curvec : [0, 1]→M connecting x to y, it holds that

‖PTc0←1 H(y) PTc

1←0 − H(x)‖ ≤ L · L(c). (10.23)

Proof. The proof is similar to that of Proposition 10.40, using the prop-erties of ∇H afforded by the general definitions we have omitted. Forpart of the proof, a starting point is to construct an orthonormal frameE1, . . . , Ed along a curve c as usual, and to use this frame to expandH(c(t)) = ∑d

i,j=1 hij(t)Ei(t)⊗Ej(t), where⊗ denotes a tensor (or outer)product: for u, v ∈ TxM, u⊗ v is a linear operator from TxM to itselfdefined by (u⊗ v)[s] = 〈v, s〉 u.

Corollary 10.46. If f : M → R is three times continuously differentiableon a manifoldM, then Hess f is L-Lipschitz continuous if and only if

∀(x, s) ∈ TM, ‖∇sHess f ‖ ≤ L‖s‖,

where ∇sHess f is a self-adjoint linear operator on TxM.

A summary of the same kind as Corollary 10.42 holds for tensorfields of order two as well. As one would expect, upon considering thegeneral definitions of tensor fields and their covariant derivatives, allof the above generalizes to higher order tensor fields: see Section 10.7.

We can now derive some of the most useful consequences of Lips-chitz continuity, namely, bounds on the difference between a functionf (or its derivatives) and corresponding Taylor expansions.

We use the following notation repeatedly: given (x, s) in the domainO of the exponential map, let γ(t) = Expx(ts) be the correspondinggeodesic (defined in particular on the interval [0, 1]). Then, we let

Pts = PTγt←0 (10.24)

denote parallel transport from x to Expx(ts) along γ. Since γ is ageodesic, its velocity vector field is parallel and we have

γ′(t) = Ptsγ′(0) = Ptss. (10.25)

We use this frequently.

Proposition 10.47. Let f : M → R be continuously differentiable on amanifold M. Let γ(t) = Expx(ts) be defined on [0, 1] and assume thereexists L ≥ 0 such that, for all t ∈ [0, 1],∥∥∥P−1

ts grad f (γ(t))− grad f (x)∥∥∥ ≤ L‖ts‖.

Then, the following inequality holds:∣∣ f (Expx(s))− f (x)− 〈s, grad f (x)〉∣∣ ≤ L

2‖s‖2.

Page 256: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

256 an introduction to optimization on smooth manifolds

Proof. Consider the real function f γ:

f (γ(1)) = f (γ(0)) +∫ 1

0( f γ)′(t)dt

= f (x) +∫ 1

0

⟨grad f (γ(t)), γ′(t)

⟩dt

= f (x) +∫ 1

0

⟨P−1

ts grad f (γ(t)), s⟩

dt,

where on the last line we used γ′(t) = Ptss and the fact that Pts is anisometry, so that its adjoint with respect to the Riemannian metric isequal to its inverse. Moving f (x) to the left-hand side and subtracting〈grad f (x), s〉 on both sides, we get

f (Expx(s))− f (x)− 〈grad f (x), s〉 =∫ 1

0

⟨P−1

ts grad f (γ(t))− grad f (x), s⟩

dt.

Using Cauchy–Schwarz and our main assumption, it follows that

∣∣ f (Expx(s))− f (x)− 〈s, grad f (x)〉∣∣ ≤ ∫ 1

0tL‖s‖2dt =

L2‖s‖2,

as announced.

Corollary 10.48. If f : M→ R has L-Lipschitz continuous gradient, then In particular, regularity assumptions A3

and A9 hold for the exponential retrac-tion over its whole domain, providedgrad f is L-Lipschitz (Definition 10.38).See also Exercise 10.52.

∣∣ f (Expx(s))− f (x)− 〈s, grad f (x)〉∣∣ ≤ L

2‖s‖2

for all (x, s) in the domain of the exponential map.

Proposition 10.49. Let f : M→ R be twice continuously differentiable ona manifold M. Let γ(t) = Expx(ts) be defined on [0, 1] and assume thereexists L ≥ 0 such that, for all t ∈ [0, 1],∥∥∥P−1

ts Hess f (γ(t)) Pts −Hess f (x)∥∥∥ ≤ L‖ts‖.

Then, the two following inequalities hold:∣∣∣∣ f (Expx(s))− f (x)− 〈s, grad f (x)〉 − 12〈s, Hess f (x)[s]〉

∣∣∣∣ ≤ L6‖s‖3,∥∥∥P−1

s grad f (Expx(s))− grad f (x)−Hess f (x)[s]∥∥∥ ≤ L

2‖s‖2.

Proof. The proof is in three steps.Step 1: a preliminary computation. Pick an arbitrary basis e1, . . . , ed

for TxM and define the parallel vector fields Ei(t) = Ptsei along γ(t):E1(t), . . . , Ed(t) form a basis for Tγ(t)M for each t ∈ [0, 1]. As a result,we can express the gradient of f along γ(t) in these bases,

grad f (γ(t)) =d

∑i=1

αi(t)Ei(t), (10.26)

Page 257: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 257

with α1(t), . . . , αd(t) differentiable. Using the Riemannian connection∇ and associated covariant derivative D

dt , we find on the one hand that

Ddt

grad f (γ(t)) = ∇γ′(t)grad f = Hess f (γ(t))[γ′(t)],

and on the other hand that

Ddt

d

∑i=1

αi(t)Ei(t) =d

∑i=1

α′i(t)Ei(t) = Pts

d

∑i=1

α′i(t)ei.

Combining with γ′(t) = Ptss, we deduce that

d

∑i=1

α′i(t)ei =(

P−1ts Hess f (γ(t)) Pts

)[s].

Going back to (10.26), we also see that

G(t) , P−1ts grad f (γ(t)) =

d

∑i=1

αi(t)ei

is a map from (a subset of) R to TxM—two linear spaces—so that wecan differentiate it in the usual way:

G′(t) =d

∑i=1

α′i(t)ei.

Overall, we conclude that

G′(t) =ddt

P−1ts grad f (γ(t)) =

(P−1

ts Hess f (γ(t)) Pts

)[s]. (10.27)

This comes in handy in the next step.Step 2: Taylor expansion of the gradient. Since G′ is continuous,

P−1ts grad f (γ(t)) = G(t) = G(0) +

∫ t

0G′(τ)dτ

= grad f (x) +∫ t

0

(P−1

τs Hess f (γ(τ)) Pτs

)[s]dτ.

Moving grad f (x) to the left-hand side and subtracting Hess f (x)[ts] onboth sides, we find

P−1ts grad f (γ(t))− grad f (x)−Hess f (x)[ts]

=∫ t

0

(P−1

τs Hess f (γ(τ)) Pτs −Hess f (x))[s]dτ.

Using the main assumption on Hess f along γ, it follows that∥∥∥P−1ts grad f (γ(t))− grad f (x)−Hess f (x)[ts]

∥∥∥≤∫ t

0τL‖s‖2dτ =

L2‖ts‖2. (10.28)

Page 258: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

258 an introduction to optimization on smooth manifolds

For t = 1, this is the announced inequality.Step 3: Taylor expansion of the function value. With the same start

as in the proof of Proposition 10.47 but subtracting the additional term12 〈s, Hess f (x)[s]〉 on both sides, we get

f (Expx(s))− f (x)− 〈grad f (x), s〉 − 12〈s, Hess f (x)[s]〉

=∫ 1

0

⟨P−1

ts grad f (γ(t))− grad f (x)−Hess f (x)[ts], s⟩

dt.

Using (10.28) and Cauchy–Schwarz, it follows that∣∣∣∣ f (Expx(s))− f (x)− 〈s, grad f (x)〉 − 12〈s, Hess f (x)[s]〉

∣∣∣∣≤∫ 1

0t2 L

2‖s‖3dt =

L6‖s‖3,

as announced.

Corollary 10.50. If f : M→ R has L-Lipschitz continuous Hessian, then In particular, regularity assumption A10

holds for the exponential retraction overits whole domain, provided Hess f is L-Lipschitz continuous (Definition 10.43).See also Exercise 10.79.

∣∣∣∣ f (Expx(s))− f (x)− 〈s, grad f (x)〉 − 12〈s, Hess f (x)[s]〉

∣∣∣∣ ≤ L6‖s‖3,

and∥∥∥P−1

s grad f (Expx(s))− grad f (x)−Hess f (x)[s]∥∥∥ ≤ L

2‖s‖2,

for all (x, s) in the domain of the exponential map.

Exercise 10.51. Let f : M→ R be differentiable on a manifoldM equipped Note the implications for the regularityassumptions A3 and A9. It is straight-forward to extend this in relation to A10.

with a retraction R. Assume the pullback fx = f Rx satisfies

‖grad fx(ts)− grad fx(0)‖ ≤ L‖ts‖

for some s ∈ TxM and all t ∈ [0, 1]. Deduce that

| f (Rx(s))− f (x)− 〈s, grad f (x)〉| ≤ L2‖s‖2.

Exercise 10.52. Let f : M → R be twice continuously differentiable on a Here too, note the implications for theregularity assumptions A3 and A9. Seealso Exercise 10.79.

manifoldM equipped with a retraction R. Assume

f (Rx(s)) ≤ f (x) + 〈s, grad f (x)〉+ L2‖s‖2 (10.29)

for all (x, s) in a neighborhood of the the zero section in the tangent bundle.With fx = f Rx, show that ‖Hess fx(0)‖ ≤ L. Deduce that if R is secondorder then the inequalities hold only if grad f is L-Lipschitz continuous. WithR = Exp in particular, verify that these three claims are equivalent:

1. Inequalities (10.29) hold in a neighborhood of the zero section in TM;

2. grad f is L-Lipschitz continuous;

3. Inequalities (10.29) hold over the whole domain of Exp.

Exercise 10.53. Give a proof of Proposition 10.44, for example by adaptingthat of Proposition 10.39.

Page 259: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 259

10.5 Transporters

The strong properties of parallel transports make them great for the-oretical purposes, and in some cases they can even be computed viaexplicit expressions. In general though, computing parallel transportsinvolves numerically solving ordinary differential equations, which istypically too expensive in practice. Furthermore, we may want to dis-pense with the need to choose a curve connecting x and y explicitly totransport vectors from TxM to TyM, as this may add to the computa-tional burden (e.g., require computing Logx(y) if we mean to transportalong minimizing geodesics).

As an alternative, we define a poor man’s version of parallel trans-ports called transporters. There is no need for a Riemannian structureor connection. Informally, for x and y close enough to one another, we This is different from the notion of vector

transport as defined in [AMS08, §8.1]: weconnect both concepts at the end of thissection.

aim to define linear maps of the form

Ty←x : TxM→ TyM,

with Tx←x in particular being the identity map. IfM is an embeddedsubmanifold of a Euclidean space, we present a simple transporterbased on orthogonal projections to tangent spaces in Proposition 10.60.

It is natural and convenient to ask that these maps vary smoothlywith respect to x and y. One indirect way to make sense of this state-ment would be to require that the map ((x, u), y) 7→ Ty←xu be smoothfrom (an open submanifold of) TM×M to TM. However, it is moreinstructive (and eventually more comfortable) to endow the set of lin-ear maps between tangent spaces of two manifolds with a smooth Here, the two manifolds are the same.

structure. Once this is done, we can formalize the notion of smooth-ness for a map (x, y) 7→ Ty←x. This is in direct analogy with how wedefined the tangent bundle TM as a disjoint union of tangent spaces,associating a linear space TxM to each point x ∈ M. Here, we asso-ciate to each pair (x, y) ∈ M×N the linear space of linear maps fromTxM to TyN . The proof is an exercise.

Proposition 10.54. For manifolds M and N of dimensions m and n, thedisjoint union of linear maps from the tangent spaces ofM to those of N ,

L(TM, TN ) = (x, y,L) | x ∈ M, y ∈ N and L : TxM→ TyN is linear ,

is itself a manifold, with charts as follows: for any pair of charts (U , ϕ)

and (V , ψ) of M and N respectively, pick local frames on U and V as inProposition 8.46; then,

Φ(x, y,L) = (ϕ(x), ψ(y), Mat(L)) ∈ Rm ×Rn ×Rn×m

is a chart on π−1(U × V), where Mat(L) is the matrix that represents Lwith respect to the bases of TxM and TyN provided by the local frames, andπ(x, y,L) = (x, y) is the projector from L(TM, TN ) toM×N .

Page 260: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

260 an introduction to optimization on smooth manifolds

The manifold L(TM, TN ) is a vector bundle of M×N in that it(smoothly) attaches a linear space to each point of that manifold. Mapssuch as transporters defined below have the property that they map(x, y) to (x, y,L) for some L: these are called sections of the vectorbundle. In the same way, vector fields are called sections of the tangentbundle.

Definition 10.55. Given a manifoldM, let V be open inM×M such that [HGA15, §4.3]

(x, x) ∈ V for all x ∈ M. A transporter on V is a smooth map

T: V → L(TM, TM) : (x, y) 7→ Ty←x

such that Ty←x is linear from TxM to TyM and Tx←x is the identity.

In this definition, smoothness of T is understood with V as anopen submanifold of the product manifoldM×M and L(TM, TM)

equipped with the smooth structure of Proposition 10.54. Formally,this means that for any pair (x, y) ∈ V and local frames defined onneighborhoods Ux and Uy, the matrix that represents Ty←x with re-spect to these local frames varies smoothly with (x, y) in Ux × Uy. Wedetail this in the proof of the next proposition, which shows that in-verting the linear maps of a transporter yields a transporter.

Proposition 10.56. For a transporter T on V , let V ′ be the set of pairs(x, y) ∈ V such that Tx←y is invertible. Then, the maps

T′y←x = (Tx←y)−1 : TxM→ TyM

define a transporter T′ on V ′.

Proof. For all x ∈ M, since Tx←x is the identity map, clearly (x, x) ∈ V ′and T′x←x is itself the identity. Likewise, for all (x, y) ∈ V ′, it is clearthat T′y←x is linear. It remains to argue that V ′ is open inM×M andthat T′ is smooth from V ′ to L(TM, TM).

To this end, consider an arbitrary pair (x, y) ∈ V ′ and let U1, . . . , Ud V is open inM×M, hence it is a unionof products of open sets in M. Oneof these products, say U × U , contains(x, y), as otherwise it would not be in V .Thus, x ∈ U and y ∈ U . Replace Ux byits intersection with U , and similarly forUy: now Ux × Uy ⊆ V is a neighborhoodof (x, y) and the local frames are well de-fined.

be a local frame on a neighborhood Ux of x with d = dimM—seeProposition 8.46. Likewise, let W1, . . . , Wd be a local frame on a neigh-borhood Uy of y. If need be, reduce Ux and Uy to smaller neighbor-hoods of x and y so that Ux × Uy ⊆ V . Since T is smooth, the ma-trix G(x, y) in Rd×d that represents Tx←y with respect to the basesU1(x), . . . , Ud(x) and W1(y), . . . , Wd(y) varies smoothly with (x, y) inUx × Uy. In particular, the function (x, y) 7→ det G(x, y) is smooth onthis domain, so that the subset of Ux × Uy over which det G(x, y) 6= 0(that is, over which Tx←y is invertible) is open, and it contains (x, y).In other words: this subset is a neighborhood of (x, y) in V ′. Sinceeach point in V ′ admits such a neighborhood, we find that V ′ is open.Furthermore, the matrix that represents T′y←x is simply G(x, y)−1. Thisis a smooth function of (x, y) on the open set where the inverse is welldefined, confirming that T′ is smooth from V ′ to L(TM, TM).

Page 261: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 261

With similar developments, we also get the following result once weequip the manifold with a Riemannian metric.

Proposition 10.57. LetM be a Riemannian manifold and let T be a trans-porter forM on V . Then, T′ defined by the maps

T′y←x = (Tx←y)∗ : TxM→ TyM

is a transporter on V . (As always, the superscript ∗ denotes the adjoint, herewith respect to the Riemannian metric at x and y.)

Proof sketch. Compared to Proposition 10.56 (and using the same no-tation), an extra step in the proof is to show that, using local frames,the Riemannian metric can be represented as a smooth map from x toM(x): a symmetric, positive definite matrix of size d which allowsus to write 〈u, v〉x = u>M(x)v with u, v ∈ Rd denoting the coor-dinate vectors of u, v in the same local frame. Upon doing so, it isstraightforward to show that the matrix which represents (Tx←y)∗ isM(y)−1G(x, y)>M(x), which is indeed smooth in (x, y).

Upon choosing a smoothly varying collection of curves that uniquelyconnect pairs of nearby points on M, it is easy to construct a trans-porter from parallel transport along those curves. One way of choosingsuch families of curves is via a retraction. Conveniently, the differen-tials of a retraction also provide a transporter: this is a good alternativewhen parallel transports are out of reach.

Proposition 10.58. For a retraction R on a manifoldM, let T be a neighbor-hood of the zero section of TM such that E(x, v) = (x, Rx(v)) is a diffeomor-phism from T to V = E(T )—such neighborhoods exist by Corollary 10.21.For our purpose, this means (x, y) 7→ (x, R−1

x (y)) is a diffeomorphism fromV to T , yielding a smooth choice of curves joining pairs (x, y).

1. Assume Tx = v ∈ TxM : (x, v) ∈ T is star-shaped around the origin Here we assume M is Riemannian andrefer to the associated parallel transport.for all x. Parallel transport along retraction curves defines a transporter

on V via Ty←x = PTc1←0, where c(t) = Rx(tv) and v = R−1

x (y).

2. The differentials of the retraction define a transporter on V via Ty←x = Intuitively, by perturbing v in TxM, weperturb Rx(v) away from y, thus produc-ing a tangent vector in TyM.

DRx(v), where v = R−1x (y).

Proof. The domain V ⊆ M×M is open and indeed contains all pairs(x, x) since E(x, 0) = (x, x). For both proposed transporters, it is clearthat Tx←x is the identity and that Ty←x is a linear map from TxM toTyM. Smoothness for parallel transport can be argued with tools fromordinary differential equations (it takes some work). Smoothness forthe retraction-based transport follows by composition of smooth mapssince Ty←x = DRx(R−1

x (y)).

Page 262: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

262 an introduction to optimization on smooth manifolds

Example 10.59. Transporters can be used to transport linear maps betweencertain tangent spaces to other tangent spaces. This is useful notably in defin-ing a Riemannian version of the famous BFGS algorithm. For example, if Ais a linear map from TxM to TxM, then we may transport it to a linear mapfrom TyM to TyM in at least three ways using a transporter T:

Ty←x A Tx←y, (Tx←y)∗ A Tx←y, (Tx←y)

−1 A Tx←y.

For the first two, we need (x, y) to be in the domain of T; for the last one,we also need Tx←y to be invertible. If A is self-adjoint, then so is the sec-ond operator. If the transporter is obtained through parallel transport as inProposition 10.58 and the curve connecting x to y is the same as the curveconnecting y to x (for example, if we use unique minimizing geodesics), thenall three operators are equal: see Proposition 10.30.

For manifolds embedded in Euclidean spaces, one particularly con-venient transporter is given by orthogonal projectors to the tangentspaces. In contrast to Proposition 10.58, it does not involve retractions.

Proposition 10.60. LetM be an embedded submanifold of a Euclidean spaceE . For all x, y ∈ M, exploiting the fact that both TxM and TyM aresubspaces of E , define the linear maps

Ty←x = Projy∣∣∣TxM

,

where Projy is the orthogonal projector from E to TyM, here restricted toTxM. This is a transporter on all ofM×M.

Proof. By design, Tx←x is the identity and Ty←x is linear from TxM toTyM. Moreover, T is smooth as can be deduced by an argument alongthe same lines as in Exercise 3.56.

For a quotient manifold M = M/∼, in the same way that wediscussed conditions for a retraction R on the total spaceM to inducea retraction R on the quotient manifold M, it is tempting to derive atransporter T onM from a transporter T onM. We show through anexample how this can be done.

Example 10.61. Consider the Grassmann manifold Gr(n, p) = St(n, p)/∼(recall Example 9.18). Equip the total space with the polar retraction (7.22),RX(V) = pfactor(X + V), and with the projection transporter,

TY←X = ProjStY |TXSt(n,p),

the orthogonal projector from Rn×p to TYSt(n, p) restricted to TXSt(n, p).This transporter is defined globally on St(n, p) × St(n, p). Our tentativetransporter on Gr(n, p) is:

T[Y]←[X](ξ) = Dπ(Y)[TY←X(liftX(ξ))

], (10.30)

Page 263: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 263

where X is an arbitrary representative of [X], and Y is a representative of [Y]such that Y = RX(V) for some V ∈ HX , assuming one exists. When such achoice of Y and V exists, it is unique. Indeed, consider the map

E : TGr(n, p)→ Gr(n, p)×Gr(n, p)

: ([X], ξ) 7→ E([X], ξ) = ([X], [RX(V)]), (10.31)

where V = liftX(ξ). In Exercise 10.65, we find that E from TGr(n, p) toV = E(TGr(n, p)) is smoothly invertible. In other words: if [Y] can bereached from [X] through retraction, it is so by a unique tangent vector ξ; thelatter has a specific horizontal lift V once we choose a specific representativeX. Furthermore, since E−1 is continuous, V is open. Finally, V contains allpairs of the form ([X], [X]). This set V is meant to be the domain of T.

Now restricting our discussion to V , We rewrite (10.30) equivalently as

liftY

(T[Y]←[X](ξ)

)= ProjHY

(TY←X(liftX(ξ))

)= ProjHY (liftX(ξ)) , (10.32)

where we used that ProjHY ProjStY = ProjHY . We must check that T[Y]←[X] (a)

is well defined, and (b) defines a transporter, both on V .For (a), we must check that the right-hand side of (10.30) does not depend

on our choice of representatives X and Y. To this end, consider (10.32).Recall from Example 9.25 that if we choose the representative XQ insteadof X for [X] with some arbitrary Q ∈ O(p), then liftXQ(ξ) = liftX(ξ)Q.The representative Y also changes as a result. Indeed, given V ∈ HX suchthat RX(V) = Y, we know that VQ ∈ HXQ is such that RXQ(VQ) = YQ(this is specific to the polar retraction by (9.9)), and this is the only horizontalvector at XQ that maps to [Y]. Since ProjHY = ProjHYQ = In − YY>, we findthat

liftYQ

(T[Y]←[X](ξ)

)= ProjHYQ

(liftXQ(ξ)

)= (In −YY>) liftX(ξ)Q

= liftY

(T[Y]←[X](ξ)

)Q.

This confirms that the lifted vectors correspond to each other in the appro-priate way, that is, the result T[Y]←[X](ξ) does not depend on our choice ofrepresentative X.

Regarding (b), it is clear that T[Y]←[X] is a linear map from T[X]Gr(n, p)to T[Y]Gr(n, p), as a composition of linear maps. Likewise, T is smooth asa composition of smooth maps (this also follows from Exercise 10.65, whichshows that given ([X], [Y]) ∈ V , for any choice of representative X, there isa smooth choice of Y and V (horizontal) such that Y = RX(V)). It is easyto see that T[X]←[X] is the identity. Finally, we already checked that V is anappropriate domain for a transporter.

Page 264: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

264 an introduction to optimization on smooth manifolds

How do we use this transporter in practice? If we are simply given tworepresentatives X and Y and the lift U of ξ at X, then before applying (10.32)we must replace Y by YQ, for the unique Q such that there exists V ∈ HX

with RX(V) = YQ. This can be done if and only if X>Y is invertible.Explicitly, one can reason from Exercise 10.65 that Q is nothing but the polarfactor of X>Y. Then, we can follow this procedure:

1. Compute Q ∈ O(p) via SVD, as Q = UV> and UΣV>= X>Y;

2. By (10.32), liftYQ

(T[Y]←[X](ξ)

)= ProjHYQ(liftX(ξ)) = U −Y(Y>U);

3. Finally, liftY

(T[Y]←[X](ξ)

)= (U −Y(Y>U))Q>.

Often times, Y is a point that was generated by retraction of some horizontalvector from X. If that retraction is the polar retraction, then using this trans-porter is straightforward: X>Y is symmetric and positive definite, hence itspolar factor is Q = Ip, and it is sufficient to compute U −Y(Y>U).

In closing this section, we briefly connect the notion of transporterto that of vector transport.

Definition 10.62. A vector transport on a manifoldM is a smooth map [AMS08, Def. 8.1.1]

(x, u, v) 7→ VT(x,u)(v)

from the Whitney sum (which can be endowed with a smooth structure)

TM⊕ TM = (x, u, v) : x ∈ M and u, v ∈ TxM

to TM, satisfying the following for all (x, u) ∈ TM:

1. There exists a retraction R on M such that VT(x,u) is a linear map fromthe tangent space at x to the tangent space at Rx(u); and

2. VT(x,0) is the identity on TxM.

Equivalently, we can define a vector transport associated to a retrac-tion R as a smooth map VT: TM → L(TM, TM) such that VT(x,u)is a linear map from TxM to TRx(u)M and VT(x,0) is the identity onTxM. From this perspective, it is clear that a transporter T and aretraction R can be combined to define a vector transport throughVT(x,u) = TRx(u)←x. However, not all vector transports are of thisform because in general we could have VT(x,u) 6= VT(x,w) even ifRx(u) = Rx(w), which the transporter construction does not allow.The other way around, a vector transport with associated retraction Rcan be used to define a transporter if we first restrict the domain suchthat (x, u) 7→ (x, Rx(u)) admits a smooth inverse (see Corollary 10.21).

Exercise 10.63. Give a proof of Proposition 10.54.

Page 265: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 265

Exercise 10.64. Give a proof of Proposition 10.57.

Exercise 10.65. With notation as in Example 10.61, show that E (10.31) is Compare with Exercise 7.1.

invertible. Furthermore, show that given two arbitrary representatives X andY of [X] and [RX(V)] (respectively), V is given by

V = Y(X>Y)−1 − X, (10.33)

and deduce that the inverse of E is smooth. From this formula, it is alsoapparent that [Y] can be reached from [X] if and only if X>Y is invertible.

Exercise 10.66. For the orthogonal group (M = O(n)) or the group of rota-tions (M = SO(n)) as a Riemannian submanifold of Rn×n (see Section 7.4),it is natural to consider the following transporter:

TY←X(U) = YX>U, (10.34)

where X, Y ∈ M are orthogonal matrices of size n and U ∈ TXM is suchthat X>U is skew-symmetric. Show that this is indeed a transporter and thatit is isometric. Then, show that this is not parallel transport along geodesics(Exercise 7.2). If we represent tangent vectors U = XΩ simply as theirskew-symmetric part Ω, then this transporter requires no computations.

Exercise 10.67. Let R be a retraction on a Riemannian manifold M. The [ABBC20, §6]

differentiated retraction plays a special role as a link between the Rieman-nian gradient and Hessian of f : M → R and the (classical) gradients andHessians of the pullbacks f = f Rx : TxM→ R.

Prove the following identities: if f is differentiable, then

grad f (s) = T∗s grad f (Rx(s)), (10.35)

where Ts = DRx(s) is a linear map from TxM to TRx(s)M, and T∗s is itsadjoint. If f is twice differentiable, then

Hess f (s) = T∗s Hess f (Rx(s)) Ts + Ws, (10.36)

with Ws a self-adjoint linear map on TxM defined through polarization by

For any u, v ∈ TxM, we can use (10.37)to compute 〈u, Ws(v)〉x as it is equal to

14(〈u + v, Ws(u + v)〉x

− 〈u− v, Ws(u− v)〉x).

This is one of several polarization iden-tities. It fully determines Ws becausefor any orthonormal basis e1, . . . , ed ofTxM the symmetric matrix with entries⟨

ei , Ws(ej)⟩

x represents Ws in that basis.〈s, Ws(s)〉x =⟨grad f (Rx(s)), c′′(0)

⟩Rx(s)

, (10.37)

where c′′(0) = Ddt c′(0) is the initial intrinsic acceleration of the smooth curve

c(t) = Rx(s + ts). Argue that Ws is indeed linear and self-adjoint.Check that these formulas generalize Propositions 8.54 and 8.66 (as well

as their embedded counter-parts, Propositions 3.49 and 5.39).

10.6 Finite difference approximation of the Hessian

In order to minimize a smooth function f : M → R on a Riemannianmanifold, several optimization algorithms (notably those in Chapter 6)

Page 266: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

266 an introduction to optimization on smooth manifolds

require computation of the Riemannian Hessian, Hess f (x)[u]. As ob- See also Section 4.7 for a word regardingautomatic differentiation.taining an explicit expression for the Hessian may be tedious, it is

natural to explore avenues to approximate it numerically. To this end,we consider so-called finite difference approximations.

For any smooth curve c : I →M such that c(0) = x and c′(0) = u,it holds that

Hess f (x)[u] = ∇ugrad f =Ddt

(grad f c)(0). (10.38)

Using Proposition 10.31, we can further rewrite the right-hand side interms of parallel transport along c:

Hess f (x)[u] = limt→0

PTc0←t(grad f (c(t)))− grad f (x)

t. (10.39)

This suggests the approximation We could also use higher-order finite dif-ference approximations.

Hess f (x)[u] ≈PTc

0←t(grad f (c(t)))− grad f (x)t

(10.40)

for some well-chosen t > 0: small enough to be close to the limit (seeCorollary 10.50 to quantify this error), large enough to avoid numericalissues.

In light of Section 10.5, we may ask: is it possible to replace the par-allel transport in (10.40) with a transporter? We already verified thisfor a special case in Example 5.29, where we considered a Riemanniansubmanifold M of a Euclidean space E with the transporter obtainedby orthogonal projection to tangent spaces. In this section, we considerthe general setting.

With a transporter T on a Riemannian manifoldM, we contemplatethis candidate approximation for the Hessian:

Hess f (x)[u] ≈Tx←c(t)(grad f (c(t)))− grad f (x)

t. (10.41)

Implementing this formula takes little effort compared to the hassleof deriving formulas for the Hessian by hand. For example, in theManopt toolbox, the default behavior when the Hessian is needed butunavailable is to fall back on (10.41) with c(t) = Rx(tu) and t > 0 setsuch that ‖tu‖x = 2−14. This costs one retraction, one gradient evalua-tion (assuming grad f (x) is available), and one call to a transporter. Tojustify (10.41), consider this generalization of Proposition 10.31.

Proposition 10.68. Let c : I → M be a smooth curve on a Riemannianmanifold equipped with a transporter T. For a fixed t0 ∈ I, let v1, . . . , vd

form a basis of Tc(t0)M and define the vector fields

Vi(t) =(

Tc(t0)←c(t)

)−1(vi). (10.42)

Page 267: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 267

Given a vector field Z ∈ X(c), it holds that

Ddt

Z(t0) = limδ→0

Tc(t0)←c(t0+δ)Z(t0 + δ)− Z(t0)

δ+

d

∑i=1

αi(t0)Ddt

Vi(t0),

where α1(t0), . . . , αd(t0) are the coefficients of Z(t0) in the basis v1, . . . , vd.

Proof. The vector fields V1, . . . , Vd play a role similar to parallel frames.By Proposition 10.56, these vector fields depend smoothly on t in aneighborhood I0 of t0. Furthermore, I0 can be chosen small enoughso that V1(t), . . . , Vd(t) form a basis of Tc(t)M for each t ∈ I0. Hence,there exists a unique set of smooth functions αi : I0 → R such that

Z(t) =d

∑i=1

αi(t)Vi(t).

On the one hand, using properties of covariant derivatives,

Ddt

Z(t) =d

∑i=1

α′i(t)Vi(t) + αi(t)Ddt

Vi(t).

On the other hand, defining G as

G(t) = Tc(t0)←c(t)(Z(t)) =d

∑i=1

αi(t)vi,

we find that

G′(t) =d

∑i=1

α′i(t)vi.

Combining both findings at t0 using Vi(t0) = vi, it follows that

Ddt

Z(t0) = G′(t0) +d

∑i=1

αi(t0)Ddt

Vi(t0).

Since G is a map between (open subsets of) linear spaces, we can writeG′(t0) as a limit in the usual way.

Applying this to (10.38) yields a corollary relevant to formula (10.41).

Corollary 10.69. For any smooth curve c on a Riemannian manifold Msuch that c(0) = x and c′(0) = u, and for any transporter T, orthonormalbasis v1, . . . , vd of TxM and associated vector fields V1, . . . , Vd defined by

Vi(t) =(

Tx←c(t)

)−1(vi), (10.43)

it holds that

Hess f (x)[u] = limt→0

Tx←c(t)(grad f (c(t)))− grad f (x)t

+d

∑i=1〈grad f (x), vi〉x

Ddt

Vi(0). (10.44)

Page 268: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

268 an introduction to optimization on smooth manifolds

Thus we see that the approximation (10.41) is justified at or near acritical point. This is typically sufficient to obtain good performancewith second-order optimization algorithms such as RTR.

The approximation is also justified at a general point x if the vectorsDdt Vi(0) vanish. This is of course the case if we use parallel transport,recovering (10.39). Likewise, circling back to Example 5.29 for the casewhere M is a Riemannian submanifold of a Euclidean space E andthe transporter is taken to be simply orthogonal projection to tangentspaces (Proposition 10.60), we also get the favorable simplification. Asa reminder, this yields the particularly convenient formula

Hess f (x)[u] = limt→0

Projx(grad f (c(t)))− grad f (x)t

, (10.45)

where Projx is the orthogonal projector from E to TxM and grad f (c(t))is interpreted as a vector in E .

10.7 Tensor fields and their covariant differentiation

Given a Riemannian manifold M, we can think of a smooth vectorfield U ∈ X(M) as a map from X(M) to the set of smooth functionsF(M) as follows:

V 7→ U(V) = 〈U, V〉 .

This map if F(M)-linear in its argument:

U( f V + gW) = f U(V) + gU(W)

for any V, W ∈ X(M) and f , g ∈ F(M). Likewise, we can think of theRiemannian metric itself as a map from X(M)×X(M) to F(M):

(U, V) 7→ 〈U, V〉 .

This mapping is F(M)-linear in both of its arguments. These two areexamples of tensor fields of order one and two, respectively.

Definition 10.70. A smooth tensor field T of order k on a RiemannianmanifoldM is a map

T : X(M)× · · · ×X(M)→ F(M)

which is F(M)-linear in each one of its k inputs. The set of such objects isdenoted by Xk(M). If the ordering of the inputs is irrelevant, we say T is asymmetric tensor field.

In our examples above, vector fields are identified with tensor fieldsof order one, while the Riemannian metric is a symmetric tensor field

Page 269: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 269

of order two. As a counter-example, notice that the Riemannian con-nection ∇ conceived of as a map

∇ : X(M)×X(M)×X(M)→ F(M) : (U, V, W) 7→ 〈∇UV, W〉

is not a tensor field, because it is only R-linear in V, not F(M)-linear.Importantly, tensor fields are pointwise objects, in that they asso-

ciate to each point x ∈ M a well-defined multilinear map (i.e., atensor) on the tangent space TxM—hence the name tensor field. Inorder to see this, consider a tensor field T of order k and a local frameW1, . . . , Wd around x (see Section 3.9). Then, the input vector fieldsU1, . . . , Uk ∈ X(M) can each be expanded in the local frame as Using bump functions as in Section 5.6,

we can extend the vector fields from U toall ofM, which is necessary to apply T.To be formal, we should then also arguewhy the conclusions we reach based onthese special vector fields generalize—see [Lee12, Lem. 12.24].

Ui|U = fi,1W1 + · · ·+ fi,dWd =d

∑j=1

fi,jWj,

where the fi,j are smooth functions on U . Then, working only on thedomain U and using the linearity properties of tensor fields, we find

T(U1, . . . , Uk) =d

∑j1=1· · ·

d

∑jk=1

f1,j1 · · · fk,jk T(Wj1 , . . . , Wjk ).

Evaluating this function at x′ ∈ U , the result depends on U1, . . . , Uk

only through the values of the fi,j at x′, that is: T(U1, . . . , Uk)(x′) de-pends on the vector fields only through U1(x′), . . . , Uk(x′). Moreover,the dependence is linear. In summary, it is legitimate to think of T(x)as a k-linear map on TxM:

T(x) : TxM× · · · × TxM→ R.

This offers a useful perspective on tensor fields of order k: they asso-ciate to each point of M a k-linear function on the tangent space atthat point. Explicitly:

T(x)(u1, . . . , uk) = T(U1, . . . , Uk)(x),

where the Ui ∈ X(M) are arbitrary so long as Ui(x) = ui. Continuingwith our examples, for a vector field U ∈ X(M), the notation U(x)refers to a tangent vector at x, while if we think of U as a tensor field,then U(x) denotes the linear function v 7→ 〈U(x), v〉x on the tangentspace at x. The Riemannian metric is a tensor field of order two; letus call it G. Then, G(x) is a bilinear function on (TxM)2 such thatG(x)(u, v) = 〈u, v〉x.

By convention, T0TxM = R, so thatT0TM = M× R. Notice that T1TxMcan be identified with TxM, and thatT2TxM can be identified with the set oflinear maps from TxM into itself. Thus,T1TM can be identified with TM itself,and T2TM can be identified with

(x, L) : x ∈ M and

L : TxM→ TxM is linear

.

The map x 7→ T(x) is smooth, in a sense we now make precise.Similarly to Proposition 10.54, we can define a tensor bundle of order koverM as:

TkTM =(x, L) : x ∈ M and L ∈ TkTxM

, where (10.46)

TkTxM =

k-linear functions from (TxM)k to R

.

Page 270: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

270 an introduction to optimization on smooth manifolds

Each tensor bundle can be endowed with a natural smooth manifoldstructure such that π : TkTM→M defined by π(x, L) = x is smooth.This is identical to how we equipped the tangent bundle TM withsuch a smooth structure. Then, any section of TkTM, that is, any mapT from M to TkTM such that π(T(x)) = x is called a tensor field oforder k. Smooth tensor fields as we defined them above are exactly the This is commonly taken as the definition

of a tensor field.smooth sections as defined here [Lee12, Prop. 12.19, Lem. 12.24].Now that we think of smooth tensor fields as smooth maps on man-

ifolds, it is natural to ask what happens if we differentiate them. InChapter 5, we introduced the notion of connection ∇ on the tangentbundle TM. One can formalize the idea that ∇ induces a connectionon any tensor bundle, unique once we require certain natural proper-ties [Lee18, Prop. 4.15]. This gives meaning to the notation ∇V T forV ∈ X(M). Omitting quite a few details, we give an opportunisticconstruction of this object.

Since T(U1, . . . , Uk) is a smooth function onM, we can differentiateit against any smooth vector field V to obtain VT(U1, . . . , Uk), also asmooth function on M. The definition below is crafted to secure anatural chain rule for this differentiation.

Definition 10.71. Given a smooth tensor field T of order k on a RiemannianmanifoldM equipped with its Riemannian connection∇, the total covariantderivative ∇T of T is a smooth tensor field of order k + 1 onM, defined by

∇T(U1, . . . , Uk, V) = VT(U1, . . . , Uk)

− T(∇VU1, U2, . . . , Uk)− · · · − T(U1, . . . , Uk−1,∇VUk)

for any U1, . . . , Uk, V ∈ X(M). We also let ∇V T be a smooth tensor field oforder k, defined by

(∇V T)(U1, . . . , Uk) = ∇T(U1, . . . , Uk, V).

(It is an exercise to check that these are indeed tensor fields.)

As an example, it is instructive to see how gradients and Hessiansof scalar fields fit into the framework of covariant differentiation oftensor fields.

Example 10.72. Let M be a Riemannian manifold with Riemannian con-nection ∇. A smooth function f : M → R is a tensor field of order zero.Differentiating f as a tensor field using Definition 10.71, we find that ∇ f isa tensor field of order one defined by

∇ f (U) = U f = D f (U) = 〈grad f , U〉 .

In other words, ∇ f is the differential D f , which we identify with the gradientvector field through the Riemannian metric. Since grad f is itself thought of

Page 271: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 271

as a tensor field of order one, we can differentiate it as well, creating a tensorfield of order two:

∇grad f (U, V) = Vgrad f (U)− grad f (∇VU)

= V 〈grad f , U〉 − 〈grad f ,∇VU〉= 〈∇Vgrad f , U〉= 〈Hess f (V), U〉= Hess f (U, V).

In other words, ∇grad f is nothing but the Riemannian Hessian Hess f ,identified with a (symmetric) tensor field of order two. Going one step further,we get a glimpse of the covariant derivative of the Riemannian Hessian:

∇Hess f (U, V, W) = WHess f (U, V)

−Hess f (∇WU, V)−Hess f (U,∇WV)

= W 〈Hess f (U), V〉− 〈Hess f (V),∇WU〉 − 〈Hess f (U),∇WV〉 .

This is a smooth tensor field of order three, with the other useful notion beingthat ∇WHess f is a smooth, symmetric tensor field of order two defined by

∇WHess f (U, V) = ∇Hess f (U, V, W).

Since tensor fields are pointwise objects, we can make sense of thenotation ∇vT for v ∈ TxM as follows: ∇T is a (k + 1)-tensor field onM, so that (∇T)(x) is a (k + 1)-linear map on TxM; fixing the lastinput to be v, we are left with

(∇vT)(u1, . . . , uk) =((∇T)(x)

)(u1, . . . uk, v). (10.47)

Thus, ∇vT is a k-linear map on TxM; if T is symmetric, so is ∇vT.Given a curve c onM, we defined the notion of covariant derivative

of a vector field along c in Section 5.7. This extends to tensors, in directanalogy with Theorem 5.26.

Definition 10.73. Let c : I → M be a smooth curve on a manifold M. Asmooth tensor field Z of order k along c is a map

Z : X(c)× · · · ×X(c)→ F(I)

which is F(I)-linear in each one of its k inputs. The set of such objects isdenoted by Xk(c).

Here too, we can reason that tensor fields are pointwise objects, inthat Z(t) is a k-linear map from (Tc(t)M)k to R.

Theorem 10.74. Let c : I → M be a smooth curve on a manifold with a [Lee18, Thm. 4.24]; for an analog ofthe product rule with tensor fields, seealso [Lee18, Prop. 5.15].

connection ∇. There exists a unique operator Ddt : Xk(c) → Xk(c) satisfying

these properties for all Y, Z ∈ Xk(c), T ∈ Xk(M), g ∈ F(I) and a, b ∈ R:

Page 272: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

272 an introduction to optimization on smooth manifolds

1. R-linearity: Ddt (aY + bZ) = a D

dt Y + b Ddt Z;

2. Leibniz rule: Ddt (gZ) = g′Z + g D

dt Z;

3. Chain rule:(

Ddt (T c)

)(t) = ∇c′(t)T for all t ∈ I.

This operator is called the induced covariant derivative.

In the statement above, we understand ∇c′(t)T through (10.47).As a result of Definition 10.71, we also have this chain rule: given

Z ∈ Xk(c) and U1, . . . , Uk ∈ X(c):

ddt(Z(U1, . . . , Uk)

)=

ddt(Z(t)(U1(t), . . . , Uk(t))

)=

(Ddt

Z(t))(U1(t), . . . , Uk(t))

+ Z(t)(

Ddt

U1(t), U2(t), . . . , Uk(t))+ · · ·

+ Z(t)(

U1(t), . . . , Uk−1(t),Ddt

Uk(t))

=

(Ddt

Z)(U1, . . . , Uk)

+ Z(

Ddt

U1, U2, . . . , Uk

)+ · · ·

+ Z(

U1, . . . , Uk−1,Ddt

Uk

). (10.48)

Example 10.75. If c : I →M is a geodesic on the Riemannian manifoldMwith Riemannian connection ∇, given a smooth function f : M → R weknow that

( f c)′ =⟨grad f c, c′

⟩and ( f c)′′ =

⟨(Hess f c)[c′], c′

⟩,

where we benefit from the fact that c′′(t) = 0 for all t. Going one step furtherand identifying the Hessian with a tensor field of order two as before, so that〈(Hess f c)[c′], c′〉 = (Hess f c)(c′, c′), we find

( f c)′′′ =ddt((Hess f c)(c′, c′)

)=

(Ddt

(Hess f c))(c′, c′)

= (∇c′Hess f ) (c′, c′)

= (∇Hess f c)(c′, c′, c′).

Remark 10.76. In our discussion of tensor fields, we have used the Rieman-nian metric to identify tangent vectors u ∈ TxM with linear functions onTxM, as v 7→ 〈u, v〉x. This simplifies the story and is a standard approach onRiemannian manifolds. It is useful to know, however, that tensor fields (and

Page 273: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 273

many of the tools discussed here) can also be constructed without referencing aRiemannian metric. In that case, one has to distinguish between vectors andcovectors, leading to the notions of covariant, contravariant and mixedtensors. These terms are likely to come up in discussions of tensor fields onRiemannian manifolds as well, because they are often familiar to readers fromnon-Riemannian smooth geometry. See [Lee12, Ch. 12] and [Lee18, Ch. 4,Ch. 5] for details.

Exercise 10.77. Show that ∇T as provided by Definition 10.71 is indeed atensor field of order k + 1.

Exercise 10.78. For a Riemannian manifoldM with Riemannian connection See also [Lee18, Prop. 5.5] for furtherequivalent characterizations of compat-ibility between the Riemannian metricand connection. We say G is parallel.

∇, show that ∇G is identically zero, where G is the smooth tensor field oforder two defined by the Riemannian metric, that is: G(U, V) = 〈U, V〉.

Exercise 10.79. Let f : M → R be three times continuously differentiable Note the implications for the regularityassumption A10. See also Exercise 10.52.on a Riemannian manifoldM equipped with a retraction R. Assume

f (Rx(s)) ≤ f (x) + 〈s, grad f (x)〉+ 12〈s, Hess f (x)[s]〉+ L

6‖s‖3 (10.49)

for all (x, s) in a neighborhood of the zero section in the tangent bundle.Further assume R is a third-order retraction, which we define to be a second- See also Exercise 10.80.

order retraction for which all curves c(t) = Rx(ts) with (x, s) ∈ TM obeyc′′′(0) = 0. In particular, the exponential map is a third-order retraction.Show that ‖∇sHess f ‖ ≤ L‖s‖ for all (x, s) ∈ TM. Apply Corollary 10.46to conclude that Hess f is L-Lipschitz continuous.

Further apply Corollary 10.50 to conclude that, with R = Exp, these threeclaims are equivalent:

1. Inequalities (10.49) hold in a neighborhood of the zero section in TM;

2. Hess f is L-Lipschitz continuous;

3. Inequalities (10.49) hold over the whole domain of Exp.

Exercise 10.80. Consider a Riemannian submanifoldM of a Euclidean spaceE . Given (x, v) ∈ TM, let c : I → M be a smooth curve on M suchthat c(0) = x and x + tv − c(t) is orthogonal to Tc(t)M for all t: thisis the case if c(t) is a curve obtained through metric projection retraction(Propositions 5.42 and 5.43). Show that c′′′(0) = −2W

(v, d

dt c′(0))

, whereW is the Weingarten map (5.30). In general, this is nonzero. Thus, wedo not expect the metric projection retraction to be third order in general.Hint: use (5.19) to express c′′′(0) in terms of extrinsic derivatives of c, andsimplify that expression by computing one more derivative of g in the proof ofProposition 5.43.

Page 274: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

274 an introduction to optimization on smooth manifolds

10.8 Notes and references

Considering geodesics as length minimizing curves, it is possible togeneralize the concept of geodesic to arbitrary metric spaces, specif-ically, without the need for a smooth or Riemannian structure. Seefor example the monograph by Bacák [Bac14] for an introduction togeodesic metric spaces, and applications in convex analysis and opti-mization in Hadamard spaces.

Propositions 10.17 and 10.20 (and their proofs and corollaries) weredesigned with Eitan Levin and also discussed with Stephen McKeown.They are inspired by the proof of the Tubular Neighborhood Theoremin [Lee18, Thm. 5.25] and [Pet06, Prop. 5.18]. They notably imply thatthe injectivity radius function inj : M→ R is lower-bounded by a pos-itive, continuous function, with (one could argue) fewer technicalitiesthan are required to prove inj itself is continuous.

Many Riemannian geometry textbooks restrict their discussion ofthe injectivity radius to complete manifolds. It is easy to find a pub-lished proof that the function inj : M→ R is continuous ifM is (con-nected3 and) complete (see for example [Lee18, Prop. 10.37]), but it 3 For disconnected manifolds, we de-

fined complete to mean geodesically com-plete, i.e., each connected component ismetrically complete. A function is con-tinuous on a disconnected set if it is con-tinuous on each connected component.Thus, continuity of inj on connected andcomplete manifolds implies continuityon complete manifolds.

has proven difficult to locate one that applies to incomplete manifoldsas well. The claim appears without proof in [Cha06, Thm. III.2.3].Following a discussion, Stephen McKeown provided4 a proof that inj

4 mathoverflow.net/questions/335032

is lower-semicontinuous, then John M. Lee added a proof that inj isupper-semicontinuous, together confirming that it is continuous: seeLemmas 10.81 and 10.82 below. Both proofs rely on continuity in thecomplete case. They are rearranged to highlight commonalities.

Our main motivation to study continuity of inj is to reach Corol-lary 10.19, stating the map (x, y) 7→ Logx(y) is smooth over the spec-ified domain. O’Neill makes a similar statement: pick an open setS ⊆ M; that set is deemed convex (by [O’N83, Def. 5.5]) if, for allx ∈ S, the map Expx is a diffeomorphism from some neighborhoodof the origin in TxM to S. Then, (x, v) 7→ (x, Expx(v)) is a diffeo-morphism from the appropriate set in TS to S× S [O’N83, Lem. 5.9].This shows the map L : S × S → TS such that L(x, y) ∈ TxM is theinitial velocity of the (unique) geodesic γ : [0, 1]→ S connecting x to yis smooth: L is also a kind of inverse for the exponential (though notnecessarily the same as Log).

The tool of choice to differentiate the exponential map (and the log-aritmic map) is Jacobi fields [Lee18, Prop. 10.10].

Parallel transporting a tangent vector u at x to all the points in anormal neighborhood of x along geodesics contained in that neighbor-hood results in a smooth vector field. This is a well-known fact; detailsof the argument appear notably in [LB19, Lem. A.1].

The Riemannian notion of Lipschitz continuous gradient (and also

Page 275: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 275

Lipschitz continuous vector field) appears in [dCN95, Def. 3.1, p79]and [dCNdLO98, Def. 4.1], with a definition equivalent to the charac-terization we give in Proposition 10.39. This may be their first occur-rence in an optimization context. There too, the motivation is to deriveinequalities such as the ones in Proposition 10.47. Such inequalitiesappear often in optimization papers, see also [AMS08, §7.4], [SFF19,App. A] and [ABBC20], among many others. Lipschitz continuousHessians appear in an optimization context in [FS02, Def. 2.2], in linewith our characterization in Proposition 10.44. A general definition ofLipschitz continuous maps in tangent bundles of any order (coveringtensors fields of any order) appears in [RW12], in the preliminaries ongeometry. A general notion of ‘fundamental theorem of calculus’ fortensor fields on Riemannian manifolds, based on parallel transport, isspelled out in [ABM08, eq. (2.3)]. As an alternative to Definition 10.38,one could also endow the tangent bundle with a metric space struc-ture, so that we can then apply the standard notion of Lipschitz conti-nuity to vector fields as maps between two metric spaces: see [dOF18]for a comparison of the two concepts.

The notion of vector transport appears in [AMS08, §8]. The relatednotion of transporter is introduced in [QGA10a] with reference to alinear structure space, and further developed in [HGA15] for generalmanifolds. The constructions of transporters from other transportersvia inversions and adjoints are natural extensions.

Corollary 10.69 handles finite differences of the Riemannian Hessianusing an arbitrary transporter (Definition 10.55). An analog result forvector transports (Definition 10.62) appears in [AMS08, Lem. 8.2.2].

In Exercise 10.67, we contemplate the role of the initial accelerationof curves of the form c(t) = Rx(s + ts). If R is the exponential map,then c is a geodesic when s = 0 but (in general) not otherwise, sothat c′′(0) is nonzero in general. This tangent vector and its norm aretightly related to curvature of the manifold.

In Section 10.7, we follow do Carmo [dC92, §4.5], in that we rely onthe Riemannian metric to avoid the need to distinguish between vec-tors and covectors, and we build up the differentiation of tensor fieldsby quoting the desired chain rule directly, bypassing many technicalsteps. This simplifies the discussion without loss of generality, butthe reader should mind this when combining statement in that sectionwith statements found in other sources.

Lemma 10.81. The injectivity radius function inj : M → (0, ∞] is lower- If inj(x) = ∞ at some point x, then inparticular Expx is defined on all of TxM.Thus, the connected component of xis complete, and it follows by [Lee18,Prop. 10.37] that inj is continuous on thatcomponent. (More specifically: inj is in-finite at all points in that component.)Hence, we do not need to worry aboutinfinite values.

semicontinuous.

Proof by Stephen McKeown. For contradiction, assume inj is not lower-semicontinuous at some point x ∈ M. Then, there exists a sequence

Page 276: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

276 an introduction to optimization on smooth manifolds

of points x0, x1, x2, . . . onM such that

limk→∞

xk = x and ∀k, inj(xk) ≤ r < R = inj(x).

Define ε = R−r3 and r′ = r + ε, r′′ = r + 2ε so that r < r′ < r′′ < R. By

definition of R, the exponential map Expx induces5 a diffeomorphism 5 φ is constructed from the inverse ofExpx followed by a linear isometry fromTxM to Rd.

ϕ : B(x, R) → Bd(R): from the open geodesic ball on M centered at xwith radius R to the open Euclidean ball in Rd centered at the originwith radius R, where d = dimM. Let g denote the Riemannian metricon M, let g denote the pushforward of g|B(x,R) to Bd(R) (through ϕ),and let g0 denote the Euclidean metric on Rd. Consider a smoothbump function χ : Rd → [0, 1] whose value is 1 on the closed ballBd(r′′) and with support in Bd(R) [Lee12, Prop. 2.25]. Then,

g = χg + (1− χ)g0

is a Riemannian metric on Rd such that M = (Rd, g) is a (connected)complete Riemannian manifold [Lee18, Pb. 6-10].

Consequently, the injectivity radius function ˆinj : M → (0, ∞] iscontinuous [Lee18, Prop. 10.37]. Furthermore, since the metrics g andg agree (through ϕ) on B(x, r′′) and Bd(r′′), we deduce that for ally ∈ M and ρ > 0 it holds that

B(y, ρ) ⊆ B(x, r′′) =⇒

ˆinj(y) = inj(y) if inj(y) < ρ,ˆinj(y) ≥ ρ otherwise,

where y ∈ Rd is the image of y through ϕ.We use this fact in two ways:

1. B(x, r′′) ⊆ B(x, r′′) and inj(x) = R > r′′, hence ˆinj(x) ≥ r′′, and

2. There exists k0 large enough such that, for all k ≥ k0, dist(xk, x) < ε,so that B(xk, r′) ⊂ B(x, r′′). Moreover, inj(xk) ≤ r < r′, so thatˆinj(xk) = inj(xk) ≤ r for all k ≥ k0.

Together with the fact that ˆinj is continuous, these yield:

r < r′′ ≤ ˆinj(x) = limk→∞

ˆinj(xk) ≤ r,

a contradiction.

Lemma 10.82. The injectivity radius function inj : M → (0, ∞] is upper-semicontinuous.

Proof by John M. Lee. The proof parallels that of lower-semicontinuity.For contradiction, assume inj is not upper-semicontinuous at somepoint x ∈ M. Then, there exists a sequence of points x0, x1, x2, . . .onM such that

limk→∞

xk = x and ∀k, inj(xk) ≥ R > r = inj(x).

Page 277: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

additional tools 277

Define ε = R−r3 and r′ = r + ε, r′′ = r + 2ε so that r < r′ < r′′ < R.

Because the injectivity radius at x is smaller than at the points in thesequence, it is not enough to consider Expx to setup a diffeomorphismwith a ball in Rd. Instead, we pick a special point in the sequence toact as a center. Let k0 be large enough so that dist(xk, x) < ε/2 < ε forall k ≥ k0. By triangular inequality, we also have dist(xk, xk0) < ε forall k ≥ k0. Now, use Expxk0

to setup a diffeomorphism ϕ : B(xk0 , R)→Bd(R): we can do this since inj(xk0) ≥ R. Let g denote the Rieman-nian metric onM, let g denote the pushforward of g|B(xk0

,R) to Bd(R)

(through ϕ), and let g0 denote the Euclidean metric on Rd. Consider asmooth bump function χ : Rd → [0, 1] whose value is 1 on the closedball Bd(r′′) and with support in Bd(R). Then,

g = χg + (1− χ)g0

is a Riemannian metric on Rd such that M = (Rd, g) is a (connected)complete Riemannian manifold.

Consequently, the injectivity radius function ˆinj : M → (0, ∞] iscontinuous. Furthermore, since the metrics g and g agree (through ϕ)on B(xk0 , r′′) and Bd(r′′), we deduce that for all y ∈ M and ρ > 0 itholds that

B(y, ρ) ⊆ B(xk0 , r′′) =⇒

ˆinj(y) = inj(y) if inj(y) < ρ,ˆinj(y) ≥ ρ otherwise,

where y ∈ Rd is the image of y through ϕ.We use this fact in two ways:

1. B(x, r′) ⊂ B(xk0 , r′′) and inj(x) = r < r′, hence ˆinj(x) = inj(x) = r,and

2. For all k ≥ k0, B(xk, r′) ⊂ B(xk0 , r′′) and inj(xk) ≥ R > r′, so thatˆinj(xk) ≥ r′.

Together with the fact that ˆinj is continuous, these yield:

r = inj(x) = ˆinj(x) = limk→∞

ˆinj(xk) ≥ r′ > r,

a contradiction.

Page 278: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian
Page 279: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

11Geodesic convexity

In this chapter, we discuss elementary notions of convexity for op-timization on manifolds. In so doing, we resort to Riemannian dis-tances, geodesics and completeness, covered in Section 10.1.

The study of convexity on Riemannian manifolds, called geodesicconvexity, predates optimization on manifolds. In the context of opti-mization, it attracted a lot of attention in the 70s and 80s. Excellentreference books on this topic include one by Udriste [Udr94] and an-other by Rapcsák [Rap97]. There are some variations in how geodesicconvexity is defined by different authors, in part because notions ofconvexity useful to differential geometry are somewhat different fromthose that are useful to optimization; we mostly follow [Rap97, §6].

Applications notably include covariance matrix estimation [Wie12,NSAY+

19], Gaussian mixture modeling [HS15, HS19], matrix squareroot computation [Sra16], metric learning [ZHS16], statistics and aver-aging on manifolds [Moa03, Moa05, Fle13], a whole class of optimiza-tion problems called geometric programming [BKVH07] and more.Zhang and Sra analyze a collection of algorithms specifically designedfor optimization of geodesically convex functions [ZS16], providingworst-case iteration complexity results. See also Section 11.6 for recentresearch questions.

11.1 Convex sets and functions

Recall that a subset S of a linear space E is a convex set if for all x, y inS the line segment t 7→ (1− t)x + ty for t ∈ [0, 1] is in S. Furthermore, With some care, we may allow f to take

on infinite values [Roc70, HUL01].f : S→ R is a convex function if S is convex and for all x, y ∈ S we have:

∀t ∈ [0, 1], f ((1− t)x + ty) ≤ (1− t) f (x) + t f (y).

Likewise, f is strictly convex if for x 6= y we have

∀t ∈ (0, 1), f ((1− t)x + ty) < (1− t) f (x) + t f (y).

Page 280: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

280 an introduction to optimization on smooth manifolds

If E is a Euclidean space with norm ‖ · ‖, we say f is µ-strongly convexfor some µ > 0 if x 7→ f (x)− µ

2 ‖x‖2 is convex, or equivalently, if forall x, y ∈ S and t ∈ [0, 1] it holds that:

f ((1− t)x + ty) ≤ (1− t) f (x) + t f (y)− t(1− t)µ2

‖x− y‖2. (11.1)

In optimization, our main reason to care about convex functions is thattheir local minimizers (if any exist) are global minimizers.

An equivalent way of defining convex functions is to define con-vexity for one-dimensional functions first. Then, f : S → R is con-vex if and only if f is convex when restricted to all line segments inthe convex set S, that is: for all x, y distinct in S, the compositionf c : [0, 1] → R is convex with c(t) = (1− t)x + ty. A similar state-ment holds for strict and strong convexity.

We adopt that perspective in the next section to generalize beyondlinear spaces. To that end, a few basic facts about one-dimensionalconvex functions come in handy.

Lemma 11.1. Let g : I → R be defined on a connected set I ⊆ R.

1. If g is convex, then g is continuous in the interior of I.

2. If g is differentiable on I: If I is not open, we mean differentiablein the sense that there exists an extensiong of g differentiable on a neighborhoodof I. Then, g′(x) , g′(x) for all x ∈ I.

(a) g is convex if and only if g(y) ≥ g(x) + (y− x)g′(x) for all x, y ∈ I.

(b) g is strictly convex if and only if g(y) > g(x) + (y− x)g′(x) for allx, y ∈ I distinct.

(c) g is µ-strongly convex if and only if g(y) ≥ g(x) + (y − x)g′(x) +µ2 (y− x)2 for all x, y ∈ I.

3. If g is continuously differentiable on I and twice differentiable on int I: int I denotes the interior of I.

(a) g is convex if and only if g′′(x) ≥ 0 for all x ∈ int I.

(b) g is strictly convex if (but not only if) g′′(x) > 0 for all x ∈ int I.

(c) g is µ-strongly convex if and only if g′′(x) ≥ µ for all x ∈ int I.

Proof. For the first point, see [HUL01, p15]. Points 2 and 3 are standardfacts: we include proofs for convenience. Note that it is allowed for Inot to be open.

2.(a) Assume the inequalities hold. Then, for all x, y ∈ I and for allt ∈ [0, 1], define z = (1− t)x + ty. These two inequalities hold:

g(x) ≥ g(z) + (x− z)g′(z), g(y) ≥ g(z) + (y− z)g′(z).

Add them up with weights 1− t and t, respectively:

(1− t)g(x) + tg(y) ≥ g(z) +((1− t)(x− z) + t(y− z)

)g′(z)

= g(z)

= g((1− t)x + ty).

Page 281: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

geodesic convexity 281

This shows g is convex. The other way around, if g is convex,then for all x, y ∈ I and t ∈ (0, 1] we have

g(x + t(y− x)) = g((1− t)x + ty)

≤ (1− t)g(x) + tg(y) = g(x) + t(g(y)− g(x)).

Move g(x) to the left-hand side and divide by t to find:

g(y) ≥ g(x) +g(x + t(y− x))− g(x)

t.

Since this holds for all x, y, t as prescribed and since g is differen-tiable at x, we can take the limit for t → 0 and conclude that thesought inequalities hold.

(b) Assume the strict inequalities hold. Then, for all x, y ∈ I distinctand for all t ∈ (0, 1), define z = (1− t)x + ty; we have:

g(x) > g(z) + (x− z)g′(z), g(y) > g(z) + (y− z)g′(z).

Multiply by 1− t and t respectively, and add them up:

(1− t)g(x) + tg(y) > g(z) = g((1− t)x + ty),

which shows g is strictly convex. The other way around, assumeg is strictly convex: it lies strictly below its chords, that is, for allx, y distinct in I,

∀t ∈ (0, 1), g((1− t)x + ty) < (1− t)g(x) + tg(y).

Since g is convex, it also lies above its first order approximations:

∀t ∈ [0, 1], g(x + t(y− x)) ≥ g(x) + t(y− x)g′(x).

The left-hand sides coincide, so that combining we find:

∀t ∈ (0, 1), (1− t)g(x) + tg(y) > g(x) + t(y− x)g′(x).

Subtract g(x) on both sides and divide by t to conclude.

(c) By definition, g is µ-strongly convex if and only if h(x) = g(x)−µ2 x2 is convex, and we just showed that the latter is convex ifand only if h(y) ≥ h(x) + (y− x)h′(x) for all x, y ∈ I, which isequivalent to the claim.

3. Taylor’s theorem applies to g: for all x, y distinct in I, there exists zstrictly between x and y such that

g(y) = g(x) + (y− x)g′(x) +12(y− x)2g′′(z). (11.2)

Page 282: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

282 an introduction to optimization on smooth manifolds

(a) If g′′(z) ≥ 0 for all z ∈ int I, then g(y) ≥ g(x) + (y− x)g′(x) forall x, y ∈ I by (11.2), hence g is convex. The other way around, ifg is convex, then for all x, y in I we have:

g(y) ≥ g(x) + (y− x)g′(x) and g(x) ≥ g(y) + (x− y)g′(y).

Rearrange and combine to find

(y− x)g′(y) ≥ g(y)− g(x) ≥ (y− x)g′(x).

We deduce that y ≥ x implies g′(y) ≥ g′(x), that is: g′ is nonde-creasing on I. For all x ∈ int I, consider this limit, where y goesto x while remaining in I:

0 ≤ limy→x

g′(y)− g′(x)y− x

= g′′(x).

This shows g′′(x) ≥ 0 for all x in int I. (The same argumentalso shows that if g is twice differentiable on I and I has anyboundary points, then g′′ is also nonnegative on those points.)

(b) If g′′(z) > 0 for all z ∈ int I, then g(y) > g(x) + (y − x)g′(x)for all x, y ∈ I distinct by (11.2), hence g is strictly convex. Theconverse is not true: g(x) = x4 is smooth and strictly convex onR, yet g′′(0) = 0.

(c) By definition, g is µ-strongly convex if and only if h(x) = g(x)−µ2 x2 is convex, and we just showed that the latter is convex ifand only if h′′(x) ≥ 0 for all x ∈ I, which is equivalent to theclaim.

11.2 Geodesically convex sets and functions

In this section, we present a classical generalization of convexity toRiemannian manifolds. The main idea is to use geodesic segmentsinstead of line segments. There are, however, a number of subtly dif-ferent ways one can do this, due to the fact that, in contrast to linesegments in Euclidean spaces, geodesics connecting pairs of pointsmay not exist, may not be unique, and may not be minimizing. Seethe notes and references at the end of this chapter for further details.

Definition 11.2. A subset S of a Riemannian manifoldM is geodesically c is a geodesic forM, not necessarily forS (which may or may not be a manifold).In particular, singletons and the emptyset are geodesically convex.

convex if, for every x, y ∈ S, there exists a geodesic c : [0, 1]→M such thatc(0) = x, c(1) = y and c(t) is in S for all t ∈ [0, 1].

If M is a Euclidean space, a subset is convex in the usual sense ifand only if it is geodesically convex, because the only geodesic con-necting x to y (up to reparameterization) is c(t) = (1− t)x + ty.

Page 283: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

geodesic convexity 283

By Theorem 10.7, any connected and complete Riemannian mani-fold is geodesically convex. This includes spheres, the Stiefel manifoldSt(n, p) for p < n, and the group of rotations SO(n)—but we willsoon see that such compact manifolds are not interesting for convex-ity. More interestingly, any hemisphere of Sn−1, open or closed, isa geodesically convex subset of Sn−1. The manifold of positive realnumbers, R+ = x > 0, equipped with the metric 〈u, v〉x = uv

x2 , isconnected and complete, hence geodesically convex: we consider twogeneralizations of this later in Sections 11.4 and 11.5, notably to han-dle Rn

+ and Sym(n)+: entrywise positive vectors, and positive definitematrices.

In a geodesically convex set, any two points are joined by at leastone geodesic segment contained in S. Restricting a function f on Sto these segments yields real functions on a real interval. If all ofthese restrictions are convex in the usual sense, we say f is convex ina geometric sense. Note that we do not require f to be smooth or evencontinuous.

Definition 11.3. A function f : S→ R is geodesically (strictly) convex if This is defined with respect to the Rie-mannian manifoldM for which S ⊆ Mis geodesically convex. Here too, ifM isa Euclidean space, we recover the stan-dard definition.

the set S is geodesically convex and f c : [0, 1] → R is (strictly) convex forall geodesic segments c : [0, 1]→M whose image is in S (with c(0) 6= c(1)).

In other words, for S a geodesically convex set, f : S→ R is geodesi-cally convex if for all x, y ∈ S and all geodesics c connecting x to y in We say a curve on M connects x to y in

S if it is continuous, c(0) = x, c(1) = yand c(t) is in S for all t ∈ [0, 1].

S the function f c : [0, 1]→ R is convex, that is,

∀t ∈ [0, 1], f (c(t)) ≤ (1− t) f (x) + t f (y).

If furthermore whenever x 6= y we have

∀t ∈ (0, 1), f (c(t)) < (1− t) f (x) + t f (y),

then f is geodesically strictly convex.

Definition 11.4. We say f : S → R is geodesically (strictly) concave if− f is geodesically (strictly) convex, and f is geodesically linear if it is bothgeodesically convex and concave.

In analogy with (11.1), we also extend the notion of strong convexity.

Definition 11.5. A function f : S→ R is geodesically µ-strongly convex [Udr94, p187]

for some µ > 0 if the set S is geodesically convex and for all geodesic segmentsc : [0, 1]→M whose image is in S we have

f (c(t)) ≤ (1− t) f (c(0)) + t f (c(1))− t(1− t)µ2

L(c)2,

where L(c) = ‖c′(0)‖c(0) is the length of the geodesic segment. The latteris equivalent to the requirement that f c : [0, 1] → R be µL(c)2-stronglyconvex in the usual sense.

Page 284: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

284 an introduction to optimization on smooth manifolds

As for standard convexity in Euclidean space, geodesic convexityensures that local minimizers, if they exist, are global minimizers.

Theorem 11.6. If f : S→ R is geodesically convex, then any local minimizeris a global minimizer.

Proof. For contradiction, assume x ∈ S is a local minimizer that is nota global minimizer. Then, there exists y ∈ S such that f (y) < f (x).There also exists a geodesic c connecting c(0) = x to c(1) = y in S suchthat, for all t ∈ (0, 1],

f (c(t)) ≤ (1− t) f (x) + t f (y) = f (x) + t( f (y)− f (x)) < f (x),

which contradicts the claim that x is a local minimizer.

Strict convexity yields uniqueness of minimizers, when they exist.

Theorem 11.7. If f : S → R is geodesically strictly convex, then it admitsat most one local minimizer, which is necessarily the global minimizer.

Proof. From Theorem 11.6, we know that any local minimizer is aglobal minimizer. Assume for contradiction that there exist two dis-tinct global minimizers, x and y, so that f (x) = f (y) = f?. There existsa geodesic c connecting them in S such that, for t ∈ (0, 1),

f (c(t)) < (1− t) f (x) + t f (y) = f?,

which contradicts global optimality of x and y.

When a geodesically convex function admits a maximizer (it mayadmit none, one or many), this maximizer typically occurs on the‘boundary’ of the geodesically convex domain. When a maximizer oc-curs ‘strictly inside’ the domain, the situation is much less interesting.We formalize this below, with a definition and a proposition.

Definition 11.8. Let S be a geodesically convex set on a Riemannian man- This definition is an extension from theclassical case [Roc70, Thm. 6.4]. Picturea two-dimensional triangle or disk in R3.

ifold M. The relative interior of S, denoted by relint S, is the set of pointsx ∈ S with the following property: for all y ∈ S, all geodesics c : [0, 1]→Mconnecting x = c(0) to y = c(1) in S can be extended to the domain [−ε, 1]for some ε > 0, and still be geodesics ofM with image in S.

Proposition 11.9. Let f : S → R be geodesically convex. If f attains its Akin to [Roc70, Thm. 32.1].

maximum at a point x in the relative interior of S, then f is constant on S.

Proof. Pick an arbitrary point y ∈ S. Our goal is to show f (y) = f (x).Consider any geodesic c : [0, 1] →M connecting x = c(0) to y = c(1)in S. Since x is in the relative interior of S, we can extend the domain ofc to [−ε, 1] for some ε > 0, and it is still a geodesic in S. Let z = c(−ε).Since f is geodesically convex on S, f c is convex and we deduce:

f (x) ≤ 11 + ε

f (z) +ε

1 + εf (y).

Page 285: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

geodesic convexity 285

Multiply by 1 + ε; since x is a maximizer, f (z) ≤ f (x) and we find:

ε f (x) ≤ ε f (y).

Since ε is positive, we deduce f (x) ≤ f (y). But x is a maximizer hencef (x) ≥ f (y). Combining, f (x) = f (y) as announced.

A connected, complete Riemannian manifold is a geodesically con-vex set, and its relative interior is the whole manifold itself. Since com-pact manifolds are complete and continuous functions on compact setsattain their maximum, we have the following corollary.

Corollary 11.10. If M is a connected, compact Riemannian manifold andf : M→ R is continuous and geodesically convex, then f is constant.

The take-away is that on compact manifolds geodesic convexity isonly interesting on subsets of a connected component.

We close this section with two useful statements, without proofs.

Proposition 11.11. If S1 is a geodesically convex set in a Riemannian mani- [Rap97, Cor. 6.1.2]

foldM1, and similarly for S2 inM2, then S1 × S2 is geodesically convex inthe Riemannian product manifoldM1 ×M2.

Proposition 11.12. If f : S→ R is geodesically convex, then f is continuous [Rap97, Thm. 6.1.8]The interior of S is the set of points in Sthat have a neighborhood (with respectto the topology ofM) included in S.

on the interior of S.

Exercise 11.13. Show that the sublevel sets (strict and non strict) of a geodesi-cally convex function are geodesically convex sets. (The converse does nothold. A function on a geodesically convex set is called geodesically quasi-convex if all of its sublevel sets are geodesically convex [Rap97, Lem. 13.1.1].)In particular, the set of global minimizers is geodesically convex.

Exercise 11.14. Let i ∈ I index an arbitrary collection of geodesically convex [Rap97, Lem. 6.1.1]

functions fi : S→ R and scalars αi ∈ R. Define the sublevel sets

Si = x ∈ S : fi(x) ≤ αi.

Show that the intersection S′ = ∩i∈ISi is geodesically convex.

Here is a take-away from Exercise 11.14: if f , f1, . . . , fm are geodesi-cally convex functions on a geodesically convex set S, then we call

minx∈S

f (x) subject to fi(x) ≤ αi for i = 1, . . . , m (11.3)

a geodesically convex optimization problem. The set S ∩ S1 ∩ · · · ∩ Sm ofpoints which satisfy the constraints is geodesically convex, hence anylocal minimizer of f restricted to that set is a global minimizer. Ifgj : S → R for j = 1, . . . , p are geodesically linear (Definition 11.4),then we can also allow equality constraints of the form gj(x) = β j.Indeed, this constraint is equivalent to the two constraints gj(x) ≤ β j

and −gj(x) ≤ −β j: both allowed since both gj and −gj are geodesi-cally convex.

Page 286: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

286 an introduction to optimization on smooth manifolds

Exercise 11.15. Assume f and g are geodesically convex on the set S. Showthat x 7→ max( f (x), g(x)) is geodesically convex on S. Further show thatx 7→ α f (x) + βg(x) is geodesically convex on S for all α, β ≥ 0.

Exercise 11.16. Let f : S→ R be geodesically convex. Show that if h : R→R is nondecreasing and convex, then h f is geodesically convex on S.

11.3 Differentiable geodesically convex functions

For functions which have a gradient or Hessian, geodesic convexitycan be characterized in practical ways through inequalities involvingderivatives at a base point.

On a technical note, recall from Section 10.2 that a geodesic segmentc : [0, 1] → M admits a unique extension to a maximally large openinterval containing [0, 1]: this is how we make sense of c′(0) and c′(1).

Theorem 11.17. Let S be a geodesically convex set on a Riemannian manifold See for example [HUL01, Thm. B.4.1.1,p110] for the same statement in the Eu-clidean case.

M and let f be a real function, differentiable1 in a neighborhood of S. Then,1 In Section 10.4, we defined what itmeans for a function on a manifold to bedifferentiable (as opposed to smooth).

f : S → R is geodesically convex if and only if for all geodesic segmentsc : [0, 1]→M contained in S we have (defining x = c(0)):

∀t ∈ [0, 1], f (c(t)) ≥ f (x) + t⟨grad f (x), c′(0)

⟩x . (11.4)

Moreover, f is geodesically µ-strongly convex for some µ > 0 if and only if

∀t ∈ [0, 1], f (c(t)) ≥ f (x) + t⟨grad f (x), c′(0)

⟩x + t2 µ

2L(c)2. (11.5)

Finally, f is geodesically strictly convex if and only if, whenever c′(0) 6= 0,

∀t ∈ (0, 1], f (c(t)) > f (x) + t⟨grad f (x), c′(0)

⟩x . (11.6)

Proof. By definition, f is geodesically (strictly) convex if and only if, forall x, y ∈ S and all geodesics c connecting x to y in S, the compositionf c is (strictly) convex from [0, 1] to R. By extending the domain of csomewhat, we see that f c is differentiable on an open interval whichcontains [0, 1]: this allows us to call upon Lemma 11.1.

First, f c is convex if and only if for all s, t ∈ [0, 1]:

f (c(t)) ≥ f (c(s)) + (t− s)( f c)′(s).

Since f is differentiable in a neighborhood of S, we have

( f c)′(s) = D f (c(s))[c′(s)] =⟨grad f (c(s)), c′(s)

⟩c(s) .

Combine and set s = 0 to conclude that if f is geodesically convexthen the inequalities (11.4) hold. The other way around, if the inequal-ities (11.4) hold, then (by reparameterization of c) we conclude thatf c is convex for all c as prescribed, hence f is geodesically convex.The proof for strong convexity is similar.

Page 287: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

geodesic convexity 287

Second, assuming c′(0) 6= 0, we have that f c is strictly convex ifand only if for all s, t distinct in [0, 1]:

f (c(t)) > f (c(s)) + (t− s)( f c)′(s).

Again, using differentiability of f and setting s = 0, it follows thatf c is strictly convex if and only if inequality (11.6) holds. Concludesimilarly to the first part.

In particular, if f : M→ R is differentiable, and if it is geodesicallyconvex when restricted to a subset S, then given x ∈ S and v ∈ TxMsuch that c(t) = Expx(tv) is in S for all t ∈ [0, 1] we have

∀t ∈ [0, 1], f (Expx(tv)) ≥ f (x) + t 〈grad f (x), v〉x , (11.7)

and the inequality is strict for t 6= 0 if f is geodesically strictly convex.Furthermore, if f is geodesically µ-strongly convex, then

∀t ∈ [0, 1], f (Expx(tv)) ≥ f (x) + t 〈grad f (x), v〉x + t2 µ

2‖v‖2

x. (11.8)

These convenient inequalities should be compared with the correspond-ing inequality we have (in particular) if the gradient of f is L-Lipschitzcontinuous (Proposition 10.47):

∀t ∈ [0, 1], f (Expx(tv)) ≤ f (x) + t 〈grad f (x), v〉x + t2 L2‖v‖2

x.

When both types of inequalities hold, we can obtain strong guaranteesfor optimization algorithms [ZS16].

The following corollary is of particular importance to optimization.Note that we need the geodesically convex domain to be open. This isbecause it is possible for a global minimizer to have nonzero gradient,provided it lies on the boundary of S.

Corollary 11.18. If f is differentiable and geodesically convex on an opengeodesically convex set, then x is a global minimizer of f if and only ifgrad f (x) = 0.

Proof. If grad f (x) = 0, then Theorem 11.17 shows f (x) ≤ f (y) for ally in the domain of f (this does not require the domain to be open). Theother way around, since the domain of f is open, it is in particular anopen submanifold ofM and we can apply Proposition 4.4 to concludethat if x is a global minimizer, then grad f (x) = 0.

We now turn to a characterization of convexity based on second-order derivatives, also with the requirement that the domain be open.

Theorem 11.19. Let f : S → R be twice differentiable on an open geodesi- See for example [HUL01, Thm. B.4.3.1,p115] for most of the same statement inthe Euclidean case.

cally convex set S. The function f is

Page 288: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

288 an introduction to optimization on smooth manifolds

1. Geodesically convex if and only if Hess f (x) 0;

2. Geodesically µ-strongly convex if and only if Hess f (x) µ Id;

3. Geodesically strictly convex if (but not only if) Hess f (x) 0,

all understood to hold for all x ∈ S.

Proof. Similarly to the proof of Theorem 11.17, we start with the factthat f is geodesically convex if and only if f c : [0, 1] → R is convexfor all geodesic segments c : [0, 1]→M whose image lies in S. Callingupon Lemma 11.1, we find that this is the case if and only if, for allsuch geodesics, it holds that

∀t ∈ (0, 1), ( f c)′′(t) ≥ 0.

Since f is twice differentiable everywhere in S, we get that

( f c)′′(t) =ddt⟨grad f (c(t)), c′(t)

⟩c(t) =

⟨Hess f (c(t))[c′(t)], c′(t)

⟩c(t) ,

where we also used that c′′(t) = 0 since c is a geodesic.If Hess f (x) is positive semidefinite for all x in S, then ( f c)′′(t) ≥ 0

for all c as prescribed and t ∈ (0, 1), so that f is geodesically convex.The other way around, if f is geodesically convex, it follows that⟨

Hess f (c(0))[c′(0)], c′(0)⟩

c(0) ≥ 0

for all admissible c (where we particularized to t = 0). For all x ∈ Sand sufficiently small v ∈ TxM, the geodesic c(t) = Expx(tv) remainsin S for t ∈ [0, 1] since S is open in M. Thus, for all such x andv, we deduce that 〈Hess f (x)[v], v〉x ≥ 0, which confirms Hess f (x) ispositive semidefinite, and this holds at all points x ∈ S.

The same proof applies for strong convexity, either using or show-ing that ( f c)′′(t) ≥ µL(c)2 for all admissible c and t ∈ [0, 1], andrecalling that L(c) = ‖c′(t)‖c(t) since c is a geodesic defined over [0, 1].

If Hess f (x) is positive definite at all x ∈ S, then ( f c)′′(t) > 0whenever c′(0) 6= 0, which confirms f is geodesically strictly convex.The converse is not true because it also does not hold in the Euclideancase: consider f (x) = x4 on S = (−1, 1) ⊂ R.

11.4 Positive reals and geometric programming

As usual, let Rn denote the Euclidean space with metric 〈u, v〉 = u>v.The positive orthant

Rn+ = x ∈ Rn : x1, . . . , xn > 0 (11.9)

Page 289: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

geodesic convexity 289

is a convex subset of Rn, in the usual sense. Being an open set, it isalso an open submanifold of Rn; its tangent spaces are all identifiedwith Rn.

We can make Rn+ into a Riemannian submanifold of Rn using the

Euclidean metric. Geodesic convexity on that manifold is equivalentto convexity in the usual sense: this is not particularly interesting. Fur-thermore, this manifold is not complete—its geodesics are the straightlines of Rn: they cease to exist when they leave Rn

+.We can endow Rn

+ with a different Riemannian metric so as to makeit complete. This leads to a different and interesting notion of geodesicconvexity. The key is to establish a diffeomorphism between Rn andRn

+, and to ‘pullback’ the Riemannian geometry of Rn to Rn+ through

that diffeomorphism.To this end, consider the map ϕ : Rn

+ → Rn:

ϕ(x) = log(x) = (log(x1), . . . , log(xn))>. (11.10)

This is a diffeomorphism between the manifolds Rn+ and Rn because

it is smooth and invertible, and ϕ−1 : Rn → Rn+, defined by

ϕ−1(y) = exp(y) = (ey1 , . . . , eyn)>, (11.11)

is smooth. Note also these expressions for the differential of ϕ and itsinverse, both maps from Rn to Rn:

Dϕ(x)[u] =(

u1

x1, . . . ,

un

xn

)>, (Dϕ(x))−1 [z] = (x1z1, . . . , xnzn)

>.

Equipped with this diffeomorphism, we can define a Riemannian This metric is different also from theone we imposed on the relative interiorof the simplex in Exercise 3.55, namely:〈u, v〉x = ∑n

i=1uivixi

. That one is a pull-back from the usual metric on the pos-itive orthant of the unit sphere (up toscaling).

metric 〈·, ·〉+ on Rn+ as follows: Dϕ(x) is an invertible linear map from

TxRn+ to Tϕ(x)R

n, and we define the inner product on TxRn+ so as to

make this map an isometry, that is:

〈u, v〉+x , 〈Dϕ(x)[u], Dϕ(x)[v]〉 =n

∑i=1

uivi

x2i

. (11.12)

Since Rn+ now has two distinct Riemannian geometries, we let

M = (Rn+, 〈·, ·〉+) (11.13)

denote the Riemannian manifold obtained with the pullback metric, toavoid ambiguities.

It is an exercise to show that the geodesics of M are exactly theimages of geodesics of Rn through ϕ−1, that is: all geodesics ofM areof the form

c(t) = ϕ−1(y + tz) = exp(y + tz) =(ey1+tz1 , . . . , eyn+tzn

), (11.14)

for some y, z ∈ Rn. These are defined for all t, hence M is complete.

Intuitively, as we near the missingboundary of Rn

+, that is, as some xi nearszero, the metric’s 1/x2

i scaling distortslengths, making the boundary seem in-finitely far away. In fact, the metric at xis given by the Hessian of the log-barrierfunction −∑n

i=1 log(xi).

Page 290: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

290 an introduction to optimization on smooth manifolds

Moreover, for any two points x, x′ ∈ M, there exists a unique geodesicc : [0, 1]→M (necessarily minimizing) connecting them:

c(t) = exp(log(x) + t(log(x′)− log(x))). (11.15)

We are now in a good position to study geodesic convexity onM.

Proposition 11.20. A set S ⊆ Rn+ is geodesically convex onM if and only

if C = log(S) is convex in Rn.

Proof. Assume S is geodesically convex. For any two points y, y′ ∈ C,let x = ϕ−1(y) and x′ = ϕ−1(y′) be the corresponding points in S.Since S is geodesically convex, the geodesic (11.15) is included in S fort ∈ [0, 1]. Hence, C contains ϕ(c(t)) = log(x) + t(log(x′)− log(x)) =y + t(y′ − y) for t ∈ [0, 1]: this is the line segment connecting y to y′,hence C is convex. The proof is similar in the other direction.

Proposition 11.21. Let S be geodesically convex onM. Then, f : S→ R isgeodesically (strictly) convex onM if and only if the function

g : log(S)→ R : y 7→ g(y) = f (exp(y))

is (strictly) convex in Rn.

Proof. By definition, f is geodesically convex if and only if for allx, x′ ∈ S and t ∈ [0, 1] it holds that

f (c(t)) ≤ (1− t) f (x) + t f (x′) = (1− t)g(y) + tg(y′),

where x = exp(y), x′ = exp(y′), and c(t) is the geodesic uniquelyspecified by (11.15). Conclude with the observation that

f (c(t)) = f (exp(log(x) + t(log(x′)− log(x)))) = g((1− t)y + ty′).

(The argument is the same for geodesic strict convexity.)

Let us consider an example. The function f : Rn+ → R defined by

f (x) = xa11 · · · x

ann (11.16)

with some a ∈ Rn is (usually) not convex on Rn+, but it is geodesically

convex on M. Indeed, S = Rn+ is geodesically convex (since M is

connected and complete), and

g(y) = f (exp(y)) = (ey1)a1 · · · (eyn)an = ea>y

is convex on all of Rn—indeed, it is the composition of a linear (henceconvex) function of y with a convex, nondecreasing function (see alsoExercise 11.16).

With this example, we can identify a whole class of geodesicallyconvex functions on M, based on the observation that nonnegativelinear combinations of geodesically convex functions are geodesicallyconvex (see Exercise 11.15).

Page 291: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

geodesic convexity 291

Definition 11.22. A posynomial is a function f : Rn+ → R of the form

f (x) =K

∑k=1

ckxa1k1 · · · x

ankn ,

where c1, . . . , ck are nonnegative and the exponents aik are arbitrary. Allposynomials are geodesically convex on M. If exactly one of the coefficientsck is positive, f is called a monomial.

By Exercise 11.13, this implies sets of the form

x ∈ Rn+ : f (x) ≤ α

are geodesically convex inM for any posynomial f and α ∈ R.We can say even more about monomials. Given f (x) = cxa1

1 · · · xann

with c > 0, the function log f is well defined on Rn+. Moreover, log f

is geodesically linear onM (Definition 11.4). Indeed,

log( f (exp(y))) = log(c) + a>y

is affine. By Proposition 11.21, this implies both log f and − log f aregeodesically convex, as announced. Consequently, sets of the form

x ∈ Rn+ : log f (x) = log β = x ∈ Rn

+ : f (x) = β

are geodesically convex inM for any monomial f and β > 0.Overall, we reach the conclusion that problems of the form

minx∈Rn

+

f (x) subject to fi(x) ≤ 1, i = 1, . . . , m, (11.17)

gj(x) = 1, j = 1, . . . , p,

are geodesically convex whenever f , f1, . . . , fm are posynomials andg1, . . . , gp are monomials. These optimization problems are known asgeometric programs: see the tutorial by Boyd, Kim, Vandenberghe andHassibi for the more standard construction of this class of problemsand a list of applications [BKVH07]. This is also discussed under thelens of geodesic convexity in [Rap97, Ch. 10].

Exercise 11.23. Show that 〈·, ·〉+ is indeed a Riemannian metric on Rn+.

Then, show that the Riemannian connection onM is given by

∇uV = Dϕ(x)−1[DV(ϕ(x))[u]]

for all u ∈ TxM and V ∈ X(M), with u = Dϕ(x)[u] a vector in Rn andV a smooth vector field in Rn defined by V(ϕ(x)) = Dϕ(x)[V(x)]. Fromthere, deduce an expression for D

dt on M, and conclude that geodesics of Mcorrespond to geodesics of Rn as specified by (11.15).

Page 292: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

292 an introduction to optimization on smooth manifolds

11.5 Positive definite matrices

Consider the set of symmetric, positive definite matrices of size n:

Sym(n)+ = X ∈ Sym(n) : X 0. (11.18)

This is a convex set in the Euclidean space Sym(n) of symmetric ma-trices of size n, with the inner product 〈U, V〉 = Tr(U>V) = Tr(UV). Itis an open submanifold; its tangent spaces are identified with Sym(n).

In analogy with Rn+, we aim to endow Sym(n)+ with a Riemannian

structure, ideally one that makes it complete. There are at least twoways of doing this. In both cases, for n = 1 we recover the same Rie-mannian geometry as we constructed for R1

+ in the previous section.One way is to construct a diffeomorphism between Sym(n)+ and a

complete manifold, just like log provided a diffeomorphism from Rn+

to Rn. Here, we can define ϕ : Sym(n)+ → Sym(n) to be the principalmatrix logarithm, See Section 4.7 for questions related to

the computation of matrix functions andtheir differentials.ϕ(X) = log(X). (11.19)

Its inverse is the matrix exponential ϕ−1(Y) = exp(Y). Both aresmooth on the specified domains, hence ϕ is indeed a diffeomorphism.Based on this observation, we can pullback the Euclidean metric fromSym(n) to Sym(n)+ in order to define the following inner product onTXSym(n)+ = Sym(n):

〈U, V〉logX , 〈D log(X)[U], D log(X)[V]〉 . (11.20)

This is called the Log-Euclidean metric; it was studied in detail by Ar-signy et al. [AFPA07]. For the same reasons as in the previous section,we can easily describe its geodesics and geodesic convexity:

• The unique (and minimizing) geodesic connecting X, X′ ∈ Sym(n)+

with respect to the Log-Euclidean metric is

c(t) = exp(log(X) + t(log(X′)− log(X))). (11.21)

• A set S ⊆ Sym(n)+ is geodesically convex in that metric if and onlyif log(S) is convex in Sym(n).

• Given such a geodesically convex set S, a function f : S → R isgeodesically (strictly) convex if and only if f exp is (strictly) convexon Sym(n).

Another—and by some measures, more common—Riemannian met-

The central expression ensures the in-puts to 〈·, ·〉 are symmetric matrices. Themetric at X is given by the Hessian of thelog-barrier function − log(det(X)).

ric on Sym(n)+ is the so-called affine invariant metric. On the tangentspace TXSym(n)+, it is defined as follows:

〈U, V〉affX =

⟨X−1/2UX−1/2, X−1/2VX−1/2

⟩= Tr(X−1UX−1V).

(11.22)

Page 293: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

geodesic convexity 293

This metric is named after the following property: for all M ∈ Rn×n

invertible, it holds that MXM> is positive definite, and:⟨MUM>, MVM>

⟩aff

MXM>= 〈U, V〉aff

X . (11.23)

One concrete consequence is that if c : [0, 1] → Sym(n)+ is a smoothcurve, then the length of c(t) is equal to the length of the other curvet 7→ Mc(t)M> because their speeds are equal for all t. Likewise, thelength of the curve t 7→ c(t)−1 is equal to that of c. One can showthat the geodesic such that c(0) = X and c′(0) = V is given by [Bha07,Thm. 6.1.6], [Vis18, Ex. 4.9]:

ExpX(tV) = c(t) = X1/2 exp(

tX−1/2VX−1/2)

X1/2. (11.24)

This is defined for all t, thus the manifold is complete. In order toensure c(1) = X′ (another positive definite matrix), set V to be

LogX(X′) = X1/2 log(X−1/2X′X−1/2)X1/2. (11.25)

This provides the initial velocity at X of the unique geodesic segmentconnecting X and X′. It follows that

dist(X, X′)2 =⟨LogX(X′), LogX(X′)

⟩affX = ‖log(X−1/2X′X−1/2)‖2

F,(11.26)

where ‖·‖F denotes the Frobenius norm. With some care, it is possibleto express Exp, Log and dist without any matrix square roots (butmatrix inverses, exponentials and logarithms are still necessary).

Bhatia [Bha07, Ch. 6] and Moakher [Moa05] (among others) pro-vide a discussion of the affine invariant geometry of positive defi-nite matrices. Moakher as well as Sra and Hosseini [SH15] discussgeodesic convexity on Sym(n)+ endowed with the affine invariant ge-ometry, with applications. Expressions for the Riemannian connection,gradient, Hessian and parallel transport can be found in [SH15, §3].See [NSAY+

19] for an overview of reasons to use the affine invariantmetric when positive definite matrices represent zero-mean Gaussiandistributions (in comparison with other possible structures), and foran application of geodesic convexity to robust distribution estimation.

11.6 Notes and references

We follow Rapcsák for the definitions of geodesic convexity [Rap91],in that we define a set to be geodesically convex if every two points inthe set are connected by some geodesic remaining in the set.

Contrast this with the usual definition in Riemannian geometry,namely: a set S inM is geodesically convex (in the traditional sense) if

Page 294: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

294 an introduction to optimization on smooth manifolds

all two points x, y ∈ S are connected by a unique minimizing geodesicsegment, and that segment lies in S [Lee18, p166]. Sakai calls such setsstrongly convex [Sak96, §IV.5]. If a set is strongly convex, then it is alsogeodesically convex in the sense of Definition 11.2, but the converse isnot true: consider the sphere as a counter-example. Any point x ∈ Madmits a strongly convex neighborhood (hence also a geodesically con-vex one) in the form of a geodesic ball centered at x [Lee18, Thm. 6.17]:this is helpful to prove local convergence results in optimization.

Another notion is that of a totally convex set S as defined by Sakaiand also Udriste [Udr94]: for all two points x, y ∈ S, all geodesics ofM which connect x to y must remain in S.

O’Neill [O’N83, Def. 5.5] defines S ⊆ M to be an open convex setof a Riemannian manifold M if it is open and it is a normal neighbor-hood [O’N83, p71] of each of its points. In particular, this implies thatfor all x, y ∈ S, there is a unique (not necessarily minimizing) geodesicconnecting x to y in S. There may be other geodesics connecting x toy which do not remain in S.

In several papers about geodesic convexity, these differences are lit-tle or not addressed because they deal with Hadamard manifolds: onsuch manifolds, any two points are connected by exactly one geodesic(which is then necessarily minimizing). This simplifies matters signifi-cantly (in particular, all above definitions become equivalent), and alsoprovides the most favorable setup for convexity. Euclidean spaces, Rn

+

and Sym(n)+ with the metrics we discussed all have that property.Udriste and Rapcsák wrote a large number of papers on the subject

of Riemannian convexity through the late 70s, 80s and 90s: see themany references in [Rap91, Rap97] and [Udr94]. Much of the resultsdiscussed in this chapter (and more) can be found in those works.Other useful resources include [dCNdLO98], [Moa05], [SH15], [ZS16]to name a few.

More generally, one could also consider a notion of retraction con-vexity [Hua13, Def. 4.3.1]. Given a retraction R on a manifoldM, a setS ⊆ M is retraction convex if for all x, y ∈ S there exists v ∈ TxMsuch that c(t) = Rx(tv) satisfies c(0) = x, c(1) = y and c([0, 1]) ⊆ S. Afunction f : S → R is retraction convex if f composed with all retrac-tion curves in S is convex. For the exponential retraction, this reducesto the notion of geodesic convexity defined in this chapter. Retractionconvexity is referenced notably in [TFBJ18] and [KSM18].

There is a connection between geodesic convexity and barrier func-tions for interior point methods. Quiroz and Oliveira [QO04] for ex-ample study Rn

+ with a general family of diagonal Riemannian met-rics, and show applications to the design and analysis of interior pointmethods for linear programming.

See [Tak11, MMP18] and references therein for discussions of Rie-

Page 295: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

geodesic convexity 295

mannian geometries on Sym(n)+ related to the Wasserstein distancebetween probability distributions, particularized to Gaussian distribu-tions with positive definite covariance matrices.

When discussing convexity of a function in Rn, one usually allowsf to take on infinite values. It is also habitual to allow f to be nondif-ferentiable, in which case one resorts to subgradients instead of gradi-ents. This can be generalized to Riemannian manifolds; see for exam-ple [FO98, ZS16, GH16, BFM17]. Another classical tool in the study ofconvex functions is the Fenchel dual: see [BHTVN19] for a discussionof that notion on Riemannian manifolds.

Perhaps the most famous algorithm for convex optimization in Rn

is the accelerated gradient method (also known as the fast gradientmethod). There is theoretical interest in determining whether that al-gorithm has a sensible analog on Riemannian manifolds. Recent workon this topic includes a discussion of the difficulties of the task [ZS18]and of a continuous-time perspective in [AOBL19], and approachesbased on estimate sequences [AS20, AOBL20].

Recently, interest in geodesic convexity over the cone of positivedefinite matrices is growing in relation to the Brascamp–Lieb constantand the operator scaling problem: see an introductory treatment ofgeodesic convexity for this topic by Vishnoi [Vis18].

Page 296: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian
Page 297: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

Bibliography

[Abb84] E. Abbott. Flatland: A Romance of Many Dimensions. Seeley & Co., 1884.

[ABBC20] N. Agarwal, N. Boumal, B. Bullins, and C. Cartis. Adaptive regularizationwith cubics on manifolds. Mathematical Programming, 2020.

[ABG07] P.-A. Absil, C. G. Baker, and K. A. Gallivan. Trust-region methods on Rie-mannian manifolds. Foundations of Computational Mathematics, 7(3):303–330, 2007.

[ABM08] F. Alvarez, J. Bolte, and J. Munier. A unifying local convergence result forNewton’s method in Riemannian manifolds. Foundations of ComputationalMathematics, 8(2):197–226, Apr 2008.

[ADM+02] R.L. Adler, J.P. Dedieu, J.Y. Margulies, M. Martens, and M. Shub. New-

ton’s method on Riemannian manifolds and a geometric model for thehuman spine. IMA Journal of Numerical Analysis, 22(3):359–390, 2002.

[AFPA07] V. Arsigny, P. Fillard, X. Pennec, and N. Ayache. Geometric means ina novel vector space structure on symmetric positive-definite matrices.SIAM J. Matrix Anal. Appl., 29(1):328–347, 2007.

[AK06] P.-A. Absil and K. Kurdyka. On the stable equilibrium points of gradientsystems. Systems & Control Letters, 55(7):573–577, July 2006.

[AM12] P.-A. Absil and J. Malick. Projection-like retractions on matrix manifolds.SIAM Journal on Optimization, 22(1):135–158, 2012.

[AMH09] A. Al-Mohy and N. Higham. Computing the fréchet derivative of thematrix exponential, with an application to condition number estimation.SIAM Journal on Matrix Analysis and Applications, 30(4):1639–1657, 2009.

[AMS08] P.-A. Absil, R. Mahony, and R. Sepulchre. Optimization Algorithms onMatrix Manifolds. Princeton University Press, Princeton, NJ, 2008.

[AMT13] P.-A. Absil, R. Mahony, and J. Trumpf. An extrinsic look at the Rieman-nian Hessian. In Frank Nielsen and Frédéric Barbaresco, editors, Geomet-ric Science of Information, volume 8085 of Lecture Notes in Computer Science,pages 361–368. Springer Berlin Heidelberg, 2013.

[AO15] P.-A. Absil and I.V. Oseledets. Low-rank retractions: a survey and newresults. Computational Optimization and Applications, 62(1):5–29, 2015.

[AOBL19] F. Alimisis, A. Orvieto, G. Bécigneul, and A. Lucchi. A continuous-timeperspective for modeling acceleration in Riemannian optimization. arXiv1910.10782, 2019.

[AOBL20] F. Alimisis, A. Orvieto, G. Bécigneul, and A. Lucchi. Practical acceleratedoptimization on Riemannian manifolds. arXiv 2002.04144, 2020.

[AS20] K. Ahn and S. Sra. From Nesterov’s estimate sequence to Riemannianacceleration. arXiv 2001.08876, 2020.

Page 298: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

298 an introduction to optimization on smooth manifolds

[ASS+09] S. Agarwal, N. Snavely, I. Simon, S.M. Seitz, and R. Szeliski. BuildingRome in a day. In Computer Vision, 2009 IEEE 12th International Conferenceon, pages 72–79. IEEE, 2009.

[Bac14] M. Bacák. Convex analysis and optimization in Hadamard spaces, volume 22

of De Gruyter Series in Nonlinear Analysis and Applications. Walter deGruyter GmbH & Co KG, 2014.

[BAC18] N. Boumal, P.-A. Absil, and C. Cartis. Global rates of convergence fornonconvex optimization on manifolds. IMA Journal of Numerical Analysis,2018.

[BAJN20] G.O. Berger, P.-A. Absil, R.M. Jungers, and Y. Nesterov. On the quality offirst-order approximation of functions with Hölder continuous gradient,2020.

[Bar95] A.I. Barvinok. Problems of distance geometry and convex properties ofquadratic maps. Discrete & Computational Geometry, 13(1):189–202, 1995.

[BBJN18] S. Bhojanapalli, N. Boumal, P. Jain, and P. Netrapalli. Smoothed analy-sis for low-rank solutions to semidefinite programs in quadratic penaltyform. In S. Bubeck, V. Perchet, and P. Rigollet, editors, Proceedings of the31st Conference On Learning Theory, volume 75 of Proceedings of MachineLearning Research, pages 3243–3270. PMLR, 06–09 Jul 2018.

[BBV16] A.S. Bandeira, N. Boumal, and V. Voroninski. On the low-rank approachfor semidefinite programs arising in synchronization and community de-tection. In Proceedings of The 29th Conference on Learning Theory, COLT2016, New York, NY, June 23–26, 2016.

[BC70] F. Brickell and R.S. Clark. Differentiable manifolds: an introduction. VanNostrand Reinhold, 1970.

[Ber19] R. Bergmann. Manopt.jl, 2019.

[Bes87] A.L. Besse. Einstein Manifolds. Springer Berlin Heidelberg, 1987.

[BFM17] G.C. Bento, O.P. Ferreira, and J.G. Melo. Iteration-complexity of gradi-ent, subgradient and proximal point methods on Riemannian manifolds.Journal of Optimization Theory and Applications, 173(2):548–562, 2017.

[BH15] B.G. Bodmann and J. Haas. Frame potentials and the geometry of frames.Journal of Fourier Analysis and Applications, 21(6):1344–1383, May 2015.

[BH18] R. Bergmann and R. Herzog. Intrinsic formulation of KKT condi-tions and constraint qualifications on smooth manifolds. arXiv preprintarXiv:1804.06214, 2018.

[Bha07] R. Bhatia. Positive definite matrices. Princeton University Press, 2007.

[BHTVN19] R. Bergmann, R. Herzog, D. Tenbrinck, and J. Vidal-Núñez. Fenchel dual-ity theory and a primal-dual algorithm on Riemannian manifolds. arXiv1908.02022, 2019.

[BKVH07] S. Boyd, S.-J. Kim, L. Vandenberghe, and A. Hassibi. A tutorial on geo-metric programming. Optimization and Engineering, 8(1):67–127, 2007.

[BM03] S. Burer and R.D.C. Monteiro. A nonlinear programming algorithm forsolving semidefinite programs via low-rank factorization. MathematicalProgramming, 95(2):329–357, 2003.

[BM05] S. Burer and R.D.C. Monteiro. Local minima and convergence in low-rank semidefinite programming. Mathematical Programming, 103(3):427–444, 2005.

Page 299: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

bibliography 299

[BM06] I. Brace and J.H. Manton. An improved BFGS-on-manifold algorithm forcomputing weighted low rank approximations. In Proceedings of the 17hInternational Symposium on Mathematical Theory of Networks and Systems,pages 1735–1738, 2006.

[BMAS14] N. Boumal, B. Mishra, P.-A. Absil, and R. Sepulchre. Manopt, a Mat-lab toolbox for optimization on manifolds. Journal of Machine LearningResearch, 15(42):1455–1459, 2014.

[Bon13] S. Bonnabel. Stochastic gradient descent on Riemannian manifolds. Au-tomatic Control, IEEE Transactions on, 58(9):2217–2229, 2013.

[BV19] P. Breiding and N. Vannieuwenhoven. The condition number of rieman-nian approximation problems, 2019.

[BVB16] N. Boumal, V. Voroninski, and A.S. Bandeira. The non-convex Burer–Monteiro approach works on smooth semidefinite programs. In D. D.Lee, M. Sugiyama, U. V. Luxburg, I. Guyon, and R. Garnett, editors, Ad-vances in Neural Information Processing Systems 29, pages 2757–2765. Cur-ran Associates, Inc., 2016.

[BVB19] N. Boumal, V. Voroninski, and A.S. Bandeira. Deterministic guaranteesfor Burer-Monteiro factorizations of smooth semidefinite programs. Com-munications on Pure and Applied Mathematics, 73(3):581–608, 2019.

[CGT00] A.R. Conn, N.I.M. Gould, and P.L. Toint. Trust-region methods. MPS-SIAMSeries on Optimization. Society for Industrial and Applied Mathematics,2000.

[CGT11a] C. Cartis, N.I.M. Gould, and P. Toint. Adaptive cubic regularisationmethods for unconstrained optimization. Part II: worst-case function- andderivative-evaluation complexity. Mathematical Programming, 130:295–319,2011.

[CGT11b] C. Cartis, N.I.M. Gould, and P.L. Toint. Adaptive cubic regularisationmethods for unconstrained optimization. Part I: motivation, convergenceand numerical results. Mathematical Programming, 127(2):245–295, 2011.

[CGT12] C. Cartis, N.I.M. Gould, and P.L. Toint. Complexity bounds for second-order optimality in unconstrained optimization. Journal of Complexity,28(1):93–108, 2012.

[Cha06] I. Chavel. Riemannian geometry: a modern introduction, volume 108 of Cam-bridge Tracts in Mathematics. Cambridge University Press, 2006.

[Cif19] D. Cifuentes. Burer-Monteiro guarantees for general semidefinite pro-grams. arXiv 1904.07147, 2019.

[CM19] D. Cifuentes and A. Moitra. Polynomial time guarantees for the Burer-Monteiro method. arXiv 1912.01745, 2019.

[CMSZ18] S. Chen, S. Ma, A.M.C. So, and T. Zhang. Proximal gradient methodfor nonsmooth optimization over the Stiefel manifold. arXiv preprintarXiv:1811.00980, 2018.

[Dar94] R.W.R. Darling. Differential forms and connections. Cambridge UniversityPress, 1994.

[dBEG08] A. d’Aspremont, F. Bach, and L. El Ghaoui. Optimal solutions for sparseprincipal component analysis. The Journal of Machine Learning Research,9:1269–1294, 2008.

[dC92] M.P. do Carmo. Riemannian geometry. Mathematics: Theory & Appli-cations. Birkhäuser Boston Inc., Boston, MA, 1992. Translated from thesecond Portuguese edition by Francis Flaherty.

Page 300: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

300 an introduction to optimization on smooth manifolds

[dCN95] J.X. da Cruz Neto. Métodos Geodésicos na Programaçao Matemática. PhDthesis, Ph.D. Thesis, COPPE/UFRJ, Rio de Janeiro, Brazil, 1995.

[dCNdLO98] J.X. da Cruz Neto, L.L. de Lima, and P.R. Oliveira. Geodesic algorithmsin Riemannian geometry. Balkan Journal of Geometry and Its Applications,3(2):89–100, 1998.

[DE99] L. Dieci and T. Eirola. On smooth decompositions of matrices. SIAMJournal on Matrix Analysis and Applications, 20(3):800–819, 1999.

[Deh95] J. Dehaene. Continuous-time matrix algorithms, systolic algorithms and adap-tive neural networks. PhD thesis, Katholieke universiteit Leuven, 1995.

[DH94] E. Dudek and K. Holly. Nonlinear orthogonal projection. Annales PoloniciMathematici, 59(1):1–31, 1994.

[DH19] A. Douik and B. Hassibi. Manifold optimization over the set of doublystochastic matrices: A second-order geometry. IEEE Transactions on SignalProcessing, 67(22):5761–5774, November 2019.

[DMV99] J. Dehaene, M. Moonen, and J. Vandewalle. Analysis of a class ofcontinuous-time algorithms for principal component analysis and sub-space tracking. IEEE Transactions on Circuits and Systems I: FundamentalTheory and Applications, 46(3):364–372, 1999.

[dOF18] F.R. de Oliveira and O.P. Ferreira. Newton method for finding a singu-larity of a special class of locally Lipschitz continuous vector fields onRiemannian manifolds. arXiv:1810.11636, 2018.

[EAS98] A. Edelman, T.A. Arias, and S.T. Smith. The geometry of algorithms withorthogonality constraints. SIAM journal on Matrix Analysis and Applica-tions, 20(2):303–353, 1998.

[FCPJ04] P.T. Fletcher, Lu; C., S.M. Pizer, and S. Joshi. Principal geodesic analysisfor the study of nonlinear statistics of shape. IEEE Transactions on MedicalImaging, 23(8):995–1005, August 2004.

[Fep17] F. Feppon. Riemannian geometry of matrix manifolds for Lagrangianuncertainty quantification of stochastic fluid flows. Master’s thesis, Mas-sachusetts Institute of Technology, 2017.

[FL19] F. Feppon and P. Lermusiaux. The extrinsic geometry of dynamical sys-tems tracking nonlinear matrix projections, 2019.

[Fle13] T.P. Fletcher. Geodesic regression and the theory of least squares on Rie-mannian manifolds. International Journal of Computer Vision, 105(2):171–185, Nov 2013.

[FO98] O.P. Ferreira and P.R. Oliveira. Subgradient algorithm on Riemannianmanifolds. Journal of Optimization Theory and Applications, 97(1):93–104,Apr 1998.

[FS02] O.P. Ferreira and B.F. Svaiter. Kantorovich’s theorem on Newton’smethod in Riemannian manifolds. Journal of Complexity, 18(1):304–329,2002.

[Gab82] D. Gabay. Minimizing a differentiable function over a differential mani-fold. Journal of Optimization Theory and Applications, 37(2):177–219, 1982.

[GH16] P. Grohs and S. Hosseini. ε-subgradient algorithms for locally Lipschitzfunctions on Riemannian manifolds. Advances in Computational Mathemat-ics, 42(2):333–360, 2016.

[GHL04] S. Gallot, D. Hulin, and J. LaFontaine. Riemannian geometry. SpringerVerlag, 2004.

Page 301: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

bibliography 301

[Gri81] A. Griewank. The modification of Newton’s method for unconstrainedoptimization by bounding cubic terms. Technical Report Technical reportNA/12, Department of Applied Mathematics and Theoretical Physics,University of Cambridge, 1981.

[GW08] A. Griewank and A. Walther. Evaluating Derivatives: Principles and Tech-niques of Algorithmic Differentiation. Society for Industrial and AppliedMathematics, 2 edition, 2008.

[GZAL14] J. Goes, T. Zhang, R. Arora, and G. Lerman. Robust stochastic principalcomponent analysis. In Artificial Intelligence and Statistics, pages 266–274,2014.

[HAG16] W. Huang, P.-A. Absil, and K.A. Gallivan. A Riemannian BFGS Method forNonconvex Optimization Problems, pages 627–634. Springer InternationalPublishing, Cham, 2016.

[HGA15] W. Huang, K.A. Gallivan, and P.-A. Absil. A Broyden class of quasi-Newton methods for Riemannian optimization. SIAM Journal on Opti-mization, 25(3):1660–1685, 2015.

[Hig08] N. Higham. Functions of Matrices. Society for Industrial and AppliedMathematics, Philadelphia, PA, USA, 2008.

[HLV18] P. Hand, C. Lee, and V. Voroninski. ShapeFit: Exact location recoveryfrom corrupted pairwise directions. Communications on Pure and AppliedMathematics, 71(1):3–50, 2018.

[HM96] U. Helmke and J.B. Moore. Optimization and dynamical systems. SpringerScience & Business Media, 1996.

[HS15] R. Hosseini and S. Sra. Matrix manifold optimization for Gaussian mix-tures. In C. Cortes, N. D. Lawrence, D. D. Lee, M. Sugiyama, and R. Gar-nett, editors, Advances in Neural Information Processing Systems 28, pages910–918. Curran Associates, Inc., 2015.

[HS18] G. Heidel and V. Schulz. A Riemannian trust-region method for low-ranktensor completion. Numerical Linear Algebra with Applications, 25(6):e2175,2018.

[HS19] R. Hosseini and S. Sra. An alternative to EM for Gaussian mixture mod-els: Batch and stochastic Riemannian optimization. Mathematical Program-ming, pages 1–37, 2019.

[HU17] S. Hosseini and A. Uschmajew. A Riemannian gradient sampling algo-rithm for nonsmooth optimization on manifolds. SIAM Journal on Opti-mization, 27(1):173–189, 2017.

[Hua13] Wen Huang. Optimization algorithms on Riemannian manifolds with applica-tions. PhD thesis, Florida State University, 2013.

[HUL01] J.-B. Hiriart-Urruty and C. Lemaréchal. Fundamentals of convex analysis.Grundlehren Text Editions. Springer-Verlag Berlin Heidelberg, 1 edition,2001.

[IEE08] IEEE. Ieee standard for floating-point arithmetic. IEEE Std 754-2008,pages 1–70, 2008.

[JBAS10] M. Journée, F. Bach, P.-A. Absil, and R. Sepulchre. Low-rank optimizationon the cone of positive semidefinite matrices. SIAM Journal on Optimiza-tion, 20(5):2327–2351, 2010.

[JD15] B. Jiang and Y.-H. Dai. A framework of constraint preserving updateschemes for optimization on Stiefel manifold. Mathematical Programming,153(2):535–575, 2015.

Page 302: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

302 an introduction to optimization on smooth manifolds

[JMM19] P. Jawanpuria, M. Meghwanshi, and B. Mishra. Low-rank approxima-tions of hyperbolic embeddings. 2019 IEEE 58th Conference on Decisionand Control (CDC), Dec 2019.

[JNRS10] M. Journée, Y. Nesterov, P. Richtárik, and R. Sepulchre. Generalizedpower method for sparse principal component analysis. The Journal ofMachine Learning Research, 11:517–553, 2010.

[KGB16] A. Kovnatsky, K. Glashoff, and M.M. Bronstein. MADMM: A Generic Al-gorithm for Non-smooth Optimization on Manifolds, pages 680–696. SpringerInternational Publishing, Cham, 2016.

[KMU+19] V. Khrulkov, L. Mirvakhabova, E. Ustinova, I. Oseledets, and V. Lempit-

sky. Hyperbolic image embeddings. arXiv 1904.02239, 2019.

[KN63] S. Kobayashi and K. Nomizu. Foundations of differential geometry, Vol. I.John Wiley and Sons, 1963.

[KSM18] H. Kasai, H. Sato, and B. Mishra. Riemannian stochastic recursive gra-dient algorithm. In J. Dy and A. Krause, editors, Proceedings of the 35thInternational Conference on Machine Learning, volume 80 of Proceedings ofMachine Learning Research, pages 2516–2524, Stockholmsmassan, Stock-holm Sweden, 10–15 Jul 2018. PMLR.

[KSV14] D. Kressner, M. Steinlechner, and B. Vandereycken. Low-rank tensorcompletion by Riemannian optimization. BIT Numerical Mathematics,54(2):447–468, Jun 2014.

[Lag07] C. Lageman. Pointwise convergence of gradient-like systems. Mathema-tische Nachrichten, 280(13–14):1543–1558, October 2007.

[LB19] C. Liu and N. Boumal. Simple algorithms for optimization on Rieman-nian manifolds with constraints. Applied Mathematics and Optimization,2019.

[Lee12] J.M. Lee. Introduction to Smooth Manifolds, volume 218 of Graduate Texts inMathematics. Springer-Verlag New York, 2nd edition, 2012.

[Lee18] J.M. Lee. Introduction to Riemannian Manifolds, volume 176 of GraduateTexts in Mathematics. Springer, 2nd edition, 2018.

[Lic79] A. Lichnewsky. Une méthode de gradient conjugué sur des variétés: Ap-plication à certains problèmes de valeurs propres non linéaires. NumericalFunctional Analysis and Optimization, 1(5):515–560, 1979.

[Łoj65] S. Łojasiewicz. Ensembles semi-analytiques. Lecture Notes IHES (Bures-sur-Yvette), 1965.

[Lue72] D.G. Luenberger. The gradient projection method along geodesics. Man-agement Science, 18(11):620–631, 1972.

[MA20] E. Massart and P.-A. Absil. Quotient geometry with simple geodesics forthe manifold of fixed-rank positive-semidefinite matrices. SIAM Journalon Matrix Analysis and Applications, 41(1):171–198, 2020.

[Man02] J.H. Manton. Optimization algorithms exploiting unitary constraints.IEEE Transactions on Signal Processing, 50(3):635–650, March 2002.

[Mat96] R. Mathias. A chain rule for matrix functions and applications. SIAMJournal on Matrix Analysis and Applications, 17(3):610–620, 1996.

[Mic08] P.W. Michor. Topics in differential geometry, volume 93. American Mathe-matical Society, 2008.

[MMP18] L. Malagò, L. Montrucchio, and G. Pistone. Wasserstein Riemannian ge-ometry of positive definite matrices, 2018.

Page 303: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

bibliography 303

[Moa03] M. Moakher. Means and averaging in the group of rotations. SIAM Journalon Matrix Analysis and Applications, 24(1):1–16, 2003.

[Moa05] M. Moakher. A differential geometric approach to the geometric meanof symmetric positive-definite matrices. SIAM J. Matrix Anal. Appl.,26(3):735–747, March 2005.

[MS16] B. Mishra and R. Sepulchre. Riemannian preconditioning. SIAM Journalon Optimization, 26(1):635–660, 2016.

[MT11] M. McCoy and J.A. Tropp. Two proposals for robust PCA using semidef-inite programming. Electronic Journal of Statistics, 5:1123–1160, 2011.

[MV13] B. Mishra and B. Vandereycken. A Riemannian approach to low-rankalgebraic Riccati equations. arXiv preprint arXiv:1312.4883, 2013.

[NK17] M. Nickel and D. Kiela. Poincaré embeddings for learning hierarchi-cal representations. In I. Guyon, U. V. Luxburg, S. Bengio, H. Wallach,R. Fergus, S. Vishwanathan, and R. Garnett, editors, Advances in Neu-ral Information Processing Systems 30, pages 6338–6347. Curran Associates,Inc., 2017.

[Nof17] V. Noferini. A formula for the Fréchet derivative of a generalized matrixfunction. SIAM Journal on Matrix Analysis and Applications, 38(2):434–457,2017.

[NSAY+19] V.A. Nguyen, S. Shafieezadeh-Abadeh, M.-C. Yue, D. Kuhn, and

W. Wiesemann. Calculating optimistic likelihoods using (geodesically)convex optimization, 2019.

[NW06] J. Nocedal and S. Wright. Numerical optimization. Springer Series in Oper-ations Research and Financial Engineering. Springer Science & BusinessMedia, 2 edition, 2006.

[O’N83] B. O’Neill. Semi-Riemannian geometry: with applications to relativity, volume103. Academic Press, 1983.

[Pat98] G. Pataki. On the rank of extreme matrices in semidefinite programs andthe multiplicity of optimal eigenvalues. Mathematics of operations research,23(2):339–358, 1998.

[Pea94] B.A. Pearlmutter. Fast exact multiplication by the Hessian. Neural Com-putation, 6:147–160, 1994.

[Pet06] P. Petersen. Riemannian geometry, volume 171 of Graduate Texts in Mathe-matics. Springer, 2 edition, 2006.

[PJB18] T. Pumir, S. Jelassi, and N. Boumal. Smoothed analysis of the low-rankapproach for smooth semidefinite programs. In S. Bengio, H. Wallach,H. Larochelle, K. Grauman, N. Cesa-Bianchi, and R. Garnett, editors, Ad-vances in Neural Information Processing Systems 31, pages 2283–2292. Cur-ran Associates, Inc., 2018.

[QGA10a] C. Qi, K.A. Gallivan, and P.-A. Absil. An efficient BFGS algorithm for Rie-mannian optimization. In Proceedings of the 19th International Symposiumon Mathematical Theory of Network and Systems (MTNS 2010), volume 1,pages 2221–2227, 2010.

[QGA10b] C. Qi, K.A. Gallivan, and P.A. Absil. Riemannian BFGS algorithm withapplications. Recent Advances in Optimization and its Applications in Engi-neering, pages 183–192, 2010.

[Qi11] C. Qi. Numerical optimization methods on Riemannian manifolds. PhD thesis,Florida State University, Tallahassee, FL, 2011.

Page 304: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

304 an introduction to optimization on smooth manifolds

[QO04] E.A. Quiroz and P.R. Oliveira. New results on linear optimization throughdiagonal metrics and Riemannian geometry tools. Technical report, Tech-nical Report ES-654/04, PESC COPPE, Federal University of Rio deJaneiro, 2004.

[Rap91] T. Rapcsák. Geodesic convexity in nonlinear optimization. Journal of Op-timization Theory and Applications, 69(1):169–183, Apr 1991.

[Rap97] T. Rapcsák. Smooth Nonlinear Optimization in Rn, volume 19 of NonconvexOptimization and Its Applications. Springer, 1997.

[Roc70] R.T. Rockafellar. Convex analysis. Princeton University Press, Princeton,NJ, 1970.

[RW12] W. Ring and B. Wirth. Optimization methods on Riemannian mani-folds and their application to shape space. SIAM Journal on Optimization,22(2):596–627, 2012.

[Sak96] T. Sakai. Riemannian geometry, volume 149. American Mathematical Soci-ety, 1996.

[Sat16] H. Sato. A Dai–Yuan-type Riemannian conjugate gradient method withthe weak Wolfe conditions. Computational Optimization and Applications,64(1):101–118, 2016.

[SFF19] Y. Sun, N. Flammarion, and M. Fazel. Escaping from saddle points onRiemannian manifolds. In H. Wallach, H. Larochelle, A. Beygelzimer,F. d’Alché Buc, E. Fox, and R. Garnett, editors, Advances in Neural Infor-mation Processing Systems 32, pages 7276–7286. Curran Associates, Inc.,2019.

[SH15] S. Sra and R. Hosseini. Conic geometric optimization on the manifoldof positive definite matrices. SIAM Journal on Optimization, 25(1):713–739,2015.

[SI14] H. Sato and T. Iwai. Optimization algorithms on the Grassmann manifoldwith application to matrix eigenvalue problems. Japan Journal of Industrialand Applied Mathematics, 31(2):355–400, April 2014.

[SI15] H. Sato and T. Iwai. A new, globally convergent Riemannian conjugategradient method. Optimization, 64(4):1011–1031, 2015.

[SKM19] H. Sato, H. Kasai, and B. Mishra. Riemannian stochastic variance reducedgradient algorithm with retraction and vector transport. SIAM Journal onOptimization, 29(2):1444–1472, 2019.

[Smi94] S.T. Smith. Optimization techniques on Riemannian manifolds. FieldsInstitute Communications, 3(3):113–135, 1994.

[SQW17] J. Sun, Q. Qu, and J. Wright. Complete dictionary recovery over thesphere II: Recovery by Riemannian trust-region method. IEEE Transactionson Information Theory, 63(2):885–914, Feb 2017.

[Sra16] S. Sra. On the matrix square root via geometric optimization. ElectronicJournal of Linear Algebra, 31(1):433–443, Jul 2016.

[Tak11] A. Takatsu. Wasserstein geometry of Gaussian measures. Osaka Journalof Mathematics, 48(4):1005–1026, 2011.

[TB97] L.N. Trefethen and D. Bau. Numerical linear algebra. Society for Industrialand Applied Mathematics, 1997.

[TD14] R. Tron and K. Daniilidis. On the quotient representation for the essentialmanifold. In 2014 IEEE Conference on Computer Vision and Pattern Recogni-tion. IEEE, June 2014.

Page 305: An introduction to optimization on smooth manifoldsweb.math.princeton.edu/~nboumal/book/IntroOptimManifolds... · 2020-05-25 · 2nd edition, 2012 4 J.M. Lee. Introduction to Riemannian

bibliography 305

[TFBJ18] N. Tripuraneni, N. Flammarion, F. Bach, and M.I. Jordan. Averagingstochastic gradient descent on Riemannian manifolds. In Proceedings ofThe 31st Conference on Learning Theory, COLT, 2018.

[TKW16] J. Townsend, N. Koep, and S. Weichwald. PyManopt: a Python toolboxfor optimization on manifolds using automatic differentiation. Journal ofMachine Learning Research, 17(137):1–5, 2016.

[Udr94] C. Udriste. Convex functions and optimization methods on Riemannian man-ifolds, volume 297 of Mathematics and its applications. Kluwer AcademicPublishers, 1994.

[UV13] A. Uschmajew and B. Vandereycken. The geometry of algorithms usinghierarchical tensors. Linear Algebra and its Applications, 439(1):133–166,July 2013.

[Van10] B. Vandereycken. Riemannian and multilevel optimization for rank-constrained matrix problems. Faculty of Engineering, Katholieke UniversiteitLeuven, 2010.

[Van13] B. Vandereycken. Low-rank matrix completion by Riemannian optimiza-tion. SIAM Journal on Optimization, 23(2):1214–1236, 2013.

[Vav91] S.A. Vavasis. Nonlinear optimization: complexity issues. Oxford UniversityPress, Inc., 1991.

[Vis18] N.K. Vishnoi. Geodesic convex optimization: Differentiation on mani-folds, geodesics, and convexity. arXiv 1806.06373, 2018.

[Wie12] A. Wiesel. Geodesic convexity and covariance estimation. IEEE Transac-tions on Signal Processing, 60(12):6182–6189, Dec 2012.

[WW18] I. Waldspurger and A. Waters. Rank optimality for the Burer-Monteirofactorization. preprint arXiv:1812.03046, 2018.

[WY13] Z. Wen and W. Yin. A feasible method for optimization with orthogonal-ity constraints. Mathematical Programming, 142(1–2):397–434, 2013.

[YP06] N. Yurii and B.T. Polyak. Cubic regularization of Newton method and itsglobal performance. Mathematical Programming, 108(1):177–205, 2006.

[YZS14] W.H. Yang, L.-H. Zhang, and R. Song. Optimality conditions for the non-linear programming problems on Riemannian manifolds. Pacific Journalof Optimization, 10(2):415–434, 2014.

[ZHS16] P.H. Zadeh, R. Hosseini, and S. Sra. Geometric mean metric learning. InProceedings of the 33rd International Conference on International Conference onMachine Learning, ICML, pages 2464–2471. JMLR.org, 2016.

[ZRS16a] H. Zhang, S.J. Reddi, and S. Sra. Fast stochastic optimization on Rieman-nian manifolds. arXiv preprint arXiv:1605.07147, 2016.

[ZRS16b] H. Zhang, S.J. Reddi, and S. Sra. Riemannian SVRG: Fast stochastic op-timization on Riemannian manifolds. In D. D. Lee, M. Sugiyama, U. V.Luxburg, I. Guyon, and R. Garnett, editors, Advances in Neural InformationProcessing Systems 29, pages 4592–4600. Curran Associates, Inc., 2016.

[ZS16] H. Zhang and S. Sra. First-order methods for geodesically convex opti-mization. In Conference on Learning Theory, pages 1617–1638, 2016.

[ZS18] H. Zhang and S. Sra. An estimate sequence for geodesically convex opti-mization. In S. Bubeck, V. Perchet, and P. Rigollet, editors, Proceedings ofthe 31st Conference On Learning Theory, volume 75 of Proceedings of MachineLearning Research, pages 1703–1723. PMLR, 06–09 Jul 2018.

[ZZ18] J. Zhang and S. Zhang. A cubic regularized Newton’s method over Rie-mannian manifolds. arXiv preprint arXiv:1805.05565, 2018.