In mathematics, specifically in complex analysis and algebraic geometry, the Riemann-Roch theorem is an important tool in the computation of the dimension of the space of meromorphic functions with prescribed zeroes and allowed poles. It relates the complex analysis of a connected compact Riemann surface with the surface's purely topological genus g, in a way that can be carried over into purely algebraic settings.

Initially proved as Riemann's inequality, the theorem reached its definitive form for Riemann surfaces after work of Riemann's student Roch in the 1850s. It was later generalized to algebraic curves, to higher-dimensional varieties and beyond.

Table of contents
1 Some data
2 Statement of the theorem
3 A long road of generalisation

Some data

We start with a connected compact Riemann surface of genus g, and a fixed point P on it. We may look at functions having a pole only at P. There is an increasing sequence of vector spaces: functions allowed at most a simple pole at P, functions allowed at most a double pole at P, a triple pole, ... The corresponding dimensions are all finite. In case g=0 we can see that the sequence starts 1, 2, 3, ... when we begin with constant functions, then simple poles and so on (this can be read off from the theory of partial fractions). Conversely if this sequence starts 1, 2 then g must be zero (the so-called Riemann sphere). In the theory of elliptic functions it is shown that this sequence is 1, 1, 2, 3, 4, 5 ... ; and this characterises the case g=1. For g > 2 there is no set initial segment; but we can say what the tail of the sequence must be. We can also see why g = 2 is somewhat special.

The reason that the results take the form they do goes back to the formulation (Roch's part) of the theorem: as a difference of two such dimensions. When one of those can be set to zero, we get an exact formula, which is linear in the genus and the degree (i.e. number of degrees of freedom). Already the examples given allow a reconstruction in the shape

dimension - correction = degree - g + 1.

Here the correction is 1 for g = 1 and degree 0, 1; and otherwise 0. The full theorem explains the correction as the dimension associated to a further, 'complementary' space of functions.

Statement of the theorem

In now-accepted notation, the statement of Riemann-Roch for curves is

l(D) - l(K - D) = deg(D) - g + 1.

This applies to all divisors D, elements of the free abelian group on the points of the curve. A divisor is thus a finite linear combination of points of the curve with integral coefficients. deg(D) denotes the degree of the divisor D, i.e. the sum of the coefficients occurring in D. The number l(D) is the one we're interested in: the dimension (over C) of the space of meromorphic functions on the curve whose poles at every point are not worse than the corresponding coefficient in D. (If the coefficient in D at a certain point is negative, then we require our meromorphic functions to have a zero of at least that order at the point.)

The divisor K is a distinguished, fixed divisor, known as the canonical divisor of the curve. Even if you don't know anything about K, you know at least that l(D-K) ≥ 0, i.e.

l(D) ≥ deg(D) - g + 1
which is Riemann's inequality mentioned earlier.

The theorem above is correct for all compact connected Riemann surfaces. The formula also holds true for all non-singular projective algebraic curves over an algebraically closed field k. Here l(D) denotes the dimension (over k) of the space of rational functions on the curve whose poles at every point are not worse than the corresponding coefficient in D.

To relate this to our example above, we need some information about K: for g = 1 we can take K = 0, while for g = 0 we can take K = -2P (any P). In general K has degree 2g - 2. As long as D has degree at least 2g- 1 we can be sure that the correction term is 0.

Going back therefore to the case g = 2 we see that the sequence mentioned above is 1, 1, ?, 2, 3, ... . It is shown from this that the ? term of degree 2 is in fact 2, characterising degree 2 Riemann surfaces as hyperelliptic curves. For g > 2 it is no longer enough to know the genus: some surfaces will be hyperelliptic and some not.

A long road of generalisation

The Riemann-Roch theorem for curves was proved for Riemann surfaces by Riemann-Roch in the 1850s and for algebraic curves by F. K. Schmidt in 1929. It is is foundational in the sense that the subsequent theory for curves tries to refine the information it yields.

There are versions in higher dimensions. Their formulation depends on splitting the theorem into two parts. One, which would now be called Serre duality, interprets the l(K - D) term as a dimension of a first cohomology group; with l(D) the dimension of a zeroth cohomology group, the left-hand side of the theorem becomes a Euler characteristic, and the right-hand side a computation of it as a degree corrected according to the topology of the Riemann surface.

In algebraic geometry of dimension two such a formula was found by the geometers of the Italian school. So matters rested before about 1950.

An n-dimensional generalisation was found and proved by Friedrich Hirzebruch, as an application of characteristic classes in algebraic topology. At about the same time Jean-Pierre Serre was giving the general form of Serre duality, as we now know it.

Alexander Grothendieck proved a far-reaching generalization in 1957, now known as the Grothendieck-Riemann-Roch theorem. His work reinterprets Riemann-Roch not as a theorem about a variety, but about a morphism between two varieties.

Finally a general version was found in algebraic topology, too. These developments were essentially all carried out between 1950 and 1960. After that the Atiyah-Singer index theorem opened another route to generalization.

What results is that the Euler characteristic (of a coherent sheaf) is something reasonably computable as a left-hand side. If one is interested, as is usually the case, in just one summand within the alternating sum, further arguments must be brought to bear.