Tensors &
the metric
A vector is an arrow. A covector — a 1-form — is a stack of sheets that counts how many the arrow pierces. A tensor is the machine that takes both and returns a number, linearly in every slot. The metric tensor is the master key: it turns any vector into its covector, lifting and lowering indices, bending the plain distance formula into the curved landscape of general relativity.
Linearity is the contract.
A tensor is a multilinear machine. Feed it some vectors and some covectors; it hands you back a single number. "Multilinear" is the contract: if you scale one input by 3, the output scales by 3 too. If you add two inputs in one slot, the results add. No curving, no mixing between slots — each slot is independently linear.
You've already seen the simplest tensor of each kind. A vector v is a (1,0) tensor: you feed it a covector (a stack of sheets from the last act) and it hands you the number of sheets it pierces. A covector ω is a (0,1) tensor: you feed it a vector and count the sheets it punches through. You've been doing tensor evaluation all along — you just didn't call it that.
In the widget below, the orange arrow is a vector and the glowing purple sheets are a covector (a 1-form). Drag the arrowhead: the sheets tally how many the arrow pierces, and the readout shows you ω(v) — the tensor contraction — as an exact count. When the arrow runs along the sheets it crosses none; turn it across and the count climbs.
Drag the arrowhead. constant form: uniform sheets (a flat covector). rotated: the sheets tilt 60°. dense: more sheets per unit — a stronger covector. Same arrow, different tally.
p up, q down: the whole menagerie.
A tensor is classified by its valence — written (p, q). p counts the covector slots (also called "contravariant" slots — they get an upper index); q counts the vector slots ("covariant" — lower index). A (0,2) tensor eats two vectors and hands back a number. A (1,1) tensor eats one covector and one vector. A (2,0) tensor eats two covectors.
In a basis {e₁, e₂, …, eₙ}, you can write any tensor as a rectangular array of np+q numbers — the components. A (0,2) tensor in 2-D becomes a 2×2 matrix. Feed it two vectors u = u¹e₁ + u²e₂ and v = v¹e₁ + v²e₂:
The magic is that the components Tij transform in exactly the right way when you change basis so that the output number never changes. That invariance — the output number is the same in all coordinate systems — is the entire point of calling something a tensor. Components are bookkeeping; the tensor is the geometry.
Let's make this concrete. The matrix below is a (0,2) tensor T with components T11=2, T12=1, T21=1, T22=3. With vectors u=(1,0) and v=(0,1):
A matrix and a (0,2) tensor are not the same thing. A matrix is just a grid of numbers; it only becomes a tensor when you specify how its components transform under a change of basis. Most matrices physicists write are tensors — but the distinction matters when coordinates are curved or when you're on a manifold where "change of basis" is position-dependent.
g is the dictionary between vectors and their sheets.
Now meet the star of the show. The metric tensor g is a symmetric (0,2) tensor. Feed it two vectors u and v; it returns their inner product: g(u,v) = u·v. In flat Euclidean space with Cartesian coordinates, gij is just the identity matrix, and the inner product is the familiar dot product. On a curved surface, g warps with position — and that warping is the curvature.
But g does more than measure angles and lengths. It acts as a translator between vectors (arrows) and covectors (sheets). Given a vector v, the metric produces a covector v♭ (read "v-flat") by:
This is the key picture: a non-identity metric warps the grid. An arrow that was perpendicular to a family of sheets (in flat space) may no longer be — because the metric has rotated or stretched what "perpendicular" means. Drag the vector below and watch two things at once: the orange arrow, and the teal sheets that represent its dual covector v♭. In the identity metric the arrow and the sheets agree perfectly; switch to the anisotropic or shear metric and they diverge — the sheets rotate relative to the arrow, and the inner product g(v,v) is no longer |v|² in the Euclidean sense.
Drag the arrowhead. flat: g=identity, sheets perpendicular to arrow, g(v,v)=|v|². anisotropic: x-direction is "longer" than y — sheets bunch up horizontally, g(v,v) ≠ |v|². shear: axes are not perpendicular, so the dual sheets rotate away from the arrow. This is exactly what happens near a massive body: g is non-identity, curved by gravity.
The connection to the-shape-of-distance: when we wrote ds = λ|dz| for the stereographic metric, we were saying gij = λ²δij — a conformally flat metric. The single number λ captures everything because the metric is isotropic (equal stretch in all directions). The Poincaré disc and the sphere are also conformally flat, but with different λ. A generic Riemannian metric is not isotropic — gij can have off-diagonal entries, and then the dual sheets genuinely tilt away from the vector.
One number. One pitch. Three rooms.
Contract a covector with a vector — or evaluate g(u,v) — and you get a single number. That number has a pitch. Sweep the vector through all angles and lengths and the inner product traces out a landscape of pitches: high when the vectors are aligned and both long, zero when they're perpendicular, negative when they oppose. Here's the full scene: drag a vector, and a second "probe" vector sweeps automatically. The pitch you hear is g(v, probe) computed in real time under whichever metric you've chosen — an honest inner product, nothing faked.
In the flat metric the landscape is a clean sinusoid of pitch vs. angle — your high-school dot product. Under the shear metric the landscape tilts: the maximum is no longer at 0°, because the metric has a preferred direction. You can hear the metric warp the geometry.
Drag the orange vector. The teal probe sweeps around it continuously. The pitch of the tone tracks g(v, probe) — positive = high, zero = silent, negative = low. Under shear the tone's peak shifts away from angle 0° — the metric has bent the notion of "aligned".
Geometer: g(u,v) is an inner product — symmetric, bilinear, positive-definite. It defines lengths, angles, and distances on the manifold. Physicist: in GR the metric field gμν(x) is a tensor that encodes both the clock rate and the ruler length at every event in spacetime — it is gravity. Musician: contracting two vectors through a fixed metric is a bilinear form — its "output landscape" is a quadratic surface. The surface's tilt, stretch, and twist are exactly audible as a shift of the pitch peak. One contract, three descriptions.
Forms are antisymmetric tensors. Curvature is a (1,3) tensor. Gravity is the metric.
You've now seen the language in which the rest of the wing is written. Every object we've met is a tensor:
The metric is the pivot of the whole wing. Without it you can do differential topology — forms, exterior derivative, Stokes — all basis-free. But to measure lengths, raise and lower indices, or define the Hodge dual and the Laplacian, you need g. The metric is what turns a bare manifold into a Riemannian manifold with a genuine geometry, and into a Lorentzian manifold (one eigenvalue negative) with a causal structure — past and future.
The next and final act — When Curvature Became Gravity — takes all of this: the forms language, the curvature tensor, the metric, and the connection, and shows how Einstein assembled them into a single sentence that says matter tells space how to curve and space tells matter how to move.
After Tristan Needham, Visual Differential Geometry and Forms (Princeton, 2021), Act V, Ch. 33. A lesson in the Manifold wing of Reverbs.