A few days ago I wrote that the spherical counterpart of the Pythagorean theorem is

cos(*c*) = cos(*a*) cos(*b*)

where sides *a* and *b* are measured in radians. If we’re on a sphere of radius *R* and we measure the sides in terms of arc length rather than in radians, the formula becomes

cos(*c*/*R*) = cos(*a*/*R*) cos(*b*/*R*)

because an of length *x* has angular measure *x*/*R*.

How does this relate to the more familiar Pythagorean theorem on the plane? If *a*, *b*, and *c* are small relative to *R*, then the plane Pythagorean theorem holds approximately:

*c*² ≈ *a*² + *b*².

## Unified Pythagorean Theorem

In this post I’ll present a version of the Pythagorean theorem that holds *exactly* on the sphere and the plane, and on a pseudosphere (hyperbolic space) as well. This is the Unified Pythagorean Theorem [1].

A sphere of radius *R* has curvature 1/*R*². A plane has curvature 0. A hyperbolic plane can have curvature *k* for any negative value of *k*.

Let *A*(*r*) be the area of a circle of radius *r* as measured on a surface of curvature *k*. Here area and radius are measured intrinsic to the surface. Then the Unified Pythagorean Theorem says

*A*(*c*) = *A*(*a*) + *A*(*b*) – *k* *A*(*a*) *A*(*b*) / 2π.

## Plane

If *k* = 0, the final term on the right drops out, and we’re left with the ordinary Pythagorean theorem with both sides of the equation multiplied by π.

## Sphere

On a sphere of radius *R*, the area of a circle of radius *r* is

*A*(*r*) = 2π*R*²(1 – cos(*r*/*R*)).

Note that for small *x*,

1 – cos(*x*) ≈ *x*²/2,

and so *A*(*r*) ≈ π*r*² when *R* ≫ *r*. (Notation explained here.)

When you substitute the above definition for *A* in the unified theorem and plug in *k* = 1/*R*² you get

cos(*c*/*R*) = cos(*a*/*R*) cos(*b*/*R*)

as before.

## Pseudosphere

In a hyperbolic space of curvature *k* < 0, let *R* = 1/√(-*k*). Then the area of a circle of radius *r* is

*A*(*r*) = 2π*R²*(cosh(*r*/*R*) – 1)

As with the spherical case, this is approximately the plane area when *R* ≫ *r* because

cosh(*x*) – 1 ≈ *x*²/2

for small *x*. Substituting the definition of *A* for hyperbolic space into the Universal Pythagorean Theorem reduces to

cosh(*c*/*R*) = cosh(*a*/*R*) cosh(*b*/*R*),

which is the hyperbolic analog of the Pythagorean theorem. Note that this is the spherical Pythagorean theorem with cosines replaced with hyperbolic cosines.

[1] Michael P. Hitchman. Geometry with an Introduction to Cosmic Topology. Theorem 7.4.7. Available here.