Math
Curvature and parallel transport
Carry an arrow around a loop without ever turning it, and it comes back turned. The angle is the curvature the loop enclosed - Gauss–Bonnet - and it is why a Foucault pendulum knows its latitude. Circles of latitude, geodesic triangles, a plane and a saddle, each with its closed form beside the measured turn.

What happens
Slide an arrow along a curve without ever turning it within the surface: that is parallel transport, and it is one rule - move, then lay the arrow back flat on the surface. On a flat sheet it comes back exactly as it left. On a sphere it does not. The angle it has turned through is the holonomy, and Gauss–Bonnet says it equals the curvature the loop enclosed: for a circle of latitude φ, 2π(1 − sin φ), which is the area of the cap it surrounds on the unit sphere. Watch the arrow travel: it leaves a copy of itself every few degrees, and when it comes home it sits beside a pale ghost of how it set out. The pink arc between them is the number. A geodesic - a great circle - is a curve that does not turn, so along one the arrow keeps a constant angle to the path, and a geodesic triangle turns it by exactly its angle excess: the octant with three right angles gives π/2, three names for one number. The saddle bends the other way, its curvature is negative, and the same procedure brings the arrow back turned the opposite way; the plane has nothing to enclose and turns it by nothing, at any size. The number is measured twice from the same arrow: against the frame it started in, which can only see the turn modulo 2π, and against the direction of travel, which keeps count - so the equator, which turns the arrow by a full circle, reads 2π rather than nothing. The two agree to fourteen digits. The transport is first order, the error halving with every doubling of the step, so the measured turn misses the closed form by a few parts in ten thousand and that is discretisation, not a defect. The same formula hangs in the Pantheon: a Foucault pendulum at latitude φ turns through 2π·sin φ in a sidereal day, and 2π(1 − sin φ) - the holonomy - is what is left over.
Equations used in the module
Equations transport: step along the curve, then project the arrow back into the tangent plane and renormalise - no rotation is ever applied Gauss–Bonnet: holonomy = ∫K dA over the region on the left of the loop; ∫κ_g ds + Σ exterior angles = 2π − ∫K dA circle of latitude φ: 2π(1 − sin φ), the cap's area on the unit sphere; the equator turns the arrow by a full 2π geodesic triangle: excess E = 2·atan2(a·(b×c), 1 + a·b + b·c + c·a) = area; the octant with three right angles gives π/2 saddle z = (x² − y²)/2: K = −1/(1 + ρ²)², dA = √(1 + ρ²) ρ dρ dθ, so a circle of radius r encloses −2π(1 − 1/√(1 + r²)) plane: K = 0, holonomy 0 for every loop unwrapped: ±2π (the path's own turn) + Σ Δ(angle of the arrow to the path); agrees with the frame reading modulo 2π to 1e-14 convergence: first order - error 8.22e-4 / 4.12e-4 / 2.06e-4 / 1.03e-4 / 5.16e-5 at 1250 / 2500 / 5000 / 10000 / 20000 steps, ratio 2.00 Foucault: 2π·sin φ per sidereal day; 2π·sin φ + 2π(1 − sin φ) = 2π; Pantheon 48.87°: 31.8 h per turn measured (20 000 steps): 45°: 1.840354 against 1.840302; saddle r = 1: −1.840354 against −1.840302; octant: 1.570796327 exactly


