NUMERICAL COMPUTATION OF THE DIMENSIONS OF THE COHOMOLOGY OF TWISTS OF IDEAL SHEAVES.

JONATHAN D. HAUENSTEIN, JUAN C. MIGLIORE, CHRIS PETERSON, AND ANDREW J. SOMMESE

Abstract. This article presents several numerical algorithms for computations in sheaf cohomology. Let X be an algebraic set defined by a system of homogeneous multivariate polynomials with coefficients in ℂ. Let C be a union of reduced, irreducible pure-dimensional curve components of X. The first algorithm computes the dimension of the first cohomology of any twist of the ideal sheaf of C. Let D be a reduced set of points on C. The second and third algorithms solve the Riemann-Roch problem of computing the dimension of the space of divisors on C which are linearly equivalent to D. Let S be a reduced, connected, locally Cohen-Macaulay pure-dimensional surface made up of components of X. The fourth algorithm computes the first and second cohomology of any twist of the ideal sheaf of S. Furthermore, as the algorithms are based on homotopy continuation, they take advantage of the natural parallelism underlying continuation methods.

Introduction

Let F_{1}, F_{2}, …, F_{r} be homogeneous multivariate polynomials in the ring R = ℂ[z_{0}, z_{1}, …, z_{n}] and let V = V (F_{1}, F_{2}, …, F_{r}) := {p ∈ ℙ^{n}|F_{i}(p) = 0 for 1 ≤ i ≤ n} be the algebraic set determined by these polynomials. The set V can be decomposed uniquely as a union of varieties V_{1}, V_{2}, …, V_{r} with V_{i} ⊈ V_{j} whenever i ≠ j. Determining the decomposition of an algebraic set into varieties is a fundamental problem in numerical algebraic geometry and serves as crucial data for many other computations. An algorithm, based around numerical homotopy continuation, carries out this decomposition and has been implemented in the numeric/symbolic systems Bertini [1] and PHCpack [8]. The homotopy continuation proceeds by casting a set of equations determining the algebraic set V as a member of a parameterized family of polynomial systems one of which has known isolated solutions. The known solutions are tracked via a predictor/corrector method to points numerically close to V. These points can be further refined to lie within a prescribed tolerance of V.

Date: September 30, 2008. 2000 Mathematics Subject Classification. 13Dxx, 13Pxx, 14Qxx, 14M06, 65H10, 65E05. Key words and phrases. homotopy continuation, numerical algebraic geometry, polynomial

system, linear system, linkage, curve, surface.

The first and fourth authors were partially supported by the Duncan Chair of the University of Notre Dame, NSF DMS-0410047 and NSF DMS-0712910. The second author was partially supported by NSA H98230-07-1-0036. The third author was partially supported by NSF MSPA-MCS-0434351 and AFOSR-FA9550-08-1-0166.

The output of the algorithm is discrete data in the form of a witness point set [6, 7]. For each dimension d, this consists of a set of points W_{d} and a generic codimension d linear space L_{d} with the basic property that within a user-specified tolerance, the points of W_{d} are the intersection of L_{d} with the union of the d-dimensional components of V. With techniques such as monodromy, one can partition W_{d} into subsets which are in one-to-one correspondence with the d-dimensional irreducible components of V. In particular, one can organize the points in W_{d} into sets such that all points of a set lie (numerically) on the same irreducible component.

Thus, given a set of polynomials F_{1}, F_{2}, …, F_{r}, it is possible to produce by numerical methods a collection of subsets of points such that the subsets are pairwise disjoint and are in one to one correspondence with the irreducible components of the algebraic set V = V (F_{1}, F_{2}, …, F_{r}). From these initial subsets of points, it is computationally inexpensive to produce arbitrarily large sets of points lying within a prescribed tolerance of any given irreducible component. This paper exploits the generic nature of these points to build probability 1 algorithms to extract cohomological information concerning unions of 1-dimensional components of algebraic sets and concerning unions of 2-dimensional components of algebraic sets.

The numerical nature of the algorithms and their utilization of homotopy driven methods allows them to be applied in contexts that can be difficult for a purely symbolic approach. For example, if an ideal I determines a non-reduced scheme supported on the union of two reduced curves and a reduced surface, the algorithms presented in this paper allow one to extract cohomological information about either curve individually or about their union or about the surface. This can be done without computing the radical of the ideal nor is it necessary to determine the primary decomposition of the ideal. Furthermore, as the algorithms utilized are numeric, the coefficients of the generators of I are allowed to be numeric as well.

1. Background and Notation

Throughout this paper, R will denote the polynomial ring ℂ[z_{0}, …, z_{n}] with the standard grading. For a sheaf F on ℙ^{n}, we let H^{i}(F) denote the cohomology group H^{i}(ℙ^{n}, F) and let h^{i}(F) denote its dimension as a ℂ-vector space. H_{∗}^{i}(F) will denote the graded R-module ⨁_{t∈ℤ} H^{i}(ℙ^{n}, F(t)), where F(t) = F ⊗ O_{ℙ_{n}}(t). The Hilbert function of F is defined as Hilb(F, t) = h^{0}(F(t)). In this paper, we will need an algorithm to compute values of the Hilbert function of the ideal sheaves of reduced, equidimensional schemes. In other words, we will be interested in values of the Hilbert function of ideal sheaves corresponding to the union of varieties of a fixed dimension. Suppose C = C_{1} ∪ ⋯ ∪ C_{r} is a finite union of varieties. There are several different numeric and symbolic methods for computing the Hilbert function of I_{C}. For instance, through homotopy continuation and the cascade algorithm of Sommese, Verschelde and Wampler [6], one can sample arbitrarily many points with prescribed tolerance on any irreducible component of an algebraic set. In such an algorithm, one can take as input any ideal whose corresponding algebraic set includes C_{1}, C_{2}, …, C_{r} as irreducible components. Through sampling, interpolation and numerical linear algebra, one can compute h^{0}(I_{C}(t)) for any value of t. We will henceforth assume we have access to an algorithm for computing the Hilbert function of any finite union of varieties and that this algorithm can take as input any set of polynomials {F_{1}, …, F_{r}} which generate an ideal whose corresponding algebraic set V (F_{1}, …, F_{r}) includes the varieties C_{1}, …, C_{r} as irreducible components. The algorithm is given formally as follows:

Algorithm 1.1. Hilb({F_{1}, …, F_{r}}, C, t; h_{C}(t))

\underline{Input}:

• F_{1}, … F_{r}:

• C:= An identification of the irreducible components of V (F_{1}, …, F_{r}) that comprise C

• t ∈ ℤ.

\underline{Output}:

• h_{C}(t) := h^{0}(I_{C}(t)).

We will use the notation Hilb(C, t) to mean the value of h^{0}(I_{C}(t)) as obtained through an application of Algorithm 1.1.

2. Algorithm for checking the dimension of any degree component of the first cohomology module of the ideal sheaf of a curve

Let C ⊂ ℙ^{n} be a reduced equidimensional curve, i.e. C has no zero-dimensional components (embedded or not) but can have multiple one-dimensional irreducible components. Let d = deg C.

Recall the following results of Gruson-Lazarsfeld-Peskine [3]:

Theorem 2.1. If X ⊆ ℙ^{n} is a reduced irreducible non-degenerate curve of degree d then I_{X} is (d + 2 − n)-regular.

Corollary 2.2. Let X ⊆ ℙ^{n} be a reduced curve. Suppose X has irreducible components X_{i} of degree d_{i}, and that X_{i} spans a ℙ^{n_{i}} ⊆ ℙ^{n}. Set

m_{i} = \{ \begin{matrix}d_{i} + 2 − n_{i}, & if d_{i} ≥ 2; \\ 1, & if d_{i} = 1 (i.e. if X_{i} is a line). \end{matrix}

If m = ∑ m_{i}, then (1) X is m-regular.

(2) H^{1}(I_{X}(t)) = 0 for t ≥ m − 1.

Remark 2.3. If C is reduced then H^{1}(I_{C}(t)) = 0 for t < 0. If C is both reduced and connected (e.g. C irreducible) then H^{1}(I_{C}(t)) = 0 for t < 1. As a result, if F is a homogeneous polynomial of degree k ≥ m then F annihilates H_{∗}^{1}(I_{C}).

We recall from [5], Section 1.3, several basic exact sequences. Let F be a general form of degree k and let t be any integer. Consider the short exact sequence of sheaves induced by multiplication by F:

(2.1)  0 → I_{C}(t) → I_{C}(t + k) → I_{(C∩F)|F} (t + k) → 0.

Applying the global section functor we obtain the following long exact sequence of cohomology groups:

(2.2)  0 → H^{0}(I_{C}(t)) ⟶^{×F} H^{0}(I_{C}(t + k)) → H^{0}(I_{(C∩F)|F} (t + k))

→ H^{1}(I_{C}(t)) ⟶^{×F} H^{1}(I_{C}(t + k)) → H^{1}(I_{(C∩F)|F} (t + k)) → …

The first two terms represent the homogeneous component of I_{C} in degrees t and t + k, respectively. The third term represents the global sections of the restriction of I_{C}(t + k) to the hypersurface F.

Now consider the short exact sequence of sheaves induced by multiplication by F:

(2.3)  0 → O_{ℙ^{n}}(t) ⟶^{×F} I_{C∩F} (t + k) → I_{(C∩F)|F} (t + k) → 0.

Applying the global section functor and noting that H^{1}(O_{ℙ^{n}}(t)) = 0 for any t, we obtain the following exact sequence of cohomology groups:

(2.4)  0 → H^{0}(O_{ℙ^{n}}(t)) ⟶^{×F} H^{0}(I_{C∩F} (t + k)) → H^{0}(I_{(C∩F)|F} (t + k)) → 0.

We now observe that in sequence (2.2), if deg F ≥ m−t−1 then H^{1}(I_{C}(t+k)) = 0, so for such a choice of deg F we have

(2.5) 0 → H^{0}(I_{C}(t)) ⟶^{×F} H^{0}(I_{C}(t+k)) → H^{0}(I_{(C∩F)|F} (t+k)) → H^{1}(I_{C}(t)) → 0.

Provided that deg F ≥ m − t − 1, from sequence (2.5) we see that

h^{1}(I_{C}(t)) = h^{0}(I_{(C∩F)|F} (t + k)) − h^{0}(I_{C}(t + k)) + h^{0}(I_{C}(t)).

Furthermore, from sequence (2.4) we see that

h^{0}(I_{(C∩F)|F} (t + k)) = h^{0}(I_{C∩F} (t + k)) − h^{0}(O_{ℙ^{n}}(t)).

Combining these results and noting that h^{0}(O_{ℙ^{n}}(t)) = \binom{t+n}{n}, we obtain the following relation between h^{1}(I_{C}(t)) and values of the Hilbert functions of ideal sheaves on ℙ^{n}.

(2.6) h^{1}(I_{C}(t)) = h^{0}(I_{C∩F} (t + k)) − \binom{t + n}{n} − h^{0}(I_{C}(t + k)) + h^{0}(I_{C}(t)).

Using Hilb algorithm from Section 1, the following is an algorithm that produces h^{1}(I_{C}(t)) for all t.

Algorithm 2.4. compute cohomology(C; h^{1})

\underline{Input}:

• C: a reduced curve in ℂ[x_{0}, …, x_{n}].

\underline{Output}:

• h^{1} = [h^{1}(0), …, h^{1}(m − 2)], where h^{1}(t) := h^{1}(I_{C}(t)).

\underline{Algorithm}: Compute A_{m−1} := Hilb(C, m − 1). for t := 0 to m − 2.

Compute A_{t} := Hilb(C, t).

Choose a general linear form, F, of degree m − t − 1.

Compute B_{t} := Hilb(C ∩ F, m − 1) − \binom{t+n}{n}.

Compute h^{1}(t) := B_{t} − A_{m−1} + A_{t}.

Remark 2.5. If the above algorithm gives a value of zero for each t, then C is arithmetically Cohen-Macaulay. More generally, if C is not arithmetically Cohen-Macaulay then the Buchsbaum index of C is defined to be the smallest positive integer k such that the module ⨁_{t∈ℤ} H^{1}(ℙ^{3}, I_{C}(t)) is annihilated by all forms (equivalently a general form) of degree k. The above algorithm can be modified to compute the Buchsbaum index of a reduced curve, but we omit the details.

3. Algorithm for computing the dimension of a linear system on a reduced curve

Consider the short exact sequence of sheaves:

(3.1)  0 → I_{C}(t) → O_{ℙ^{n}}(t) → O_{C}(t) → 0.

Applying the global section functor and noting that H^{1}(O_{ℙ^{n}}(t)) = 0 for any t, we obtain the following exact sequence of cohomology groups:

(3.2)  0 → H^{0}(I_{C}(t)) → H^{0}(O_{ℙ^{n}}(t)) ⟶^{ρ_{t}} H^{0}(O_{C}(t)) → H^{1}(I_{C}(t)) → 0.

Noting that h^{0}(O_{ℙ^{n}}(t)) = \binom{t+n}{n}, we obtain the following formula for h^{0}(O_{C}(t)):

(3.3)  h^{0}(O_{C}(t)) = \binom{t + n}{n} + h^{1}(I_{C}(t)) − h^{0}(I_{C}(t)).

As a consequence, we see that Algorithm 2.4 and Algorithm 1.1 combine to give a solution to the Riemann-Roch problem of computing the dimension of H^{0}(O_{C}(t)) for any t.

Whenever h^{1}(I_{C}(t)) = 0, we can conclude that the restriction map ρ_{t} is surjective. In this setting, any divisor linearly equivalent to a degree t hypersurface section is cut out by some hypersurface. Using the previous section and consequences of the surjectivity of restriction maps, we would now like to develop an algorithm to solve a more general Riemann-Roch problem: let C be a reduced, irreducible curve and let D be a finite set of points on C. What is the dimension of the linear system defined by D on C? In cohomological terms, we are asking for the value of h^{0}(O_{C}(D)). We will assume that D does not contain any singular point of C.

Notice that since D is effective, we immediately have h^{0}(O_{C}(D)) ≥ 1. We will break our problem into two algorithms. The first algorithm will be to determine if h^{0}(O_{C}(D)) = 1. The second algorithm will be to determine the value of h^{0}(O_{C}(D)).

In the first algorithm, our goal is to check whether D′ ∼ D ⟹ D′ = D. In other words, whether D is the only divisor which is linearly equivalent to D. We will use the observation above about the surjectivity of ρ_{t}. Let deg D denote the number of points in D. Let F be a general hypersurface containing D and with deg F ≥ deg D. The integer m is defined in the previous section (it depends on C). Recall that h^{1}(I_{C}(t)) = 0 for all t ≥ m − 1. By the generality assumption, F does not contain C. As a consequence, it cuts out a hypersurface section of C containing D. Let E be the residual to D in this hypersurface section. By the generality assumption of F together with the assumption that deg F ≥ deg D and the assumption that D does not contain any of the singular points of C, it follows that D and E have no points in common and that E is reduced. Now, if D′ is any divisor linearly equivalent to D, then D′ + E is linearly equivalent to a degree m hypersurface section of C, hence is a hypersurface section. The fact that D consists of a reduced set of points means that the general element of the linear system also consists of a reduced set of points. Thus, without loss of generality we may assume that D′ consists of a reduced set of points. To check whether h^{0}(O_{C}(D)) = 1, it is enough to choose a general hypersurface F′ of the same degree as F, containing E, and check whether the residual is equal to D. Since one hypersurface section of C containing E has a reduced residual (namely D), the same is true of the general hypersurface section of C containing E. As a consequence, it is enough to do this for general F′.

Algorithm 3.1. check residual(C, D; trivial)

\underline{Input}:

• C: a reduced curve in ℂ[x_{0}, …, x_{n}].

• D: a reduced set of points on C.

\underline{Output}:

• trivial: True, if h^{0}(O_{C}(D)) = 1, otherwise False.

\underline{Algorithm}: Choose a general hypersurface, F, containing D such that deg F ≥ deg D. Compute the residual, E, to D in the hypersurface section cut out on C by F. Choose a general hypersurface, F′, of the same degree as F, containing E. Compute the residual, D′, to E in the hypersurface section cut out by F′ on C. If D = D′, then trivial := True, else trivial := False.

Using algorithm 3.1, we can compute the value of h^{0}(O_{C}(D)). It relies on the fact that requiring the passage through a general point imposes one condition on a linear system.

Algorithm 3.2. compute dim(C, D; h^{0})

\underline{Input}:

• C: a reduced curve in ℂ[x_{0}, …, x_{n}].

• D: a reduced set of points on C.

\underline{Output}:

• h^{0} = h^{0}(O_{C}(D)).

\underline{Algorithm}: Set h^{0} := 1. while check residual(C, D) = False

Choose a general point P on C.

Set D := D ∪ {P }. Set h^{0} := h^{0} + 1.

Remark 3.3. The same approach gives an alternate approach to compute the Hilbert function of any subvariety X of ℙ^{n}: Check if there is a polynomial of degree t containing X. If so, add a general point X := X ∪ P, and see if there is a polynomial of degree t vanishing on the new X. Keep going until the answer is no, and the number of points is the dimension of (I_{X})_{t}.

4. Algorithm for checking the dimension of any degree component

of the first or second cohomology module of the ideal sheaf or structure sheaf of a surface

When we move to the study of surfaces, it is important to know the behavior of both the first and second cohomology of the ideal sheaf. We will assume that our surface is reduced, connected, locally Cohen-Macaulay and that it is pure dimensional. This will assure that both the first and second cohomology of the ideal sheaf will be zero in all but finitely many degrees.

The computation of the first cohomology is very similar to that for curves however there are some differences. First, the theorem of Gruson, Lazarsfeld and Peskine no longer applies to give a “good” value of m. Instead, we use results of Kwak ([4] Theorem 4.1 and Remark 4.1). Let X be a non-degenerate algebraic surface in ℙ^{n}. Let d = deg X and let e = n − 2 be the codimension of X.

(1) If X ⊂ ℙ^{n} is smooth then I_{X} is (d − e + 1)-regular.

(2) If X is either locally Cohen-Macaulay or irreducible then I_{X} is ((d−e+1)d− 2e − ρ_{a})-regular, where ρ_{a} is the arithmetic genus of a general hyperplane section of X.

So we set m to be either of the values above, depending on whether X is smooth or only locally Cohen-Macaulay. We remark that we have algorithms for computing the arithmetic genus of a curve, so in particular of the hyperplane section of X.

Next, we note that just as with the curve case, the assumption that X is reduced and connected gives that H^{1}(I_{X}(t)) = 0 for t ≤ 0 ([2], Lemma 4.4). Then with the above choice of m, Algorithm 2.4 works by simply replacing the curve C with the surface X. The only additional computation needed in advance is the computation of the arithmetic genus, in order to compute m.

Now we turn to the computation of the second cohomology. We first note that the exact sequence (3.2) still applies with C replaced by X, so the algorithm for the first cohomology of the ideal sheaf, together with the knowledge of the Hilbert function, continues to give us the value of h^{0}(O_{X}(t)) for any t:

h^{0}(O_{X}(t)) = h^{1}(I_{X}(t)) + \binom{n + t}{n} − h^{0}(I_{X}(t)).

We now turn to the computation of h^{2}(I_{X}(t)). Let ω_{X} be the dualizing sheaf of X. First recall that

h^{2}(O_{X}(t)) = h^{0}(ω_{X}(−t)).

To compute the latter, we borrow from liaison theory. Recalling that e is the codimension of X, choose e general hypersurfaces of degree m containing X, and let Y be the intersection of these hypersurfaces. Since I_{X} is generated in degree ≤ m, the complement X′ of X in Y is again a surface. Because of the choice of the degree of the hypersurfaces, this complement is in fact the residual in the sense of liaison theory. Thus for any s we have an exact sequence (cf. [5])

0 → H^{0}(I_{Y} (s)) → H^{0}(I_{X′}(s)) → H^{0}(ω_{X}(s + n + 1 − em)) → 0.

Hence

h^{2}(O_{X}(t)) = h^{0}(ω_{X}(−t)) = h^{0}(I_{X′}(em − t − n − 1)) − h^{0}(I_{Y} (em − t − n − 1)).

Note that this latter dimension is computed by a simple formula, not by numerical methods:

\begin{aligned}h^{0}(I_{Y} (s)) & = & e · \binom{s−m+n}{n} − \binom{e}{2}\binom{s−2m+n}{n} + \binom{e}{3}\binom{s−3m+n}{n} ⋯ \\ & = & ∑_{i=1}^{e}(−1)^{i+1}\binom{e}{i}\binom{s−im+n}{n}. \end{aligned}

An algorithm to compute the Hilbert polynomial of X has already been achieved. Let us denote by P_{X}(t) this polynomial. Since

P_{X}(t) = h^{0}(O_{X}(t)) − h^{1}(O_{X}(t)) + h^{2}(O_{X}(t)),

this gives an algorithm to compute h^{1}(O_{X}(t)) for any t.

Finally, since h^{2}(I_{X}(t)) = h^{1}(O_{X}(t)) (thanks to the exact sequence of sheaves

0 → I_{X}(t) → O_{ℙ^{n}}(t) → O_{X}(t)) → 0

and the corresponding long exact sequence on cohomology), we obtain our algorithm for h^{2}(I_{X}(t)) as desired.

Remark 4.1. Algorithms 3.1 and 3.2 carry over easily to the surface case.

References

[1] D.J. Bates, J.D. Hauenstein, A.J. Sommese, and C.W. Wampler. Bertini: software for numerical algebraic geometry. Available at www.nd.edu/∼sommese/bertini.

[2] D. Eisenbud and S. Goto, Linear free resolutions and minimal multiplicity, J. Alg. 88 (1984), 89–133.

[3] L. Gruson, R. Lazarsfeld, C. Peskine, On a Theorem of Castelnuovo and the Equations Defining Space Curves, Invent. Math. 72 (1983), 491–506.

[4] S. Kwak, Generic projections, the equations defining projective varieties and Castelnuovo regularity, Math. Zeit. 234 (2000), 413–434.

[5] J. Migliore, “Introduction to Liaison Theory and Deficiency Modules,” Birkhäuser, Progress in Mathematics 165, 1998; 224 pp. Hardcover, ISBN 0-8176-4027-4.

[6] A.J. Sommese, J. Verschelde, and C.W. Wampler. Numerical decomposition of the solution sets of polynomials into irreducible components. SIAM J. Numer. Anal. 38 (2001), 2022– 2046.

[7] A.J. Sommese and C.W. Wampler. The numerical solution to systems of polynomials arising in engineering and science. World Scientific, Singapore, 2005.

[8] J. Verschelde. PHCpack: A general-purpose solver for polynomial systems by homotopy continuation. Paper and software available at www.math.uic.edu/∼jan.

Department of Mathematics, University of Notre Dame, Notre Dame, IN 46556

E-mail address: jhauenst@nd.edu
URL: http://www.nd.edu/∼jhauenst/

Department of Mathematics, University of Notre Dame, Notre Dame, IN 46556

E-mail address: migliore.1@nd.edu
URL: http://www.nd.edu/∼jmiglior/

Department of Mathematics, Colorado State University, Fort Collins, CO 80523

E-mail address: peterson@math.colostate.edu
URL: http://www.math.colostate.edu/∼peterson

Department of Mathematics, University of Notre Dame, Notre Dame, IN 46556

E-mail address: sommese@nd.edu
URL: http://www.nd.edu/∼sommese/