Skip to content
The Lumenary
First-year graduateGraduate 150 min

Riemannian geometry

Curved spaces studied from the inside — how lengths and angles on each tangent space determine geodesics, curvature, and even the topology of the whole space.

Formally verified · 11 LeanComputationally tested · 2 PythonAI-drafted · awaiting human reviewMathematically reviewed: Awaiting human review
MotivationH

Measuring curvature from the inside

In the 1820s Carl Friedrich Gauss led a geodetic survey of the Kingdom of Hanover, triangulating the land with theodolites and measuring the angles of large triangles. Out of that work came a startling theorem: a two-dimensional creature living on a surface, measuring only lengths and angles within the surface, can determine its curvature. Gauss called it the Theorema Egregium — the remarkable theorem. A sheet of paper can be rolled into a cylinder without stretching, so the cylinder is "flat" to its inhabitants; no piece of a sphere can be flattened without distortion, which is why every map of the Earth distorts something.

Riemann turned this into a programme (1854): describe a space of any dimension by an inner product on each tangent space — a way to measure infinitesimal lengths and angles — and derive everything else from it. Sixty years later Einstein used exactly this geometry, in its Lorentzian form, to describe gravity; today the equations of general relativity are corrected for in every GPS receiver. In pure mathematics, Riemannian geometry links local information (curvature) to global information (topology): the total curvature of a closed surface is 2π2\pi times its Euler characteristic, and a complete manifold whose Ricci curvature is bounded below by a positive constant must be compact.

This lesson assumes smooth manifolds and the classical differential geometry of curves and surfaces. For the Gauss–Bonnet theorem it uses the Poincaré–Hopf theorem from differential topology.

IntuitionH

Straight lines and their spreading

On a curved surface there are no straight lines, but there are geodesics: curves that are "as straight as possible", along which an ant walking forward never turns left or right. On a sphere they are the great circles. Two ants that leave the north pole walking straight ahead along different meridians move apart at first, and then — because the sphere curves — come together again at the south pole. On a saddle-shaped surface nearby geodesics spread apart faster than in the plane. That rate of spreading is curvature: positive curvature focuses geodesics, negative curvature disperses them.

A second picture: carry a spear along a closed path, always keeping it "parallel to itself" — never rotating it within the surface. In the plane it returns pointing the same way. On the sphere, carry it from the north pole down a meridian to the equator, along the equator a quarter of the way round, and back up to the pole: it returns rotated by 90∘90^\circ, which is the area of the triangle you walked round (it covers one eighth of a sphere of area 4π4\pi). Curvature is the infinitesimal rotation of parallel transport round small loops, and for geodesic triangles the total turn equals the angle excess α+β+γ−π\alpha + \beta + \gamma - \pi.

DefinitionsH

Metrics, connections, geodesics and curvature

Definition— Riemannian metric

A Riemannian metric gg on a smooth manifold MM is a choice of inner product gp=⟨⋅,⋅⟩pg_p = \langle\cdot,\cdot\rangle_p on each tangent space TpMT_pM, depending smoothly on pp: in a chart, g=∑i,jgij dxi dxjg = \sum_{i,j} g_{ij}\, dx^i\, dx^j with (gij)(g_{ij}) smooth, symmetric and positive definite. The length of a piecewise smooth curve is L(γ)=∫ab∣γ′(t)∣ dtL(\gamma) = \int_a^b |\gamma'(t)|\, dt, and the Riemannian distance d(p,q)d(p, q) is the infimum of lengths of curves from pp to qq; it is a metric inducing the manifold topology. An isometry is a diffeomorphism preserving gg.

Every smooth manifold admits Riemannian metrics (glue Euclidean metrics from charts with a partition of unity); a metric is extra structure, not something the manifold has automatically.

Definition— connection, Levi-Civita connection

An (affine) connection is a map (X,Y)↦∇XY(X, Y) \mapsto \nabla_X Y on vector fields that is C∞(M)C^\infty(M)-linear in XX, R\R-linear in YY, and satisfies the Leibniz rule ∇X(fY)=(Xf)Y+f∇XY\nabla_X(fY) = (Xf)Y + f\nabla_X Y. It is torsion-free if ∇XY−∇YX=[X,Y]\nabla_X Y - \nabla_Y X = [X, Y], and compatible with gg if X⟨Y,Z⟩=⟨∇XY,Z⟩+⟨Y,∇XZ⟩X\langle Y, Z\rangle = \langle \nabla_X Y, Z\rangle + \langle Y, \nabla_X Z\rangle. The Levi-Civita connection is a torsion-free connection compatible with gg. In coordinates ∇∂i∂j=∑kΓijk∂k\nabla_{\partial_i}\partial_j = \sum_k \Gamma^k_{ij}\partial_k, with Christoffel symbols Γijk\Gamma^k_{ij}.

Definition— parallel transport, geodesic, exponential map

A connection differentiates vector fields V(t)V(t) along a curve γ\gamma: DtV=∑k(V˙k+∑i,jΓijkγ˙iVj)∂kD_tV = \sum_k \big(\dot V^k + \sum_{i,j}\Gamma^k_{ij}\dot\gamma^i V^j\big)\partial_k. VV is parallel if DtV=0D_tV = 0; parallel transport along γ\gamma is a linear isometry between tangent spaces (for the Levi-Civita connection). A geodesic is a curve with Dtγ˙=0D_t\dot\gamma = 0, i.e.

γ¨k+∑i,jΓijk(γ) γ˙iγ˙j=0(k=1,…,n).\ddot\gamma^k + \sum_{i,j}\Gamma^k_{ij}(\gamma)\,\dot\gamma^i\dot\gamma^j = 0 \qquad (k = 1, \dots, n).

For v∈TpMv \in T_pM let γv\gamma_v be the geodesic with γv(0)=p\gamma_v(0) = p, γ˙v(0)=v\dot\gamma_v(0) = v; the exponential map is exp⁡p(v)=γv(1)\exp_p(v) = \gamma_v(1), defined near 0∈TpM0 \in T_pM.

Definition— curvature

The curvature tensor is R(X,Y)Z=∇X∇YZ−∇Y∇XZ−∇[X,Y]ZR(X, Y)Z = \nabla_X\nabla_Y Z - \nabla_Y\nabla_X Z - \nabla_{[X,Y]}Z; it is C∞(M)C^\infty(M)-linear in all three arguments, so RpR_p is a multilinear map on TpMT_pM. Write R(X,Y,Z,W)=⟨R(X,Y)Z,W⟩R(X, Y, Z, W) = \langle R(X, Y)Z, W\rangle. For a 22-plane σ⊆TpM\sigma \subseteq T_pM spanned by X,YX, Y, the sectional curvature is

K(σ)=R(X,Y,Y,X)∣X∣2∣Y∣2−⟨X,Y⟩2,K(\sigma) = \frac{R(X, Y, Y, X)}{|X|^2|Y|^2 - \langle X, Y\rangle^2},

independent of the basis. The Ricci curvature is Ric⁡(Y,Z)=∑iR(ei,Y,Z,ei)\operatorname{Ric}(Y, Z) = \sum_i R(e_i, Y, Z, e_i) for an orthonormal basis (ei)(e_i), so Ric⁡(v,v)=∑i≥2K(v,ei)\operatorname{Ric}(v, v) = \sum_{i \ge 2} K(v, e_i) for a unit vector v=e1v = e_1; the scalar curvature is ∑iRic⁡(ei,ei)\sum_i \operatorname{Ric}(e_i, e_i). On a surface all three carry the same information: the Gaussian curvature KK.

Definition— Jacobi field, conjugate point

A Jacobi field along a geodesic γ\gamma is a vector field JJ along γ\gamma satisfying the Jacobi equation Dt2J+R(J,γ˙)γ˙=0D_t^2 J + R(J, \dot\gamma)\dot\gamma = 0. Jacobi fields are exactly the variation fields of families of geodesics. A point γ(t0)\gamma(t_0) is conjugate to γ(0)\gamma(0) if a non-zero Jacobi field vanishes at both t=0t = 0 and t=t0t = t_0.

Worked examplesH

Model spaces and surfaces of revolution

Example— The three model geometries

  • Euclidean space Rn\R^n, g=∑(dxi)2g = \sum (dx^i)^2: all Γijk=0\Gamma^k_{ij} = 0, geodesics are straight lines, R=0R = 0.
  • The round sphere Sn⊂Rn+1S^n \subset \R^{n+1} with the induced metric: geodesics are great circles; sectional curvature ≡1\equiv 1. The sphere of radius rr has K≡1/r2K \equiv 1/r^2.
  • Hyperbolic space, for example the upper half-plane {(x,y):y>0}\{(x, y) : y > 0\} with g=(dx2+dy2)/y2g = (dx^2 + dy^2)/y^2. Its non-zero Christoffel symbols are Γxyx=Γyxx=−1/y\Gamma^x_{xy} = \Gamma^x_{yx} = -1/y, Γxxy=1/y\Gamma^y_{xx} = 1/y, Γyyy=−1/y\Gamma^y_{yy} = -1/y, so the geodesic equations are
x¨−2yx˙y˙=0,y¨+x˙2−y˙2y=0.\ddot x - \frac{2}{y}\dot x\dot y = 0, \qquad \ddot y + \frac{\dot x^2 - \dot y^2}{y} = 0 .

Vertical lines t↦(0,et)t \mapsto (0, e^t) and semicircles centred on the real axis, such as t↦(tanh⁡t,sech⁡t)t \mapsto (\tanh t, \operatorname{sech} t), are unit-speed geodesics (Lean checks the semicircle below), and K≡−1K \equiv -1.

In each model space the curvature tensor is R(X,Y)Z=k(⟨Y,Z⟩X−⟨X,Z⟩Y)R(X, Y)Z = k\big(\langle Y, Z\rangle X - \langle X, Z\rangle Y\big) with k=0,1,−1k = 0, 1, -1; then every sectional curvature is kk and Ric⁡=(n−1)k g\operatorname{Ric} = (n - 1)k\, g.

Example— Surfaces of revolution and Clairaut's relation

Rotating a unit-speed profile curve t↦(f(t),z(t))t \mapsto (f(t), z(t)), f>0f > 0, about the zz-axis gives the metric g=dt2+f(t)2 dθ2g = dt^2 + f(t)^2\, d\theta^2. Meridians (θ\theta constant) are geodesics; a parallel (t=t0t = t_0) is a geodesic exactly when f′(t0)=0f'(t_0) = 0 (the equator of a sphere, the outer and inner equators of a torus). The geodesic equation for θ\theta is θ¨+2(f′/f)t˙θ˙=0\ddot\theta + 2(f'/f)\dot t\dot\theta = 0, which says precisely that

dds(f2θ˙)=2ff′t˙θ˙+f2θ¨=0.\frac{d}{ds}\big(f^2\dot\theta\big) = 2ff'\dot t\dot\theta + f^2\ddot\theta = 0 .

For a unit-speed geodesic, fθ˙=cos⁡ψf\dot\theta = \cos\psi where ψ\psi is the angle with the parallel, so Clairaut's relation holds: fcos⁡ψf\cos\psi is constant along every geodesic. A geodesic can therefore never reach the region where ff is smaller than this constant — it turns back at the latitude where f=∣fcos⁡ψ∣f = |f\cos\psi|, as the second experiment shows on a torus.

Example— A flat torus and a flat cylinder

R2/Z2\R^2/\Z^2 with the metric induced from R2\R^2 is a flat torus: K≡0K \equiv 0, and its closed geodesics are the images of lines with rational slope. The cylinder S1×RS^1 \times \R is flat too — a rolled-up sheet of paper. The doughnut-shaped torus in R3\R^3 is diffeomorphic to the flat torus but not isometric to it: its curvature is K=cos⁡v/(r(R+rcos⁡v))K = \cos v/\big(r(R + r\cos v)\big), positive on the outside and negative on the inside.

ProofH

The fundamental theorem of Riemannian geometry

Theorem— Theorem 1 (Levi-Civita)

On every Riemannian manifold there is exactly one connection that is torsion-free and compatible with the metric. It is given by the Koszul formula

2⟨∇XY,Z⟩=X⟨Y,Z⟩+Y⟨Z,X⟩−Z⟨X,Y⟩−⟨Y,[X,Z]⟩−⟨X,[Y,Z]⟩+⟨Z,[X,Y]⟩,2\langle \nabla_X Y, Z\rangle = X\langle Y, Z\rangle + Y\langle Z, X\rangle - Z\langle X, Y\rangle - \langle Y, [X, Z]\rangle - \langle X, [Y, Z]\rangle + \langle Z, [X, Y]\rangle,

and in coordinates by Γijk=12∑lgkl(∂igjl+∂jgil−∂lgij)\Gamma^k_{ij} = \tfrac12 \sum_l g^{kl}\big(\partial_i g_{jl} + \partial_j g_{il} - \partial_l g_{ij}\big).

Proof

Uniqueness. Let ∇\nabla be torsion-free and compatible. Expand three instances of compatibility:

X⟨Y,Z⟩+Y⟨Z,X⟩−Z⟨X,Y⟩=⟨∇XY,Z⟩+⟨Y,∇XZ⟩+⟨∇YZ,X⟩+⟨Z,∇YX⟩−⟨∇ZX,Y⟩−⟨X,∇ZY⟩.X\langle Y, Z\rangle + Y\langle Z, X\rangle - Z\langle X, Y\rangle = \langle\nabla_X Y, Z\rangle + \langle Y, \nabla_X Z\rangle + \langle \nabla_Y Z, X\rangle + \langle Z, \nabla_Y X\rangle - \langle\nabla_Z X, Y\rangle - \langle X, \nabla_Z Y\rangle .

Use torsion-freeness in the form ∇XZ−∇ZX=[X,Z]\nabla_X Z - \nabla_Z X = [X, Z], ∇YZ−∇ZY=[Y,Z]\nabla_Y Z - \nabla_Z Y = [Y, Z] and ∇YX=∇XY−[X,Y]\nabla_Y X = \nabla_X Y - [X, Y]: the right-hand side becomes 2⟨∇XY,Z⟩+⟨Y,[X,Z]⟩+⟨X,[Y,Z]⟩−⟨Z,[X,Y]⟩2\langle\nabla_X Y, Z\rangle + \langle Y, [X, Z]\rangle + \langle X, [Y, Z]\rangle - \langle Z, [X, Y]\rangle, which is the Koszul formula. Its right-hand side does not involve ∇\nabla, and since the metric is non-degenerate, ⟨∇XY,Z⟩\langle \nabla_X Y, Z\rangle for all ZZ determines ∇XY\nabla_X Y. So there is at most one such connection.

Existence. Define ∇XY\nabla_X Y by the Koszul formula: one checks that the right-hand side is C∞(M)C^\infty(M)-linear in ZZ, so by non-degeneracy it defines a vector field ∇XY\nabla_X Y, and then that this is a connection, torsion-free and compatible — each a direct computation with the Leibniz rule [X,fY]=(Xf)Y+f[X,Y][X, fY] = (Xf)Y + f[X, Y]. Coordinates. For X=∂iX = \partial_i, Y=∂jY = \partial_j, Z=∂lZ = \partial_l all brackets vanish, leaving 2∑kΓijkgkl=∂igjl+∂jgil−∂lgij2\sum_k\Gamma^k_{ij}g_{kl} = \partial_i g_{jl} + \partial_j g_{il} - \partial_l g_{ij}; multiply by the inverse matrix gklg^{kl}. ∎

∎

For the half-plane, gij=y−2δijg_{ij} = y^{-2}\delta_{ij} and ∂ygii=−2y−3\partial_y g_{ii} = -2y^{-3}, which gives the Christoffel symbols listed in the examples; the first experiment computes them symbolically.

ProofH

Geodesics, the exponential map and completeness

Geodesics are solutions of a second-order ODE, so for each pp and v∈TpMv \in T_pM there is a unique maximal geodesic γv\gamma_v, and γcv(t)=γv(ct)\gamma_{cv}(t) = \gamma_v(ct). The exponential map is smooth near 00 with d(exp⁡p)0=idd(\exp_p)_0 = \mathrm{id}, so by the inverse function theorem it is a diffeomorphism from a ball Bε(0)⊂TpMB_\varepsilon(0) \subset T_pM onto a normal neighbourhood of pp.

Theorem— Theorem 2 (geodesics minimise locally; stated)

(Gauss lemma) Radial geodesics from pp meet the geodesic spheres exp⁡p(∂Br(0))\exp_p(\partial B_r(0)) orthogonally. Consequently, if exp⁡p\exp_p is a diffeomorphism on Bε(0)B_\varepsilon(0), then for ∣v∣<ε|v| < \varepsilon the radial geodesic t↦exp⁡p(tv)t \mapsto \exp_p(tv), 0≤t≤10 \le t \le 1, is the unique shortest curve (up to reparametrisation) from pp to exp⁡p(v)\exp_p(v). Conversely, every length-minimising curve parametrised by arc length is a geodesic.

(Proofs: do Carmo, Chapter 3; Lee, Introduction to Riemannian Manifolds, Chapter 6.) Locally, then, geodesics are shortest paths. Globally they need not be: a great-circle arc of length greater than π\pi on the unit sphere is a geodesic, but the complementary arc is shorter. The obstruction is the conjugate point at distance π\pi (Theorem 5 below).

Theorem— Theorem 3 (Hopf–Rinow; stated)

For a connected Riemannian manifold MM the following are equivalent: (a) (M,d)(M, d) is a complete metric space; (b) every geodesic is defined for all time; (c) exp⁡p\exp_p is defined on all of TpMT_pM for some pp; (d) closed bounded subsets of MM are compact. If they hold, any two points of MM are joined by a geodesic of length d(p,q)d(p, q).

(Proof: do Carmo, Chapter 7.) Compact manifolds are complete. R2∖{0}\R^2 \setminus \{0\} is not: the points (1,0)(1, 0) and (−1,0)(-1, 0) have distance 22, but no curve of length 22 joins them.

ProofH

The curvature tensor

Theorem— Theorem 4 (symmetries of the curvature tensor)

For all X,Y,Z,WX, Y, Z, W: (i) R(X,Y,Z,W)=−R(Y,X,Z,W)R(X,Y,Z,W) = -R(Y,X,Z,W); (ii) R(X,Y,Z,W)=−R(X,Y,W,Z)R(X,Y,Z,W) = -R(X,Y,W,Z); (iii) R(X,Y,Z,W)+R(Y,Z,X,W)+R(Z,X,Y,W)=0R(X,Y,Z,W) + R(Y,Z,X,W) + R(Z,X,Y,W) = 0 (first Bianchi identity); and (iv) R(X,Y,Z,W)=R(Z,W,X,Y)R(X,Y,Z,W) = R(Z,W,X,Y).

Proof

(i) is clear from the definition. (ii) is metric compatibility: it suffices to show R(X,Y,Z,Z)=0R(X, Y, Z, Z) = 0, and XY⟨Z,Z⟩=2X⟨∇YZ,Z⟩=2⟨∇X∇YZ,Z⟩+2⟨∇YZ,∇XZ⟩XY\langle Z, Z\rangle = 2X\langle\nabla_Y Z, Z\rangle = 2\langle\nabla_X\nabla_Y Z, Z\rangle + 2\langle \nabla_Y Z, \nabla_X Z\rangle; subtract the same with X,YX, Y exchanged and [X,Y]⟨Z,Z⟩=2⟨∇[X,Y]Z,Z⟩[X, Y]\langle Z, Z\rangle = 2\langle\nabla_{[X,Y]}Z, Z\rangle to get 0=(XY−YX−[X,Y])⟨Z,Z⟩=2R(X,Y,Z,Z)0 = (XY - YX - [X,Y])\langle Z, Z\rangle = 2R(X, Y, Z, Z). (iii) For coordinate fields (all brackets 00) the cyclic sum is ∇X(∇YZ−∇ZY)+∇Y(∇ZX−∇XZ)+∇Z(∇XY−∇YX)=0\nabla_X(\nabla_Y Z - \nabla_Z Y) + \nabla_Y(\nabla_Z X - \nabla_X Z) + \nabla_Z(\nabla_X Y - \nabla_Y X) = 0 by torsion-freeness, and RR is tensorial. (iv) follows from (i)–(iii) alone: write the Bianchi identity (iii) for the four cyclic arrangements (X,Y,Z,W)(X,Y,Z,W), (Y,Z,W,X)(Y,Z,W,X), (Z,W,X,Y)(Z,W,X,Y), (W,X,Y,Z)(W,X,Y,Z) and add them; using (i) and (ii), eight of the twelve terms cancel in pairs and the rest give 2R(X,Y,Z,W)−2R(Z,W,X,Y)=02R(X,Y,Z,W) - 2R(Z,W,X,Y) = 0. ∎

∎

Step (iv) is purely algebraic, and Lean checks it below for an arbitrary function RR satisfying (i)–(iii) — no linearity needed. By (i)–(iv), the quadratic form (X,Y)↦R(X,Y,Y,X)(X, Y) \mapsto R(X, Y, Y, X) determines RR, so the sectional curvatures determine the curvature tensor. In particular, if all sectional curvatures at pp equal kk, then R(X,Y,Z,W)=k(⟨Y,Z⟩⟨X,W⟩−⟨X,Z⟩⟨Y,W⟩)R(X,Y,Z,W) = k\big(\langle Y, Z\rangle\langle X, W\rangle - \langle X, Z\rangle\langle Y, W\rangle\big) and Ric⁡=(n−1)k g\operatorname{Ric} = (n-1)k\, g.

Curvature of a surface from an orthonormal frame. Let (e1,e2)(e_1, e_2) be a positively oriented orthonormal frame on an open set of an oriented surface, with dual coframe (θ1,θ2)(\theta^1, \theta^2), and let ω(X)=⟨∇Xe1,e2⟩\omega(X) = \langle\nabla_X e_1, e_2\rangle be its connection 11-form; then ∇e1=ω⊗e2\nabla e_1 = \omega\otimes e_2 and ∇e2=−ω⊗e1\nabla e_2 = -\omega\otimes e_1.

Theorem— Lemma (structure equation)

dω=−K dAd\omega = -K\, dA, where dA=θ1∧θ2dA = \theta^1\wedge\theta^2 is the area form.

Proof

dω(X,Y)=Xω(Y)−Yω(X)−ω([X,Y])d\omega(X, Y) = X\omega(Y) - Y\omega(X) - \omega([X, Y]), and Xω(Y)=X⟨∇Ye1,e2⟩=⟨∇X∇Ye1,e2⟩+⟨∇Ye1,∇Xe2⟩X\omega(Y) = X\langle\nabla_Y e_1, e_2\rangle = \langle\nabla_X\nabla_Y e_1, e_2\rangle + \langle\nabla_Y e_1, \nabla_X e_2\rangle. The last term is ⟨ω(Y)e2,−ω(X)e1⟩=0\langle \omega(Y)e_2, -\omega(X)e_1\rangle = 0. Hence dω(X,Y)=⟨R(X,Y)e1,e2⟩d\omega(X, Y) = \langle R(X, Y)e_1, e_2\rangle, and dω(e1,e2)=R(e1,e2,e1,e2)=−R(e1,e2,e2,e1)=−Kd\omega(e_1, e_2) = R(e_1, e_2, e_1, e_2) = -R(e_1, e_2, e_2, e_1) = -K. ∎

∎

Example— Curvature of dt² + f(t)² dθ²

Take e1=∂te_1 = \partial_t, e2=f−1∂θe_2 = f^{-1}\partial_\theta, so θ1=dt\theta^1 = dt, θ2=f dθ\theta^2 = f\,d\theta. From dθ1=0d\theta^1 = 0 and dθ2=f′ dt∧dθd\theta^2 = f'\,dt\wedge d\theta (Cartan's first structure equations dθ1=ω∧θ2d\theta^1 = \omega\wedge\theta^2, dθ2=−ω∧θ1d\theta^2 = -\omega\wedge\theta^1, which encode torsion-freeness) we find ω=f′ dθ\omega = f'\, d\theta. Then dω=f′′ dt∧dθ=−Kf dt∧dθd\omega = f''\, dt\wedge d\theta = -K f\, dt \wedge d\theta, so

K=−f′′f.K = -\frac{f''}{f}.

f=sin⁡tf = \sin t (round sphere) gives K=1K = 1; f=tf = t (the plane in polar coordinates) gives 00; f=sinh⁡tf = \sinh t (hyperbolic plane in polar coordinates) gives −1-1. For a conformal metric e2φ(dx2+dy2)e^{2\varphi}(dx^2 + dy^2) a similar computation gives K=−e−2φΔφK = -e^{-2\varphi}\Delta\varphi; for the half-plane, φ=−log⁡y\varphi = -\log y and K=−y2⋅y−2=−1K = -y^2 \cdot y^{-2} = -1.

Both formulas use only the metric, so the Gaussian curvature is intrinsic. For a surface in R3\R^3, Gauss's extrinsic curvature (the determinant of the shape operator) equals this KK: that identification is the Theorema Egregium.

ProofH

Jacobi fields and conjugate points

If γs\gamma_s is a smooth family of geodesics, the variation field J=∂sγs∣s=0J = \partial_s\gamma_s|_{s=0} satisfies Dt2J=DtDsγ˙=DsDtγ˙+R(γ˙,J)γ˙=−R(J,γ˙)γ˙D_t^2J = D_tD_s\dot\gamma = D_sD_t\dot\gamma + R(\dot\gamma, J)\dot\gamma = -R(J, \dot\gamma)\dot\gamma, the Jacobi equation. So Jacobi fields describe how nearby geodesics spread.

Example— Constant curvature

Let γ\gamma be a unit-speed geodesic in a space of constant curvature kk, E(t)E(t) a parallel unit field orthogonal to γ˙\dot\gamma, and J=u(t)E(t)J = u(t)E(t). Then R(J,γ˙)γ˙=k u ER(J, \dot\gamma)\dot\gamma = k\,u\,E, and the Jacobi equation is u′′+ku=0u'' + ku = 0. With u(0)=0u(0) = 0, u′(0)=1u'(0) = 1:

u(t)=sin⁡(k t)k (k>0),u(t)=t (k=0),u(t)=sinh⁡(−k t)−k (k<0).u(t) = \frac{\sin(\sqrt k\, t)}{\sqrt k}\ (k > 0), \qquad u(t) = t\ (k = 0), \qquad u(t) = \frac{\sinh(\sqrt{-k}\, t)}{\sqrt{-k}}\ (k < 0).

For k>0k > 0 the Jacobi field vanishes again at t=π/kt = \pi/\sqrt k: the point γ(π/k)\gamma(\pi/\sqrt k) is conjugate to γ(0)\gamma(0) — on the sphere of radius 1/k1/\sqrt k, the antipode. For k≤0k \le 0 there are no conjugate points.

Theorem— Theorem 5 (Jacobi; stated)

A geodesic that contains a point conjugate to its starting point in its interior is not locally length-minimising: some nearby curve with the same endpoints is shorter.

(Proof via the index form: do Carmo, Chapter 5, or Milnor, Morse Theory, §15.) For the unit sphere this explains the failure of great-circle arcs longer than π\pi. In the other direction, Cartan–Hadamard: if MM is complete, simply connected and has K≤0K \le 0, then exp⁡p:TpM→M\exp_p : T_pM \to M is a diffeomorphism, so MM is diffeomorphic to Rn\R^n.

ProofH

The Gauss–Bonnet theorem

Two classical consequences of the structure equation, for a geodesic triangle TT (three geodesic sides, interior angles α,β,γ\alpha, \beta, \gamma) contained in a disc on an oriented surface:

∫TK dA=α+β+γ−π(local Gauss–Bonnet).\int_T K\, dA = \alpha + \beta + \gamma - \pi \qquad \text{(local Gauss–Bonnet)}.

(Sketch: ∫TK dA=−∮∂Tω\int_T K\, dA = -\oint_{\partial T}\omega by Stokes; along a unit-speed boundary curve making angle ϕ\phi with e1e_1, ω(c˙)=κg−ϕ˙\omega(\dot c) = \kappa_g - \dot\phi with κg=0\kappa_g = 0 on geodesic sides; and the total turning of the tangent round ∂T\partial T, ∮dϕ\oint d\phi plus the exterior angles π−α\pi - \alpha, π−β\pi - \beta, π−γ\pi - \gamma, is 2π2\pi by Hopf's Umlaufsatz.) The widget below measures both sides on the sphere and in the hyperbolic plane. The global theorem needs no triangulation if we use a vector field.

Theorem— Theorem 6 (Gauss–Bonnet)

For every closed oriented Riemannian 22-manifold MM,

∫MK dA=2π χ(M).\int_M K\, dA = 2\pi\,\chi(M).

Proof

(Following Chern.) Choose a smooth vector field XX on MM with finitely many zeros p1,…,pkp_1, \dots, p_k (for example the gradient of a Morse function). On M∗=M∖{p1,…,pk}M^* = M \setminus \{p_1, \dots, p_k\} let e1=X/∣X∣e_1 = X/|X|, let e2e_2 complete it to a positive orthonormal frame, and let ω\omega be the connection form, so dω=−K dAd\omega = -K\, dA on M∗M^*. Let BiB_i be small closed geodesic discs of radius ε\varepsilon round pip_i, and Mε=M∖⋃iint⁡BiM_\varepsilon = M \setminus \bigcup_i \operatorname{int} B_i. Its boundary is ⋃i∂Bi\bigcup_i \partial B_i with the orientation opposite to that of ∂Bi\partial B_i as the boundary of BiB_i. By Stokes,

∫MεK dA=−∫Mεdω=−∫∂Mεω=∑i=1k∮∂Biω,\int_{M_\varepsilon} K\, dA = -\int_{M_\varepsilon} d\omega = -\int_{\partial M_\varepsilon}\omega = \sum_{i=1}^k \oint_{\partial B_i}\omega ,

each circle now traversed anticlockwise. On the disc BiB_i choose any positive orthonormal frame (f1,f2)(f_1, f_2), with connection form ωf\omega_f, smooth on all of BiB_i. On Bi∖{pi}B_i \setminus \{p_i\} write e1=cos⁡ϕ f1+sin⁡ϕ f2e_1 = \cos\phi\, f_1 + \sin\phi\, f_2 with a locally defined angle ϕ\phi. Differentiating, ∇e1=(ωf+dϕ)⊗e2\nabla e_1 = (\omega_f + d\phi)\otimes e_2, so ω=ωf+dϕ\omega = \omega_f + d\phi. As we go once round ∂Bi\partial B_i, ϕ\phi increases by 2π2\pi times the number of turns of XX relative to the frame ff, which is 2πind⁡pi(X)2\pi\operatorname{ind}_{p_i}(X). Hence

∮∂Biω=∮∂Biωf+2πind⁡pi(X).\oint_{\partial B_i}\omega = \oint_{\partial B_i}\omega_f + 2\pi\operatorname{ind}_{p_i}(X).

As ε→0\varepsilon \to 0, ∮∂Biωf→0\oint_{\partial B_i}\omega_f \to 0 (a smooth form integrated over a curve of length →0\to 0) and ∫MεK dA→∫MK dA\int_{M_\varepsilon} K\, dA \to \int_M K\, dA. Therefore ∫MK dA=2π∑iind⁡pi(X)=2πχ(M)\int_M K\, dA = 2\pi\sum_i\operatorname{ind}_{p_i}(X) = 2\pi\chi(M) by the Poincaré–Hopf theorem. ∎

∎

Consequences: a metric on the sphere must have positive curvature somewhere, and a metric on a surface of genus g≥2g \ge 2 must have negative curvature somewhere; a closed orientable surface with K>0K > 0 everywhere is a sphere, and one with K≡0K \equiv 0 is a torus. The left-hand side is local geometry, the right-hand side global topology. Chern's generalisation (1944) expresses the Euler characteristic of a closed even-dimensional manifold as the integral of a polynomial in the curvature (the Pfaffian).

ProofH

The Bonnet–Myers theorem

We need one more tool. For a geodesic γ:[0,L]→M\gamma : [0, L] \to M with unit speed and a proper variation γs\gamma_s (endpoints fixed) with variation field V⊥γ˙V \perp \dot\gamma, the energy E(c)=12∫0L∣c˙∣2 dtE(c) = \frac12\int_0^L |\dot c|^2\, dt satisfies the second variation formula (do Carmo, Chapter 9):

d2ds2∣s=0E(γs)=∫0L(∣DtV∣2−R(V,γ˙,γ˙,V)) dt.\frac{d^2}{ds^2}\Big|_{s=0} E(\gamma_s) = \int_0^L \Big( |D_tV|^2 - R(V, \dot\gamma, \dot\gamma, V)\Big)\, dt .

Theorem— Theorem 7 (Bonnet–Myers)

Let MM be a complete connected Riemannian nn-manifold (n≥2n \ge 2) with Ric⁡≥(n−1)k g\operatorname{Ric} \ge (n-1)k\, g for a constant k>0k > 0. Then diam⁡M≤π/k\operatorname{diam} M \le \pi/\sqrt k; hence MM is compact, and its fundamental group is finite.

Proof

Let p,q∈Mp, q \in M. By Hopf–Rinow there is a unit-speed geodesic γ:[0,L]→M\gamma : [0, L] \to M from pp to qq with L=d(p,q)L = d(p, q). Suppose L>π/kL > \pi/\sqrt k. Choose parallel fields E1,…,En−1E_1, \dots, E_{n-1} along γ\gamma that together with γ˙\dot\gamma are orthonormal, and let Vi(t)=sin⁡(πt/L)Ei(t)V_i(t) = \sin(\pi t/L)E_i(t), proper variation fields with DtVi=(π/L)cos⁡(πt/L)EiD_tV_i = (\pi/L)\cos(\pi t/L)E_i. Summing the second variations,

∑i=1n−1EVi′′(0)=∫0L((n−1)π2L2cos⁡2πtL−sin⁡2πtL Ric⁡(γ˙,γ˙))dt≤(n−1)∫0L(π2L2cos⁡2πtL−ksin⁡2πtL)dt.\sum_{i=1}^{n-1} E''_{V_i}(0) = \int_0^L \Big( (n-1)\frac{\pi^2}{L^2}\cos^2\frac{\pi t}{L} - \sin^2\frac{\pi t}{L}\,\operatorname{Ric}(\dot\gamma, \dot\gamma) \Big) dt \le (n - 1) \int_0^L \Big(\frac{\pi^2}{L^2}\cos^2\frac{\pi t}{L} - k\sin^2\frac{\pi t}{L}\Big) dt .

The last integral equals L2(π2L2−k)\frac{L}{2}\big(\frac{\pi^2}{L^2} - k\big), which is negative because L>π/kL > \pi/\sqrt k. So some EVi′′(0)<0E''_{V_i}(0) < 0, and the variation γs\gamma_s in the direction ViV_i has E(γs)<E(γ)E(\gamma_s) < E(\gamma) for small s≠0s \ne 0. By Cauchy–Schwarz L(γs)2≤2L E(γs)<2L E(γ)=L(γ)2L(\gamma_s)^2 \le 2L\,E(\gamma_s) < 2L\,E(\gamma) = L(\gamma)^2, so γs\gamma_s is a shorter curve from pp to qq, contradicting L=d(p,q)L = d(p, q). Hence d(p,q)≤π/kd(p, q) \le \pi/\sqrt k for all p,qp, q.

MM is complete and bounded, so it is compact by Hopf–Rinow (d). Its universal cover, with the pulled-back metric, is complete and satisfies the same Ricci bound, so it is compact too; a covering of a compact space by a compact space has finitely many sheets, so π1(M)\pi_1(M) is finite. ∎

∎

The bound is sharp: the unit sphere has Ric⁡=(n−1)g\operatorname{Ric} = (n-1)g and diameter π\pi (Cheng's theorem says it is the only case of equality). The hypothesis needs a positive lower bound: the paraboloid z=x2+y2z = x^2 + y^2 is complete with K>0K > 0 everywhere but K→0K \to 0 at infinity, and it is not compact. Bonnet–Myers is the first of the comparison theorems — Rauch, Toponogov, Bishop–Gromov — which compare a manifold with the model space of the same curvature bound.

Formal mathematicsF

Riemannian geometry in Lean and Mathlib

Mathlib's Riemannian geometry is young. It has Riemannian metrics on vector bundles, the class IsRiemannianManifold I M (the distance equals the infimum of lengths of C1C^1 paths), the Riemannian distance riemannianEDist and its basic properties, and the theorem that an inner product space is a Riemannian manifold. We cite two of these:

euclidean_riemannian_distanceLean 4Applies a library theoremFormally verified
open Bundle in
/-- **In Euclidean space, the Riemannian distance is the usual distance**: the infimum of the
lengths of `C¹` paths from `x` to `y` equals `‖x - y‖`, attained by the straight segment. This is
Mathlib's instance `IsRiemannianManifold 𝓘(ℝ, F) F` for an inner product space `F`. -/
theorem euclidean_riemannian_distance {F : Type*} [NormedAddCommGroup F] [InnerProductSpace ℝ F]
    (x y : F) : edist x y = riemannianEDist (modelWithCornersSelf ℝ F) x y :=
  IsRiemannianManifold.out x y
Axioms used: propext, Classical.choice, Quot.soundformal/Lumenary/RiemannianGeometry.leanTry it in the Lean web editor
riemannian_triangleLean 4Applies a library theoremFormally verified
/-- The **triangle inequality** for the Riemannian distance (the infimum of lengths of `C¹`
paths) on any manifold whose tangent spaces carry a norm — in particular an inner product:
concatenating paths adds lengths. Mathlib's `riemannianEDist_triangle`. -/
theorem riemannian_triangle {E : Type*} [NormedAddCommGroup E] [NormedSpace ℝ E]
    {H : Type*} [TopologicalSpace H] {I : ModelWithCorners ℝ E H}
    {M : Type*} [TopologicalSpace M] [ChartedSpace H M]
    [∀ x : M, ENorm (TangentSpace I x)] [∀ x : M, ENormSMulClass ℝ (TangentSpace I x)]
    (x y z : M) :
    riemannianEDist I x z ≤ riemannianEDist I x y + riemannianEDist I y z :=
  riemannianEDist_triangle
Axioms used: propext, Classical.choice, Quot.soundformal/Lumenary/RiemannianGeometry.leanTry it in the Lean web editor

The Levi-Civita connection of a general metric, geodesics, curvature tensors and the global theorems are not yet in Mathlib. What we formalise instead is the algebra and analysis that the lesson's proofs reduce to at a single point or along a single geodesic. First, Theorem 4(iv): pair symmetry follows from the two antisymmetries and the Bianchi identity, for any function RR whatsoever:

pair_symmetryLean 4Proved here from basic factsFormally verified
/-- **Pair symmetry of the curvature tensor.** Any function `R(x, y, z, w)` that is antisymmetric
in `x, y`, antisymmetric in `z, w`, and satisfies the first Bianchi identity
`R(x,y,z,w) + R(y,z,x,w) + R(z,x,y,w) = 0`, also satisfies `R(x,y,z,w) = R(z,w,x,y)`.
The proof adds four instances of the Bianchi identity (the "octahedron" argument); no linearity
is needed. -/
theorem pair_symmetry {E : Type*} (R : E → E → E → E → ℝ)
    (anti₁ : ∀ x y z w, R x y z w = -R y x z w)
    (anti₂ : ∀ x y z w, R x y z w = -R x y w z)
    (bianchi : ∀ x y z w, R x y z w + R y z x w + R z x y w = 0) (x y z w : E) :
    R x y z w = R z w x y := by
  have b1 := bianchi x y z w
  have b2 := bianchi y z w x
  have b3 := bianchi z w x y
  have b4 := bianchi w x y z
  linarith [anti₁ y z x w, anti₂ y z x w, anti₁ z x y w, anti₂ z x y w,
    anti₁ y z w x, anti₂ y z w x, anti₁ z w y x, anti₂ z w y x, anti₁ w y z x, anti₂ w y z x,
    anti₁ w x z y, anti₂ w x z y, anti₁ x z w y, anti₂ x z w y,
    anti₁ w x y z, anti₂ w x y z, anti₁ x y w z, anti₂ x y w z, anti₁ y w x z, anti₂ y w x z,
    anti₂ z w y x, anti₁ x z y w, anti₂ y x z w, anti₁ y x w z,
    anti₂ x w z y, anti₁ w y x z, anti₂ w x z y]
Axioms used: propext, Classical.choice, Quot.soundformal/Lumenary/RiemannianGeometry.leanTry it in the Lean web editor

Next, the model curvature tensors: their symmetries, their sectional curvature kk in every plane, and their Ricci curvature (n−1)k⟨y,z⟩(n-1)k\langle y, z\rangle, computed by tracing over the standard orthonormal basis of Rn\R^n:

constCurvLean 4Formally verified
/-- **The curvature tensor of constant curvature `k`**:
`R(x, y, z, w) = k (⟨y, z⟩⟨x, w⟩ - ⟨x, z⟩⟨y, w⟩)`, i.e. `R(x, y)z = k(⟨y, z⟩x - ⟨x, z⟩y)` with the
convention `R(x,y,z,w) = ⟨R(x,y)z, w⟩`. It is the curvature tensor of the round sphere of radius
`1/√k` (`k > 0`), of Euclidean space (`k = 0`) and of hyperbolic space (`k < 0`). -/
def constCurv (k : ℝ) (x y z w : E) : ℝ :=
  k * (inner ℝ y z * inner ℝ x w - inner ℝ x z * inner ℝ y w)
Axioms used: propext, Classical.choice, Quot.soundformal/Lumenary/RiemannianGeometry.leanTry it in the Lean web editor
constCurv_symmetriesLean 4Proved here from basic factsFormally verified
/-- The constant-curvature tensor has the symmetries of a curvature tensor: antisymmetry in
each pair, and the first Bianchi identity (the six terms cancel in pairs because the inner
product is symmetric). -/
theorem constCurv_symmetries (k : ℝ) (x y z w : E) :
    constCurv k x y z w = -constCurv k y x z w ∧
      constCurv k x y z w = -constCurv k x y w z ∧
      constCurv k x y z w + constCurv k y z x w + constCurv k z x y w = 0 := by
  simp only [constCurv]
  refine ⟨by ring, by ring, ?_⟩
  rw [real_inner_comm x y, real_inner_comm x z, real_inner_comm y z]
  ring
Axioms used: propext, Classical.choice, Quot.soundformal/Lumenary/RiemannianGeometry.leanTry it in the Lean web editor
sectional_constCurvLean 4Proved here from basic factsFormally verified
/-- **Its sectional curvature is `k`** for every plane: `R(x, y, y, x) = k (‖x‖²‖y‖² - ⟨x,y⟩²)`,
and the sectional curvature of the plane spanned by `x, y` is `R(x,y,y,x)` divided by
`‖x‖²‖y‖² - ⟨x,y⟩²` (the squared area of the parallelogram). -/
theorem sectional_constCurv (k : ℝ) (x y : E) :
    constCurv k x y y x = k * (‖x‖ ^ 2 * ‖y‖ ^ 2 - inner ℝ x y ^ 2) := by
  simp only [constCurv, real_inner_self_eq_norm_sq, real_inner_comm y x]
  ring
Axioms used: propext, Classical.choice, Quot.soundformal/Lumenary/RiemannianGeometry.leanTry it in the Lean web editor
ricci_constCurvLean 4Proved here from basic factsFormally verified
/-- **Ricci curvature in constant curvature `k`** on `ℝⁿ`: tracing over an orthonormal basis,
`Ric(y, z) = Σᵢ R(eᵢ, y, z, eᵢ) = (n - 1) k ⟨y, z⟩`. The key step is Parseval's identity
`Σᵢ ⟨eᵢ, z⟩⟨y, eᵢ⟩ = ⟨y, z⟩`. This is the hypothesis `Ric ≥ (n - 1)k` of the Bonnet–Myers
theorem, with equality for the round sphere. -/
theorem ricci_constCurv (n : ℕ) (k : ℝ) (y z : EuclideanSpace ℝ (Fin n)) :
    ∑ i, constCurv k (EuclideanSpace.basisFun (Fin n) ℝ i) y z
        (EuclideanSpace.basisFun (Fin n) ℝ i) = (n - 1) * k * inner ℝ y z := by
  have hpars : ∑ i, inner ℝ (EuclideanSpace.basisFun (Fin n) ℝ i) z *
      inner ℝ y (EuclideanSpace.basisFun (Fin n) ℝ i) = inner ℝ y z := by
    rw [← (EuclideanSpace.basisFun (Fin n) ℝ).sum_inner_mul_inner y z]
    exact Finset.sum_congr rfl fun i _ => mul_comm _ _
  have hnorm : ∀ i, inner ℝ (EuclideanSpace.basisFun (Fin n) ℝ i)
      (EuclideanSpace.basisFun (Fin n) ℝ i) = (1 : ℝ) := fun i => by
    rw [real_inner_self_eq_norm_sq, (EuclideanSpace.basisFun (Fin n) ℝ).orthonormal.1 i]
    norm_num
  simp only [constCurv, hnorm, mul_one]
  rw [← Finset.mul_sum, Finset.sum_sub_distrib, hpars]
  simp
  ring
Axioms used: propext, Classical.choice, Quot.soundformal/Lumenary/RiemannianGeometry.leanTry it in the Lean web editor

The Jacobi equation u′′+ku=0u'' + ku = 0 in constant curvature k>0k > 0, its solution sin⁡(k t)/k\sin(\sqrt k\,t)/\sqrt k, and the first conjugate point at π/k\pi/\sqrt k:

jacobi_constant_curvatureLean 4Proved here from basic factsFormally verified
/-- **Jacobi fields in constant curvature `k > 0`.** Along a unit-speed geodesic, a normal Jacobi
field `J(t) E(t)` (with `E` parallel) satisfies `J'' + kJ = 0`. The solution with `J(0) = 0`,
`J'(0) = 1` is `J(t) = sin(√k t)/√k`: we check `J' = cos(√k t)`, `(cos(√k t))' = -k J(t)`, and
that `J` vanishes again at `t = π/√k` — the first **conjugate point**, where geodesics leaving a
point meet again (the antipode, on the sphere of radius `1/√k`). -/
theorem jacobi_constant_curvature {k : ℝ} (hk : 0 < k) :
    (∀ t, HasDerivAt (fun t => sin (√k * t) / √k) (cos (√k * t)) t) ∧
      (∀ t, HasDerivAt (fun t => cos (√k * t)) (-k * (sin (√k * t) / √k)) t) ∧
      sin (√k * 0) / √k = 0 ∧ sin (√k * (π / √k)) / √k = 0 ∧
      ∀ t, 0 < t → t < π / √k → 0 < sin (√k * t) / √k := by
  have hs : 0 < √k := Real.sqrt_pos.mpr hk
  have hsq : √k * √k = k := Real.mul_self_sqrt hk.le
  refine ⟨fun t => ?_, fun t => ?_, by simp, ?_, fun t ht ht' => ?_⟩
  · have h := ((hasDerivAt_id t).const_mul √k).sin.div_const √k
    simp only [id, mul_one] at h
    convert h using 1
    field_simp
  · have h := ((hasDerivAt_id t).const_mul √k).cos
    simp only [id, mul_one] at h
    convert h using 1
    calc -k * (sin (√k * t) / √k) = -(√k * √k) * (sin (√k * t) / √k) := by rw [hsq]
      _ = -sin (√k * t) * √k := by field_simp
  · rw [mul_div_cancel₀ π hs.ne', sin_pi, zero_div]
  · apply div_pos _ hs
    apply sin_pos_of_pos_of_lt_pi (mul_pos hs ht)
    calc √k * t < √k * (π / √k) := mul_lt_mul_of_pos_left ht' hs
      _ = π := mul_div_cancel₀ π hs.ne'
Axioms used: propext, Classical.choice, Quot.soundformal/Lumenary/RiemannianGeometry.leanTry it in the Lean web editor

The heart of the Bonnet–Myers proof — the value of the index-form integral and its negativity for L>π/kL > \pi/\sqrt k:

myers_index_formLean 4Proved here from basic factsFormally verified
/-- **The index-form integral in the Bonnet–Myers theorem.** For `V(t) = sin(πt/L)`,
`∫₀ᴸ (V'(t)² - k V(t)²) dt = (L/2)((π/L)² - k)`. Summed over `n - 1` parallel orthonormal fields
along a geodesic of length `L`, with `Ric ≥ (n-1)k`, this bounds the second variation of energy. -/
theorem myers_index_form {L : ℝ} (hL : 0 < L) (k : ℝ) :
    ∫ t in (0 : ℝ)..L, ((π / L) ^ 2 * cos (π / L * t) ^ 2 - k * sin (π / L * t) ^ 2) =
      L / 2 * ((π / L) ^ 2 - k) := by
  have hc : π / L ≠ 0 := div_ne_zero pi_ne_zero hL.ne'
  have hcos : ∫ t in (0 : ℝ)..L, cos (π / L * t) ^ 2 = L / 2 := by
    rw [intervalIntegral.integral_comp_mul_left (fun x => cos x ^ 2) hc, mul_zero,
      div_mul_cancel₀ π hL.ne', integral_cos_sq]
    simp
    field_simp
  have hsin : ∫ t in (0 : ℝ)..L, sin (π / L * t) ^ 2 = L / 2 := by
    rw [intervalIntegral.integral_comp_mul_left (fun x => sin x ^ 2) hc, mul_zero,
      div_mul_cancel₀ π hL.ne', integral_sin_sq]
    simp
    field_simp
  have hi1 : IntervalIntegrable (fun t => (π / L) ^ 2 * cos (π / L * t) ^ 2) MeasureTheory.volume
      0 L := by
    apply Continuous.intervalIntegrable
    fun_prop
  have hi2 : IntervalIntegrable (fun t => k * sin (π / L * t) ^ 2) MeasureTheory.volume 0 L := by
    apply Continuous.intervalIntegrable
    fun_prop
  rw [intervalIntegral.integral_sub hi1 hi2, intervalIntegral.integral_const_mul,
    intervalIntegral.integral_const_mul, hcos, hsin]
  ring
Axioms used: propext, Classical.choice, Quot.soundformal/Lumenary/RiemannianGeometry.leanTry it in the Lean web editor
myers_index_negativeLean 4Proved here from basic factsFormally verified
/-- **The second variation is negative on long geodesics.** If `k > 0` and the geodesic is
longer than `π/√k`, the index-form integral is negative; so a geodesic of length `> π/√k` in a
manifold with `Ric ≥ (n-1)k > 0` is not minimising. Hence the diameter is at most `π/√k`. -/
theorem myers_index_negative {L k : ℝ} (hk : 0 < k) (hL : π / √k < L) :
    ∫ t in (0 : ℝ)..L, ((π / L) ^ 2 * cos (π / L * t) ^ 2 - k * sin (π / L * t) ^ 2) < 0 := by
  have hs : 0 < √k := Real.sqrt_pos.mpr hk
  have hL0 : 0 < L := lt_trans (div_pos pi_pos hs) hL
  rw [myers_index_form hL0 k]
  apply mul_neg_of_pos_of_neg (by positivity)
  have h1 : π / L < √k := by
    rw [div_lt_iff₀ hL0]
    rw [div_lt_iff₀ hs] at hL
    linarith
  have h2 : (π / L) ^ 2 < √k ^ 2 := by
    apply pow_lt_pow_left₀ h1 (by positivity) (by norm_num)
  rw [Real.sq_sqrt hk.le] at h2
  linarith
Axioms used: propext, Classical.choice, Quot.soundformal/Lumenary/RiemannianGeometry.leanTry it in the Lean web editor

And the example of the hyperbolic plane: the semicircle (tanh⁡t,sech⁡t)(\tanh t, \operatorname{sech} t) lies on the unit circle, has hyperbolic speed 11, and satisfies both geodesic equations (we prove each derivative, then each equation):

semicircle_geodesicLean 4Proved here from basic factsFormally verified
/-- **Semicircles are geodesics of the hyperbolic plane.** In the upper half-plane with metric
`(dx² + dy²)/y²`, the geodesic equations are `x'' - (2/y) x'y' = 0` and
`y'' + (x'² - y'²)/y = 0`. The curve `x = tanh t = sinh t / cosh t`, `y = sech t = 1 / cosh t`
runs along the unit semicircle (`x² + y² = 1`) with hyperbolic speed `1`; we verify its
derivatives and both equations. -/
theorem semicircle_geodesic (t : ℝ) :
    HasDerivAt (fun t => sinh t / cosh t) (1 / cosh t ^ 2) t ∧
      HasDerivAt (fun t => 1 / cosh t ^ 2) (-2 * sinh t / cosh t ^ 3) t ∧
      HasDerivAt (fun t => 1 / cosh t) (-sinh t / cosh t ^ 2) t ∧
      HasDerivAt (fun t => -sinh t / cosh t ^ 2) ((sinh t ^ 2 - 1) / cosh t ^ 3) t ∧
      (sinh t / cosh t) ^ 2 + (1 / cosh t) ^ 2 = 1 ∧
      ((1 / cosh t ^ 2) ^ 2 + (-sinh t / cosh t ^ 2) ^ 2) / (1 / cosh t) ^ 2 = 1 ∧
      -2 * sinh t / cosh t ^ 3 - 2 / (1 / cosh t) * (1 / cosh t ^ 2) * (-sinh t / cosh t ^ 2) = 0 ∧
      (sinh t ^ 2 - 1) / cosh t ^ 3 +
        ((1 / cosh t ^ 2) ^ 2 - (-sinh t / cosh t ^ 2) ^ 2) / (1 / cosh t) = 0 := by
  have hc : cosh t ≠ 0 := (cosh_pos t).ne'
  have hid : cosh t ^ 2 = sinh t ^ 2 + 1 := cosh_sq t
  refine ⟨?_, ?_, ?_, ?_, ?_, ?_, ?_, ?_⟩
  · convert (hasDerivAt_sinh t).div (hasDerivAt_cosh t) hc using 1
    field_simp
    linear_combination -hid
  · convert ((hasDerivAt_cosh t).pow 2).inv (pow_ne_zero 2 hc) |>.const_mul 1 using 1
    · ext s; simp [div_eq_mul_inv]
    · simp only [Pi.pow_apply]
      field_simp
      ring
  · convert (hasDerivAt_cosh t).inv hc |>.const_mul 1 using 1
    · ext s; simp [div_eq_mul_inv]
    · field_simp
  · convert ((hasDerivAt_sinh t).neg).div ((hasDerivAt_cosh t).pow 2) (pow_ne_zero 2 hc) using 1
    simp only [Pi.pow_apply, Pi.neg_apply]
    field_simp
    norm_num
    linear_combination cosh t * hid
  · field_simp
    linear_combination -hid
  · field_simp
    linear_combination -hid
  · field_simp
    ring
  · field_simp
    ring
Axioms used: propext, Classical.choice, Quot.soundformal/Lumenary/RiemannianGeometry.leanTry it in the Lean web editor

What is and is not formalised. Proved here: Theorem 4(iv) (in the abstract form above), the curvature, sectional curvature and Ricci curvature of the model tensors, the constant-curvature Jacobi fields and conjugate points, the integral identity and inequality used in Theorem 7, and the geodesic equations for one hyperbolic geodesic. Cited from Mathlib: the Riemannian distance of Euclidean space and the triangle inequality. Not formalised: Theorem 1 (Mathlib has no Levi-Civita connection for a general metric yet), the geodesic flow and exponential map, Hopf–Rinow, the second variation formula, and the Gauss–Bonnet and Bonnet–Myers theorems themselves.

ComputationC

Curvature and geodesics, computed

The first program computes Christoffel symbols and the Gaussian curvature directly from the metric coefficients — never using an embedding in R3\R^3 — for the round sphere, the half-plane, the Poincaré disc and a torus of revolution. It then integrates K dAK\, dA over the sphere and the torus.

Gaussian curvature from the metric, and Gauss-BonnetPythonSymbolic computationExact computationComputationally tested
"""Curvature from the metric alone, and the Gauss-Bonnet theorem.

For a surface with metric g = E du^2 + 2F du dv + G dv^2, SymPy computes the
Christoffel symbols, the curvature tensor component R_1212 and the Gaussian
curvature K = R_1212 / det g, using nothing but derivatives of E, F, G: this
is Gauss's Theorema Egregium put to work. It treats the round sphere, the
hyperbolic upper half-plane, the Poincare disc and a torus of revolution, then
integrates K dA over the sphere and the torus and compares with 2*pi*chi.
Everything is exact symbolic computation for these specific metrics.
"""

import sympy

U, V = sympy.symbols("u v", real=True)

def christoffel(g):
    """Christoffel symbols Gamma[k][i][j] of a 2x2 metric matrix in (u, v)."""
    coords = (U, V)
    ginv = g.inv()
    gamma = [[[0, 0], [0, 0]] for _ in range(2)]
    for k in range(2):
        for i in range(2):
            for j in range(2):
                gamma[k][i][j] = sympy.simplify(sum(
                    ginv[k, m] * (sympy.diff(g[j, m], coords[i])
                                  + sympy.diff(g[i, m], coords[j])
                                  - sympy.diff(g[i, j], coords[m])) / 2
                    for m in range(2)))
    return gamma

def gaussian_curvature(g):
    """K = R_1212 / det g with R(d1, d2)d2 written via Christoffel symbols."""
    coords = (U, V)
    gam = christoffel(g)
    # R_1212 = <R(d_u, d_v) d_v, d_u> = sum over m of g_{um} R^m_{vuv}.
    def riem(m, i, j, k):
        """R^m_{ijk}: component of R(d_j, d_k) d_i on d_m."""
        val = sympy.diff(gam[m][k][i], coords[j]) - sympy.diff(gam[m][j][i], coords[k])
        val += sum(gam[m][j][p] * gam[p][k][i] - gam[m][k][p] * gam[p][j][i]
                   for p in range(2))
        return val
    r1212 = sum(g[0, m] * riem(m, 1, 0, 1) for m in range(2))
    return sympy.simplify(r1212 / g.det())

def integral_of_curvature(g, u_range, v_range):
    """The integral of K dA = K sqrt(det g) du dv over a coordinate rectangle."""
    density = sympy.simplify(gaussian_curvature(g) * sympy.sqrt(g.det()))
    return sympy.simplify(sympy.integrate(density, (U, *u_range), (V, *v_range)))

def main():
    big, small = sympy.Rational(2), sympy.Rational(1)
    sphere = sympy.Matrix([[1, 0], [0, sympy.sin(U) ** 2]])
    half_plane = sympy.Matrix([[1 / V**2, 0], [0, 1 / V**2]])
    disc_factor = 4 / (1 - U**2 - V**2) ** 2
    disc = sympy.Matrix([[disc_factor, 0], [0, disc_factor]])
    torus = sympy.Matrix([[(big + small * sympy.cos(V)) ** 2, 0], [0, small**2]])
    print("Gaussian curvature computed from the metric alone:")
    rows = [("round sphere  du^2 + sin(u)^2 dv^2", sphere),
            ("half-plane   (du^2 + dv^2)/v^2", half_plane),
            ("Poincare disc 4(du^2 + dv^2)/(1-u^2-v^2)^2", disc),
            ("torus (2 + cos v)^2 du^2 + dv^2", torus)]
    for name, g in rows:
        print(f"  {name:<44} K = {gaussian_curvature(g)}")
    gam = christoffel(half_plane)
    print("Half-plane Christoffel symbols (nonzero):")
    for k in range(2):
        for i in range(2):
            for j in range(i, 2):
                if gam[k][i][j] != 0:
                    print(f"  Gamma^{'uv'[k]}_{'uv'[i]}{'uv'[j]} = {gam[k][i][j]}")
    print()
    total_sphere = integral_of_curvature(sphere, (0, sympy.pi), (0, 2 * sympy.pi))
    total_torus = integral_of_curvature(torus, (0, 2 * sympy.pi),
                                        (0, 2 * sympy.pi))
    print(f"Integral of K dA over the sphere: {total_sphere}  (2 pi chi = 4 pi)")
    print(f"Integral of K dA over the torus:  {total_torus}  (2 pi chi = 0)")
    print()
    print("Epistemic status: exact symbolic computation for four explicit metrics")
    print("and two integrals. It illustrates the Theorema Egregium and checks the")
    print("Gauss-Bonnet theorem in two cases; the theorem itself is proved in the")
    print("lesson.")

if __name__ == "__main__":
    main()
Runs entirely in your browser, in an isolated worker. Nothing is sent to a server.

The totals 4π4\pi and 00 are 2πχ2\pi\chi for χ=2\chi = 2 and χ=0\chi = 0. The torus integral vanishes because the positive curvature of the outer half exactly cancels the negative curvature of the inner half. This is exact computation for specific metrics, not a proof of Gauss–Bonnet.

The second program integrates the geodesic equations numerically. Two geodesics leave one point at a tiny angle δ\delta; their distance after time tt, divided by δ\delta, tracks the Jacobi fields sin⁡t\sin t on the sphere and sinh⁡t\sinh t in the hyperbolic plane, refocusing at t=πt = \pi on the sphere. Then it follows a geodesic on a torus and checks Clairaut's conserved quantity.

Geodesic spreading, conjugate points and Clairaut's relationPythonNumerical approximationComputationally tested
"""Geodesics, the spreading of nearby geodesics, and Clairaut's relation.

Part 1 integrates the geodesic equations (with their Christoffel symbols) on
the unit sphere and on the hyperbolic upper half-plane, for two geodesics
leaving the same point at a small angle delta. The distance between them
after time t, divided by delta, is compared with the Jacobi-field prediction
sin t (curvature +1), t (curvature 0) and sinh t (curvature -1). On the sphere
the geodesics meet again at t = pi: the conjugate point.

Part 2 integrates a geodesic on a torus of revolution and checks Clairaut's
relation: rho^2 du/dt (rho = distance from the axis) stays constant, and the
geodesic never enters the region where rho is smaller than that constant.
Runge-Kutta integration: numerical evidence.
"""

import math

def rk4(rhs, state, dt, steps):
    """Integrate state' = rhs(state) with the classical Runge-Kutta method."""
    for _ in range(steps):
        k1 = rhs(state)
        k2 = rhs([s + dt / 2 * k for s, k in zip(state, k1)])
        k3 = rhs([s + dt / 2 * k for s, k in zip(state, k2)])
        k4 = rhs([s + dt * k for s, k in zip(state, k3)])
        state = [s + dt / 6 * (a + 2 * b + 2 * c + d)
                 for s, a, b, c, d in zip(state, k1, k2, k3, k4)]
    return state

def sphere_rhs(s):
    """Geodesic equations on the sphere in (theta, phi): state (th, ph, th', ph')."""
    th, ph, dth, dph = s
    return [dth, dph, math.sin(th) * math.cos(th) * dph**2,
            -2 * math.cos(th) / math.sin(th) * dth * dph]

def half_plane_rhs(s):
    """Geodesic equations of (dx^2 + dy^2)/y^2: x'' = 2x'y'/y, y'' = (y'^2 - x'^2)/y."""
    x, y, dx, dy = s
    return [dx, dy, 2 * dx * dy / y, (dy**2 - dx**2) / y]

def sphere_distance(a, b):
    """Great-circle distance between points given in (theta, phi)."""
    def xyz(p):
        return (math.sin(p[0]) * math.cos(p[1]), math.sin(p[0]) * math.sin(p[1]),
                math.cos(p[0]))
    dot = sum(u * v for u, v in zip(xyz(a), xyz(b)))
    cross = math.sqrt(max(0.0, 1 - dot * dot))
    return math.atan2(cross, dot)

def half_plane_distance(a, b):
    """Hyperbolic distance: cosh d = 1 + |a - b|^2 / (2 y_a y_b)."""
    sq = (a[0] - b[0]) ** 2 + (a[1] - b[1]) ** 2
    return math.acosh(1 + sq / (2 * a[1] * b[1]))

def spread(model, t, delta=1e-4, dt=1e-3):
    """Distance at time t between unit-speed geodesics at angle delta, / delta."""
    steps = max(1, round(t / dt))
    step = t / steps
    # Both start points have an orthonormal coordinate frame: the equator of
    # the sphere (theta = pi/2) and the point (0, 1) of the half-plane.
    if model == "sphere":
        rhs, dist, start = sphere_rhs, sphere_distance, (math.pi / 2, 0.0)
    else:
        rhs, dist, start = half_plane_rhs, half_plane_distance, (0.0, 1.0)
    ends = []
    for angle in (0.3, 0.3 + delta):
        state = [start[0], start[1], math.cos(angle), math.sin(angle)]
        ends.append(rk4(rhs, state, step, steps)[:2])
    return dist(ends[0], ends[1]) / delta

def torus_rhs(big, small):
    """Geodesic equations on the torus metric (R + r cos v)^2 du^2 + r^2 dv^2."""
    def rhs(s):
        u, v, du, dv = s
        rho = big + small * math.cos(v)
        drho = -small * math.sin(v)
        return [du, dv, -2 * drho / rho * du * dv, rho * drho / small**2 * du**2]
    return rhs

def clairaut_run(big=2.0, small=1.0, angle=1.2, t=30.0, dt=1e-3):
    """Return (initial rho^2 u', max deviation, min rho visited) along a geodesic."""
    rho0 = big + small
    state = [0.0, 0.0, math.cos(angle) / rho0, math.sin(angle) / small]
    rhs = torus_rhs(big, small)
    c0 = rho0**2 * state[2]
    worst, min_rho = 0.0, rho0
    for _ in range(round(t / 0.5)):
        state = rk4(rhs, state, dt, round(0.5 / dt))
        rho = big + small * math.cos(state[1])
        worst = max(worst, abs(rho**2 * state[2] - c0))
        min_rho = min(min_rho, rho)
    return c0, worst, min_rho

def main():
    print("1. Two geodesics from one point at angle delta = 1e-4:")
    print("   t      sphere d/delta   sin t      half-plane d/delta   sinh t")
    for t in [0.5, 1.0, 1.5, 2.0, 2.5, 3.0, math.pi]:
        a, b = spread("sphere", t), spread("half-plane", t)
        print(f"   {t:4.2f}   {a:12.6f}   {math.sin(t):9.6f}   "
              f"{b:14.6f}       {math.sinh(t):9.6f}")
    print("   Flat plane: d/delta = t exactly. At t = pi the sphere's geodesics")
    print("   meet again at the antipode (a conjugate point).")
    print()
    c0, worst, min_rho = clairaut_run()
    print("2. A geodesic on the torus (R = 2, r = 1) for time 30:")
    print(f"   Clairaut constant rho^2 u' = {c0:.10f}")
    print(f"   largest deviation along the geodesic: {worst:.1e}")
    print(f"   smallest rho visited: {min_rho:.4f} >= |constant| = {abs(c0):.4f}")
    print()
    print("Epistemic status: numerical integration (Runge-Kutta, step 0.001) of")
    print("the geodesic equations. The agreement with sin t and sinh t is evidence")
    print("for the Jacobi equation J'' + K J = 0; the conservation in part 2 is")
    print("evidence for Clairaut's theorem, which the lesson proves.")

if __name__ == "__main__":
    main()
Runs entirely in your browser, in an isolated worker. Nothing is sent to a server.

The smallest distance from the axis visited by the torus geodesic equals Clairaut's constant to four decimals: the geodesic oscillates between the outer equator and the latitude where f=∣fcos⁡ψ∣f = |f\cos\psi|, exactly as the relation predicts. Numerical integration is evidence, not proof.

Explore

Explore: angle sums and curvature

Drag the vertices of a geodesic triangle on the sphere and in the hyperbolic plane (the Poincaré disc, where geodesics are arcs meeting the boundary at right angles). The widget computes the angle sum exactly and the area independently, by numerical integration. Check that the angle excess α+β+γ−π\alpha + \beta + \gamma - \pi equals K⋅areaK \cdot \text{area}: positive on the sphere (K=1K = 1), negative in the hyperbolic plane (K=−1K = -1), zero in the plane. Try the preset triangle with three right angles: it covers one eighth of the sphere, area π/2\pi/2, excess 3π/2−π=π/23\pi/2 - \pi = \pi/2. In the hyperbolic plane, push the vertices towards the boundary: the angles shrink to 00, and the area of a triangle can never exceed π\pi.

Local Gauss–Bonnet: angle excess = K × area

Compare the three geometries: K = +1, 0 and −1.

90.0°90.0°90.0°ABC

Drag a corner to move it; drag anywhere else to turn the sphere. The sides are arcs of great circles — the shortest paths on a sphere.

  • ∠A90.0°
  • ∠B90.0°
  • ∠C90.0°

∠A + ∠B + ∠C = 270.0°

Angle excess (sum − 180°)
90.0° = 1.571 rad
Area, measured numerically
1.571 R²
Share of the whole sphere (area ÷ 4πR²)
12.50 %

∠A + ∠B + ∠C − π = Area / R²On a sphere of radius R, the excess in radians equals the area divided by R². The area is computed separately, by numerical integration, so the match is a check rather than an assumption.

∠A + ∠B + ∠C − π = K · Area

Flat planeK = 0∠A+∠B+∠C = 180°
SphereK = 1/R²∠A+∠B+∠C > 180°
Hyperbolic planeK = −1∠A+∠B+∠C < 180°

This is a first glimpse of the Gauss–Bonnet theorem: for a triangle whose sides are geodesics (shortest paths), the angle sum minus π equals the total curvature inside it. Here the curvature K is the same everywhere; on other surfaces you add up (integrate) K over the area.

Exercises

Exercises

1. Riemannian geometry

Warm-upHuman

The metric g=dt2+t4 dθ2g = dt^2 + t^4\, d\theta^2 (for t>0t > 0) has the form dt2+f(t)2dθ2dt^2 + f(t)^2 d\theta^2. What is its Gaussian curvature at t=1t = 1?

2. Riemannian geometry

Warm-upHuman

Let MM be a closed orientable surface of genus 33 with any Riemannian metric. Compute 1π∫MK dA\dfrac{1}{\pi}\displaystyle\int_M K\, dA.

3. Riemannian geometry

CoreHuman

Which of these curves on the unit sphere S2S^2, parametrised with constant speed, are geodesics? (Choose all that apply.)

Choose all that apply

4. Riemannian geometry

CoreHuman

The paraboloid z=x2+y2z = x^2 + y^2, with the metric induced from R3\R^3, is complete and has Gaussian curvature K>0K > 0 at every point, yet it is not compact. Which hypothesis of the Bonnet–Myers theorem fails?

Choose one

5. Riemannian geometry

CoreHuman

In the proof of the fundamental theorem, the Koszul formula expresses 2⟨∇XY,Z⟩2\langle\nabla_X Y, Z\rangle in terms of the metric and brackets. Which property is needed to conclude that ∇XY\nabla_X Y itself is determined?

Choose one

6. Riemannian geometry

CoreHuman

On the unit sphere, let γ\gamma be the unit-speed great-circle arc of length 3π/23\pi/2 from pp to qq. Which statement is true?

Choose one

7. Riemannian geometry

CoreHuman

A geodesic triangle in the hyperbolic plane (curvature −1-1) has angles π/3\pi/3, π/4\pi/4 and π/6\pi/6. What is its area?

Choose one

8. Riemannian geometry

StretchFormal

In semicircle_geodesic, the curve is x=sinh⁡t/cosh⁡tx = \sinh t/\cosh t, y=1/cosh⁡ty = 1/\cosh t, with x′=1/cosh⁡2tx' = 1/\cosh^2 t and y′=−sinh⁡t/cosh⁡2ty' = -\sinh t/\cosh^2 t. Which conjunct states that it has unit speed for the hyperbolic metric (dx2+dy2)/y2(dx^2 + dy^2)/y^2?

Choose one

9. Riemannian geometry

StretchComputational

Write excess(a, b, c) for three unit vectors a,b,c∈R3a, b, c \in \R^3 (tuples) spanning a geodesic triangle on the unit sphere. Return α+β+γ−π\alpha + \beta + \gamma - \pi, where the angle at aa is the angle between the tangent vectors b−⟨a,b⟩ab - \langle a, b\rangle a and c−⟨a,c⟩ac - \langle a, c\rangle a (the initial directions of the great-circle arcs from aa), and similarly at bb and cc. By local Gauss–Bonnet the excess is the area.

Runs entirely in your browser, in an isolated worker. Nothing is sent to a server.
Common misconceptionsH

Common misconceptions

Misconception

"Curvature needs an ambient space to bend into." Gaussian curvature is intrinsic: Theorema Egregium. It is computed from the metric alone (the first experiment never mentions R3\R^3), and it makes sense for spaces that are not embedded anywhere, such as the hyperbolic plane — which, by Hilbert's theorem (1901), admits no smooth isometric immersion in R3\R^3 as a complete surface. Conversely, a surface can look bent in R3\R^3 and be intrinsically flat: a cylinder, or a rolled sheet of paper, has K=0K = 0.

Misconception

"A geodesic is the shortest path between its endpoints." Only locally. On the unit sphere, a great-circle arc longer than π\pi is a geodesic but not minimising: it passes the conjugate point (the antipode of its start). On a flat cylinder, the helices through two points are all geodesics; at most one is shortest. Hopf–Rinow guarantees that some minimising geodesic exists in a complete manifold, not that every geodesic minimises.

Misconception

"Positive curvature forces compactness." Bonnet–Myers needs a uniform positive lower bound on Ricci curvature, and completeness. The paraboloid z=x2+y2z = x^2 + y^2 is complete and has K>0K > 0 everywhere, but K→0K \to 0 at infinity and it is not compact. An open hemisphere has K=1K = 1 and is not compact, because it is not complete.

Misconception

"The exponential map is a global diffeomorphism." It is a diffeomorphism near 00, and globally when MM is complete, simply connected and K≤0K \le 0 (Cartan–Hadamard). On the unit sphere, exp⁡p\exp_p maps the whole circle ∣v∣=π|v| = \pi to the antipode: it is neither injective nor a local diffeomorphism there. The radius of the largest ball on which exp⁡p\exp_p is a diffeomorphism is the injectivity radius at pp.

Misconception

"A circle of latitude is a geodesic, since it is a circle on the sphere." A parallel at latitude λ≠0\lambda \ne 0 curves towards the nearer pole within the sphere: its geodesic curvature is tan⁡λ\tan\lambda (on the unit sphere). Only great circles are geodesics: flying along the parallel from Sydney to Santiago (both near 33∘33^\circ S) is much longer than the great-circle route, which swings south towards Antarctica.

ViewpointsH

Many ways of seeing

Geometry— Comparison geometry and synthetic curvature

The modern geometer compares. Toponogov's theorem: in a complete manifold with sectional curvature ≥k\ge k, geodesic triangles are "fatter" than triangles with the same side lengths in the model space of curvature kk. This can be taken as a definition of curvature bounds for metric spaces with no smooth structure at all: Alexandrov spaces (curvature bounded below) and CAT(kk) spaces (curvature bounded above), in which the angle comparison is imposed on geodesic triangles. Gromov's compactness theorem says that manifolds of a fixed dimension with a lower Ricci bound and bounded diameter form a precompact family for the Gromov–Hausdorff distance, whose limits are the subject of Cheeger–Colding theory. Curvature thus survives as a property of distances alone.

Topology— Curvature constrains topology

Gauss–Bonnet, Bonnet–Myers and Cartan–Hadamard are all theorems of the form a curvature condition forces a topological conclusion: total curvature is 2πχ2\pi\chi; Ric⁡≥(n−1)k>0\operatorname{Ric} \ge (n-1)k > 0 forces compactness and finite π1\pi_1; K≤0K \le 0 forces the universal cover to be Rn\R^n, so all higher homotopy groups vanish. The sphere theorem (Rauch, Berger, Klingenberg; differentiable version by Brendle and Schoen, 2009) says that a complete simply connected manifold whose sectional curvatures lie strictly between 1/41/4 and 11 is homeomorphic — in fact diffeomorphic — to a sphere. And Hamilton's Ricci flow, completed by Perelman (2002–2003), used curvature to prove the Poincaré and geometrisation conjectures. See geometric analysis and low-dimensional topology.

Analysis— Geodesics as critical points, and the Laplacian

Geodesics are the critical points of the energy functional E(c)=12∫∣c˙∣2E(c) = \frac12\int|\dot c|^2 on the space of paths; the second variation formula is its Hessian, and Morse theory on path spaces relates conjugate points to the topology of loop spaces (Milnor, Morse Theory). A metric also has a Laplace–Beltrami operator Δ=div⁡grad⁡\Delta = \operatorname{div}\operatorname{grad}, and curvature controls its spectrum: Lichnerowicz's theorem says that Ric⁡≥(n−1)k>0\operatorname{Ric} \ge (n-1)k > 0 forces the first non-zero eigenvalue to be at least nknk. Kac asked whether one can "hear the shape of a drum": the spectrum determines dimension, volume and total scalar curvature (via the heat kernel expansion), but not the metric itself (Milnor's isospectral flat tori, 1964). Ricci flow, ∂tg=−2Ric⁡\partial_t g = -2\operatorname{Ric}, is a nonlinear heat equation for the metric.

Physics— Gravity is curvature

General relativity replaces the inner product by a Lorentzian metric of signature (−,+,+,+)(-, +, +, +) on a four-manifold. Freely falling bodies follow timelike geodesics; the Jacobi equation becomes the equation of geodesic deviation, which describes tidal forces — the relative acceleration of two nearby freely falling particles is −R(J,γ˙)γ˙-R(J, \dot\gamma)\dot\gamma; and matter curves spacetime through Einstein's equations Ric⁡−12S g=8πG T\operatorname{Ric} - \frac12 S\, g = 8\pi G\, T. The focusing of geodesics by positive Ricci curvature, the mechanism of Bonnet–Myers, reappears in the Raychaudhuri equation and the Penrose–Hawking singularity theorems. These are theorems about Lorentzian manifolds; their application to the universe rests on physical models and measurements. See relativity.

Algebra— Groups that see curvature

The fundamental group of a closed manifold reflects its curvature. If K<0K < 0, Preissman's theorem says every abelian subgroup of π1(M)\pi_1(M) is infinite cyclic, so Z2⊈π1(M)\Z^2 \not\subseteq \pi_1(M) — the torus cannot carry a metric of negative curvature. Milnor (1968) showed that the growth rate of π1(M)\pi_1(M) is exponential when K<0K < 0 and polynomial when Ric⁡≥0\operatorname{Ric} \ge 0. Gromov abstracted negative curvature into hyperbolic groups, and the Švarc–Milnor lemma — a group acting properly and cocompactly by isometries on a space is quasi-isometric to it — makes the large-scale geometry of the universal cover a property of the group. See geometric group theory.

Probability— Brownian motion and concentration

A Riemannian manifold carries a Brownian motion, generated by 12Δ\frac12\Delta; its heat kernel pt(x,y)p_t(x, y) is the transition density, and for small tt it behaves like (2πt)−n/2e−d(x,y)2/2t(2\pi t)^{-n/2}e^{-d(x,y)^2/2t} (Varadhan's formula recovers the distance from the heat kernel). Curvature controls how random walks spread: lower Ricci bounds imply heat-kernel and isoperimetric estimates. The Lévy–Gromov theorem says that on a manifold with Ric⁡≥(n−1)\operatorname{Ric} \ge (n-1), Lipschitz functions are concentrated around their median at least as strongly as on the unit sphere — the geometric source of the concentration of measure phenomenon in high dimensions. Bakry–Émery and Lott–Sturm–Villani turned "Ricci curvature bounded below" into a property of optimal transport of probability measures.

History & global context

History and global context

  • Intrinsic geometry. Carl Friedrich Gauss, Disquisitiones generales circa superficies curvas (1827): Gaussian curvature, the Theorema Egregium and the local Gauss–Bonnet formula for geodesic triangles. Pierre Ossian Bonnet extended it to curves with geodesic curvature (1848). Non-Euclidean geometry was developed independently by Nikolai Lobachevsky in Kazan (1829) and János Bolyai in Transylvania (1832); Eugenio Beltrami (1868) gave models showing it is consistent relative to Euclidean geometry.
  • Riemann and the tensor calculus. Bernhard Riemann's habilitation lecture (1854, published 1868) introduced Riemannian metrics and the curvature that bears his name. Elwin Christoffel (1869) introduced his symbols; Gregorio Ricci-Curbastro and Tullio Levi-Civita systematised the "absolute differential calculus" (1900), and Levi-Civita introduced parallel transport (1917). Albert Einstein, with the help of Marcel Grossmann, used this calculus for general relativity (1915).
  • Global theorems. Heinz Hopf and Willi Rinow proved their completeness theorem (1931); Sumner Myers proved the Ricci version of Bonnet's diameter bound (1941); Jacques Hadamard (1898, surfaces) and Élie Cartan (1928) proved the Cartan–Hadamard theorem. Shiing-Shen Chern's intrinsic proof of the Gauss–Bonnet theorem in all even dimensions (1944) opened the theory of characteristic classes.
  • Comparison and flows. Harry Rauch's comparison theorem (1951) and Victor Toponogov's triangle comparison (1959) founded comparison geometry, developed further by Aleksandr Alexandrov's school in Leningrad and by Mikhail Gromov. Shing-Tung Yau's solution of the Calabi conjecture (1976–78) made geometric PDE central. Richard Hamilton introduced Ricci flow (1982), and Grigori Perelman's papers of 2002–2003 used it to prove the Poincaré and geometrisation conjectures.
Further reading

Further reading

  • Manfredo P. do Carmo, Riemannian Geometry (1992) — the classic first course: connections, geodesics, curvature, Jacobi fields, Hopf–Rinow, variations of energy and Bonnet–Myers.
  • John M. Lee, Introduction to Riemannian Manifolds (2nd edition, 2018) — careful and complete, with Gauss–Bonnet and the comparison theorems.
  • Peter Petersen, Riemannian Geometry (3rd edition, 2016) — a more advanced text, through comparison geometry and convergence theory.
  • Sylvestre Gallot, Dominique Hulin and Jacques Lafontaine, Riemannian Geometry (3rd edition, 2004) — includes analysis on manifolds and the Laplacian.
  • Jeff Cheeger and David G. Ebin, Comparison Theorems in Riemannian Geometry (1975) — the comparison theorems in depth.
  • John Milnor, Morse Theory (1963) — Part III on the calculus of variations and geodesics.