From Wikipedia, the free encyclopedia - View original article

This article is about sheaves on topological spaces. For sheaves on a site, see Grothendieck topology and Topos.

In mathematics, a **sheaf** is a tool for systematically tracking locally defined data attached to the open sets of a topological space. The data can be restricted to smaller open sets, and the data assigned to an open set is equivalent to all collections of compatible data assigned to collections of smaller open sets covering the original one. For example, such data can consist of the rings of continuous or smooth real-valued functions defined on each open set. Sheaves are by design quite general and abstract objects, and their correct definition is rather technical. They exist in several varieties such as sheaves of sets or sheaves of rings, depending on the type of data assigned to open sets.

There are also maps (or morphisms) from one sheaf to another; sheaves (of a specific type, such as sheaves of abelian groups) with their morphisms on a fixed topological space form a category. On the other hand, to each continuous map there is associated both a direct image functor, taking sheaves and their morphisms on the domain to sheaves and morphisms on the codomain, and an inverse image functor operating in the opposite direction. These functors, and certain variants of them, are essential parts of sheaf theory.

Due to their general nature and versatility, sheaves have several applications in topology and especially in algebraic and differential geometry. First, geometric structures such as that of a differentiable manifold or a scheme can be expressed in terms of a sheaf of rings on the space. In such contexts several geometric constructions such as vector bundles or divisors are naturally specified in terms of sheaves. Second, sheaves provide the framework for a very general cohomology theory, which encompasses also the "usual" topological cohomology theories such as singular cohomology. Especially in algebraic geometry and the theory of complex manifolds, sheaf cohomology provides a powerful link between topological and geometric properties of spaces. Sheaves also provide the basis for the theory of D-modules, which provide applications to the theory of differential equations. In addition, generalisations of sheaves to more general settings than topological spaces, such as Grothendieck topology, have provided applications to mathematical logic and number theory.

- 1 Introduction
- 2 Formal definitions
- 3 Examples
- 4 Turning a presheaf into a sheaf
- 5 Images of sheaves
- 6 Stalks of a sheaf
- 7 Ringed spaces and locally ringed spaces
- 8 Sheaves of modules
- 9 The étalé space of a sheaf
- 10 Sheaf cohomology
- 11 Sites and topoi
- 12 History
- 13 See also
- 14 Notes
- 15 References
- 16 External links

In topology, differential geometry and algebraic geometry, several structures defined on a topological space (e.g., a differentiable manifold) can be naturally *localised* or *restricted* to open subsets of the space: typical examples include continuous real or complex-valued functions, *n* times differentiable (real or complex-valued) functions, bounded real-valued functions, vector fields, and sections of any vector bundle on the space.

*Presheaves* formalise the situation common to the examples above: a presheaf (of sets) on a topological space is a structure that associates to each open set *U* of the space a set *F*(*U*) of *sections* on *U*, and to each open set *V* included in *U* a map *F*(*U*) → *F*(*V*) giving *restrictions* of sections over *U* to *V*. Each of the examples above defines a presheaf with restrictions of functions, vector fields and sections of a vector bundle having the obvious meaning. Moreover, in each of these examples the sets of sections have additional algebraic structure: pointwise operations make them abelian groups, and in the examples of real and complex-valued functions the sets of sections have even a ring structure. In addition, in each example the restriction maps are homomorphisms of the corresponding algebraic structure. This observation leads to the natural definition of presheaves with additional algebraic structure such as presheaves of groups, of abelian groups, of rings: sets of sections are required to have the specified algebraic structure, and the restrictions are required to be homomorphisms. Thus for example continuous real-valued functions on a topological space form a presheaf of rings on the space.

Given a presheaf, a natural question to ask is to what extent its sections over an open set *U* are specified by their restrictions to smaller open sets *V*_{i} of an open cover of *U*. A presheaf is *separated* if its sections are "locally determined": whenever two sections over *U* coincide when restricted to each of *V*_{i}, the two sections are identical. All examples of presheaves discussed above are separated, since in each case the sections are specified by their values at the points of the underlying space. Finally, a separated presheaf is a **sheaf** if *compatible sections can be glued together*, i.e., whenever there is a section of the presheaf over each of the covering sets *V*_{i}, chosen so that they match on the overlaps of the covering sets, these sections correspond to a (unique) section on *U*, of which they are restrictions. It is easy to verify that all examples above except the presheaf of bounded functions are in fact sheaves: in all cases the criterion of being a section of the presheaf is *local* in a sense that it is enough to verify it in an arbitrary neighbourhood of each point.

On the other hand, it is clear that a function can be bounded on each set of an (infinite) open cover of a space without being bounded on all of the space; thus bounded functions provide an example of a presheaf that in general fails to be a sheaf. Another example of a presheaf that fails to be a sheaf is the *constant presheaf* that associates the same fixed set (or abelian group, or ring,...) to each open set: it follows from the gluing property of sheaves that the set of sections on a disjoint union of two open sets is the Cartesian product of the sets of sections over the two open sets. The correct way to define the constant sheaf *F _{A}* (associated to for instance a set

Maps between presheaves and sheaves (called morphisms) consist of maps between the sets of sections over each open set of the underlying space, compatible with restrictions of sections. If the presheaves or sheaves considered are provided with additional algebraic structure, these maps are assumed to be homomorphisms. Sheaves endowed with nontrivial endomorphisms, such as the action of an algebraic torus or a Galois group, are of particular interest.

Presheaves and sheaves are typically denoted by capital letters, *F* being particularly common, presumably for the French word for sheaves, *faisceau*. Use of script letters such as is also common.

The first step in defining a sheaf is to define a *presheaf*, which captures the idea of associating data and restriction maps to the open sets of a topological space. The second step is to require the normalisation and gluing axioms. A presheaf that satisfies these axioms is a sheaf.

See also: Presheaf (category theory)

Let *X* be a topological space, and let **C** be a category. Usually **C** is the category of sets, the category of groups, the category of abelian groups, or the category of commutative rings. A **presheaf** *F* on *X* is a functor with values in **C** given by the following data:

- For each open set
*U*of*X*, there corresponds an object*F*(*U*) in**C** - For each inclusion of open sets
*V*⊆*U*, there corresponds a morphism res_{V,U}:*F*(*U*) →*F*(*V*) in the category**C**.

The morphisms res_{V,U} are called **restriction morphisms**. If *s* ∈ *F*(*U*), then its restriction res_{V,U}(s) is often denoted *s*|_{V} by analogy with restriction of functions. The restriction morphisms are required to satisfy two properties:

- For every open set
*U*of*X*, the restriction morphism res_{U,U}:*F*(*U*) →*F*(*U*) is the identity morphism on*F*(*U*). - If we have three open sets
*W*⊆*V*⊆*U*, then the composite res_{W,V}o res_{V,U}= res_{W,U}.

Informally, the second axiom says it doesn't matter whether we restrict to *W* in one step or restrict first to *V*, then to *W*.

There is a compact way to express the notion of a presheaf in terms of category theory. First we define the category of open sets on *X* to be the category *O*(*X*) whose objects are the open sets of *X* and whose morphisms are inclusions. Then a **C**-valued presheaf on *X* is the same as a contravariant functor from *O*(*X*) to **C**. This definition can be generalized to the case when the source category is not of the form *O*(*X*) for any *X*; see presheaf (category theory).

If *F* is a **C**-valued presheaf on *X*, and *U* is an open subset of *X*, then *F*(*U*) is called the **sections of F over U**. If

For simplicity, consider first the case where the sheaf takes values in the category of sets. In fact, this definition applies more generally to the situation where the category is a concrete category whose underlying set functor is conservative, meaning that if the underlying map of sets is a bijection, then the original morphism is an isomorphism.

A *sheaf* is a presheaf with values in the category of sets that satisfies the following two axioms:

- (Locality) If (
*U*_{i}) is an open covering of an open set*U*, and if*s*,*t*∈*F*(*U*) are such that*s*|_{Ui}=*t*|_{Ui}for each set*U*_{i}of the covering, then*s*=*t*; and - (Gluing) If (
*U*_{i}) is an open covering of an open set*U*, and if for each*i*a section*s*_{i}∈*F*(*U*_{i}) is given such that for each pair*U*_{i},*U*_{j}of the covering sets the restrictions of*s*_{i}and*s*_{j}agree on the overlaps:*s*_{i}|_{Ui∩Uj}=*s*_{j}|_{Ui∩Uj}, then there is a section*s*∈*F*(*U*) such that*s*|_{Ui}=*s*_{i}for each*i*.

The section *s* whose existence is guaranteed by axiom 2 is called the **gluing**, **concatenation**, or **collation** of the sections *s*_{i}. By axiom 1 it is unique. Sections *s*_{i} satisfying the condition of axiom 2 are often called *compatible*; thus axioms 1 and 2 together state that *compatible sections can be uniquely glued together*. A **separated presheaf**, or **monopresheaf**, is a presheaf satisfying axiom 1.^{[1]}

If **C** has products, the sheaf axioms are equivalent to the requirement that, for any open covering *U*_{i}, the first arrow in the following diagram is an equalizer:

Here the first map is the product of the restriction maps

and the pair of arrows the products of the two sets of restrictions

and

For a separated presheaf, the first arrow need only be injective.

In general, for an open set *U* and open covering (*U*_{i}), construct a category *J* whose objects are the sets *U _{i}* and the intersections

Notice that the empty subset of a topological space is covered by the empty family of sets. The product of an empty family or the limit of an empty family is a terminal object, and consequently the value of a sheaf on the empty set must be a terminal object. If sheaf values are in the category of sets, applying the local identity axiom to the empty family shows that over the empty set, there is at most one section, and applying the gluing axiom to the empty family shows that there is at least one section. This property is called the **normalisation axiom**.

It can be shown that to specify a sheaf, it is enough to specify its restriction to the open sets of a basis for the topology of the underlying space. Moreover, it can also be shown that it is enough to verify the sheaf axioms above relative to the open sets of a covering. Thus a sheaf can often be defined by giving its values on the open sets of a basis, and verifying the sheaf axioms relative to the basis.

Heuristically speaking, a morphism of sheaves is analogous to a function between them. However, because sheaves contain data relative to every open set of a topological space, a morphism of sheaves is defined as a collection of functions, one for each open set, that satisfy a compatibility condition.

Let *F* and *G* be two sheaves on *X* with values in the category **C**. A *morphism* φ : *G* → *F* consists of a morphism φ(*U*) : *G*(*U*) → *F*(*U*) for each open set *U* of *X*, subject to the condition that this morphism is compatible with restrictions. In other words, for every open subset *V* of an open set *U*, the following diagram

is commutative.

Recall that we could also express a sheaf as a special kind of functor. In this language, a morphism of sheaves is a natural transformation of the corresponding functors. With this notion of morphism, there is a category of **C**-valued sheaves on *X* for any **C**. The objects are the **C**-valued sheaves, and the morphisms are morphisms of sheaves. An *isomorphism* of sheaves is an isomorphism in this category.

It can be proved that an isomorphism of sheaves is an isomorphism on each open set *U*. In other words, φ is an isomorphism if and only if for each *U*, φ(*U*) is an isomorphism. The same is true of monomorphisms, but not of epimorphisms. See sheaf cohomology.

Notice that we did not use the gluing axiom in defining a morphism of sheaves. Consequently, the above definition makes sense for presheaves as well. The category of **C**-valued presheaves is then a functor category, the category of contravariant functors from *O*(*X*) to **C**.

Because sheaves encode exactly the data needed to pass between local and global situations, there are many examples of sheaves occurring throughout mathematics. Here are some additional examples of sheaves:

- Any continuous map of topological spaces determines a sheaf of sets. Let
*f*:*Y*→*X*be a continuous map. We define a sheaf Γ(*Y*/*X*) on*X*by setting Γ(*Y*/*X*)(U) equal to the sections*U*→*Y*, that is, Γ(*Y*/*X*)(U) is the set of all continuous functions*s*:*U*→*Y*such that*f ∘ s*=*id*_{U}. Restriction is given by restriction of functions. This sheaf is called the**sheaf of sections**of*f*, and it is especially important when*f*is the projection of a fiber bundle onto its base space. Notice that if the image of*f*does not contain*U*, then Γ(*Y*/*X*)(*U*) is empty. For a concrete example, take*X*=**C**\ {0},*Y*=**C**, and*f(z)*= exp(*z*). Γ(*Y*/*X*)(*U*) is the set of branches of the logarithm on*U*.

- Fix a point
*x*in*X*and an object*S*in a category**C**. The*skyscraper sheaf over*x*with stalk**S*is the sheaf*S*_{x}defined as follows: If*U*is an open set containing*x*, then*S*_{x}(*U*) =*S*. If*U*does not contain*x*, then*S*_{x}(*U*) is the terminal object of**C**. The restriction maps are either the identity on*S*, if both open sets contain*x*, or the unique map from*S*to the terminal object of**C**.

In the following examples *M* is an *n*-dimensional *C*^{k}-manifold. The table lists the values of certain sheaves over open subsets *U* of *M* and their restriction maps.

Sheaf | Sections over an open set U | Restriction maps | Remarks |
---|---|---|---|

Sheaf of j-times continuously differentiable functions , j ≤ k | C^{j}-functions U → R | Restriction of functions. | This is a sheaf of rings with addition and multiplication given by pointwise addition and multiplication. When j = k, this sheaf is called the structure sheaf and is denoted . |

Sheaf of nonzero k-times continuously differentiable functions | Nowhere zero C^{k}-functions U → R | Restriction of functions. | A sheaf of groups under pointwise multiplication. |

Cotangent sheaves Ω^{p}_{M} | Differential forms of degree p on U | Restriction of differential forms. | Ω^{1}_{M} and Ω^{n}_{M} are commonly denoted Ω_{M} and ω_{M}, respectively. |

Sheaf of distributions | Distributions on U | The dual map to extension of smooth compactly supported functions by zero. | Here M is assumed to be smooth. |

Sheaf of differential operators | Finite-order differential operators on U | Restriction of differential operators. | Here M is assumed to be smooth. |

Here are two examples of presheaves that are not sheaves:

- Let
*X*be the two-point topological space {*x*,*y*} with the discrete topology. Define a presheaf*F*as follows:*F*(∅) = {∅},*F*({*x*}) =**R**,*F*({*y*}) =**R**,*F*({*x*,*y*}) =**R**×**R**×**R**. The restriction map*F*({*x*,*y*}) →*F*({*x*}) is the projection of**R**×**R**×**R**onto its first coordinate, and the restriction map*F*({*x*,*y*}) →*F*({*y*}) is the projection of**R**×**R**×**R**onto its second coordinate.*F*is a presheaf that is not separated: A global section is determined by three numbers, but the values of that section over {*x*} and {*y*} determine only two of those numbers. So while we can glue any two sections over {*x*} and {*y*}, we cannot glue them uniquely. - Let
*X*be the real line, and let*F*(*U*) be the set of bounded continuous functions on*U*. This is not a sheaf because it is not always possible to glue. For example, let*U*_{i}be the set of all*x*such that |*x*| <*i*. The identity function*f*(*x*) =*x*is bounded on each*U*_{i}. Consequently we get a section*s*_{i}on*U*_{i}. However, these sections do not glue, because the function*f*is not bounded on the real line. Consequently*F*is a presheaf, but not a sheaf. In fact,*F*is separated because it is a sub-presheaf of the sheaf of continuous functions.

It is frequently useful to take the data contained in a presheaf and to express it as a sheaf. It turns out that there is a best possible way to do this. It takes a presheaf *F* and produces a new sheaf *aF* called the **sheaving**, **sheafification** or **sheaf associated to the presheaf** *F*. *a* is called the **sheaving functor**, **sheafification functor**, or **associated sheaf functor**. There is a natural morphism of presheaves *i* : *F* → *aF* that has the universal property that for any sheaf *G* and any morphism of presheaves *f* : *F* → *G*, there is a unique morphism of sheaves such that . In fact *a* is the adjoint functor to the inclusion functor from the category of sheaves to the category of presheaves, and *i* is the unit of the adjunction. In this way, the category of sheaves turns into Giraud subcategory of presheaves.

Image functors for sheaves |
---|

direct image f_{∗} |

inverse image f^{∗} |

direct image with compact support f_{!} |

exceptional inverse image Rf^{!} |

Main article: Image functors for sheaves

The definition of a morphism on sheaves makes sense only for sheaves on the same space *X*. This is because the data contained in a sheaf is indexed by the open sets of the space. If we have two sheaves on different spaces, then their data is indexed differently. There is no way to go directly from one set of data to the other.

However, it is possible to move a sheaf from one space to another using a continuous function. Let *f* : *X* → *Y* be a continuous function from a topological space *X* to a topological space *Y*. If we have a sheaf on *X*, we can move it to *Y*, and vice versa. There are four ways in which sheaves can be moved.

- A sheaf on
*X*can be moved to*Y*using the direct image functor or the direct image with proper support functor . - A sheaf on
*Y*can be moved to*X*using the inverse image functor or the twisted inverse image functor .

The twisted inverse image functor is, in general, only defined as a functor between derived categories. These functors come in adjoint pairs: and are left and right adjoints of each other, and and are left and right adjoints of each other. The functors are intertwined with each other by Grothendieck duality and Verdier duality.

There is a different inverse image functor for sheaves of modules over sheaves of rings. This functor is usually denoted and it is distinct from . See inverse image functor.

Main article: Stalk (sheaf)

The **stalk** of a sheaf captures the properties of a sheaf "around" a point *x* ∈ *X*. Here, "around" means that, conceptually speaking, one looks at smaller and smaller neighborhood of the point. Of course, no single neighborhood will be small enough, so we will have to take a limit of some sort.

The stalk is defined by

the direct limit being over all open subsets of *X* containing the given point *x*. In other words, an element of the stalk is given by a section over some open neighborhood of *x*, and two such sections are considered equivalent if their restrictions agree on a smaller neighborhood.

The natural morphism *F*(*U*) → *F*_{x} takes a section *s* in *F*(*U*) to its *germ*. This generalises the usual definition of a germ.

A different way of defining the stalk is

where *i* is the inclusion of the one-point space {*x*} into *X*. The equivalence follows from the definition of the inverse image.

In many situations, knowing the stalks of a sheaf is enough to control the sheaf itself. For example, whether or not a morphism of sheaves is a monomorphism, epimorphism, or isomorphism can be tested on the stalks. They also find use in constructions such as Godement resolutions.

Main article: Ringed space

A pair consisting of a topological space *X* and a sheaf of rings on *X* is called a **ringed space**. Many types of spaces can be defined as certain types of ringed spaces. The sheaf is called the **structure sheaf** of the space. A very common situation is when all the stalks of the structure sheaf are local rings, in which case the pair is called a **locally ringed space**. Here are examples of definitions made in this way:

- An
*n*-dimensional*C*^{k}manifold*M*is a locally ringed space whose structure sheaf is an -algebra and is locally isomorphic to the sheaf of*C*^{k}real-valued functions on**R**^{n}. - A complex analytic space is a locally ringed space whose structure sheaf is a -algebra and is locally isomorphic to the vanishing locus of a finite set of holomorphic functions together with the restriction (to the vanishing locus) of the sheaf of holomorphic functions on
**C**^{n}for some*n*. - A scheme is a locally ringed space that is locally isomorphic to the spectrum of a ring.
- A semialgebraic space is a locally ringed space that is locally isomorphic to a semialgebraic set in Euclidean space together with its sheaf of semialgebraic functions.

Let be a ringed space. A **sheaf of modules** is a sheaf such that on every open set *U* of *X*, is an -module and for every inclusion of open sets *V* ⊆ *U*, the restriction map is a homomorphism of -modules.

Most important geometric objects are sheaves of modules. For example, there is a one-to-one correspondence between vector bundles and locally free sheaves of -modules. Sheaves of solutions to differential equations are D-modules, that is, modules over the sheaf of differential operators.

A particularly important case are abelian sheaves, which are modules over the constant sheaf . Every sheaf of modules is an abelian sheaf.

Further information: Coherent sheaf

The condition that a module is finitely generated or finitely presented can also be formulated for a sheaf of modules. is **finitely generated** if, for every point *x* of *X*, there exists an open neighborhood *U* of *x*, a natural number *n* (possibly depending on *U*), and a surjective morphism of sheaves . Similarly, is **finitely presented** if in addition there exists a natural number *m* (again possibly depending on *U*) and a morphism of sheaves such that the sequence of morphisms is exact. Equivalently, the kernel of the morphism is itself a finitely generated sheaf.

These, however, are not the only possible finiteness conditions on a sheaf. The most important finiteness condition for a sheaf is coherence. is **coherent** if it is of finite type and if, for every open set *U* and every morphism of sheaves (not necessarily surjective), the kernel of φ is of finite type. is **coherent** if it is coherent as a module over itself. Note that coherence is a strictly stronger condition than finite presentation: is always finitely presented as a module over itself, but it is not always coherent. For example, let *X* be a point, let be the ring *R* = **C**[*x*_{1}, *x*_{2}, ...] of complex polynomials in countably many indeterminates. Choose *n* = 1, and for the morphism φ, take the map that sends every variable to zero. The kernel of this map is not finitely generated, so is not coherent.

In the examples above it was noted that some sheaves occur naturally as sheaves of sections. In fact, all sheaves of sets can be represented as sheaves of sections of a topological space called the *étalé space*, from the French word étalé [etale], meaning roughly "spread out". If *F* is a sheaf over *X*, then the **étalé space** of *F* is a topological space *E* together with a local homeomorphism *π* : *E* → *X* such that the sheaf of sections of *π* is *F*. *E* is usually a very strange space, and even if the sheaf *F* arises from a natural topological situation, *E* may not have any clear topological interpretation. For example, if *F* is the sheaf of sections of a continuous function *f* : *Y* → *X*, then *E* = *Y* if and only if *f* is a local homeomorphism.

The étalé space *E* is constructed from the stalks of *F* over *X*. As a set, it is their disjoint union and *π* is the obvious map that takes the value *x* on the stalk of *F* over *x* ∈ *X*. The topology of *E* is defined as follows. For each element *s* of *F*(*U*) and each *x* in *U*, we get a germ of *s* at *x*. These germs determine points of *E*. For any *U* and *s* ∈ *F*(*U*), the union of these points (for all *x* ∈ *U*) is declared to be open in *E*. Notice that each stalk has the discrete topology as subspace topology. Two morphisms between sheaves determine a continuous map of the corresponding étalé spaces that is compatible with the projection maps (in the sense that every germ is mapped to a germ over the same point). This makes the construction into a functor.

The construction above determines an equivalence of categories between the category of sheaves of sets on *X* and the category of étalé spaces over *X*. The construction of an étalé space can also be applied to a presheaf, in which case the sheaf of sections of the étalé space recovers the sheaf associated to the given presheaf.

This construction makes all sheaves into representable functors on certain categories of topological spaces. As above, let *F* be a sheaf on *X*, let *E* be its étalé space, and let *π* : *E* → *X* be the natural projection. Consider the category **Top**/*X* of topological spaces over *X*, that is, the category of topological spaces together with fixed continuous maps to *X*. Every object of this space is a continuous map *f* : *Y* → *X*, and a morphism from *Y* → *X* to *Z* → *X* is a continuous map *Y* → *Z* that commutes with the two maps to *X*. There is a functor Γ from **Top**/*X* to the category of sets that takes an object *f* : *Y* → *X* to (*f*^{−1}*F*)(*Y*). For example, if *i* : *U* → *X* is the inclusion of an open subset, then Γ(*i*) = (*i*^{−1}*F*)(*U*) agrees with the usual *F*(*U*), and if *i* : {*x*} → *X* is the inclusion of a point, then Γ({*x*}) = (*i*^{−1}*F*)({*x*}) is the stalk of *F* at *x*. There is a natural isomorphism

- ,

which shows that *E* represents the functor Γ.

*E* is constructed so that the projection map π is a covering map. In algebraic geometry, the natural analog of a covering map is called an étale morphism. Despite its similarity to "étalé", the word étale [etal] has a different meaning both in French and in mathematics. In particular, it is possible to turn *E* into a scheme and π into a morphism of schemes in such a way that π retains the same universal property, but π is *not* in general an étale morphism because it is not quasi-finite. It is, however, formally étale.

The definition of sheaves by étalé spaces is older than the definition given earlier in the article. It is still common in some areas of mathematics such as mathematical analysis.

Main article: Sheaf cohomology

It was noted above that the functor preserves isomorphisms and monomorphisms, but not epimorphisms. If *F* is a sheaf of abelian groups, or more generally a sheaf with values in an abelian category, then is actually a left exact functor. This means that it is possible to construct derived functors of . These derived functors are called the *cohomology groups* (or *modules*) of *F* and are written . Grothendieck proved in his *Tohoku* paper that every category of sheaves of abelian groups contains enough injective objects, so these derived functors always exist.

However, computing sheaf cohomology using injective resolutions is nearly impossible. In practice, it is much more common to find a different and more tractable resolution of *F*. A general construction is provided by Godement resolutions, and particular resolutions may be constructed using soft sheaves, fine sheaves, and flabby sheaves (also known as *flasque sheaves* from the French *flasque* meaning flabby). As a consequence, it can become possible to compare sheaf cohomology with other cohomology theories. For example, the de Rham complex is a resolution of the constant sheaf on any smooth manifold, so the sheaf cohomology of is equal to its de Rham cohomology. In fact, comparing sheaf cohomology to de Rham cohomology and singular cohomology provides a proof of de Rham's theorem that the two cohomology theories are isomorphic.

A different approach is by Čech cohomology. Čech cohomology was the first cohomology theory developed for sheaves and it is well-suited to concrete calculations. It relates sections on open subsets of the space to cohomology classes on the space. In most cases, Čech cohomology computes the same cohomology groups as the derived functor cohomology. However, for some pathological spaces, Čech cohomology will give the correct but incorrect higher cohomology groups. To get around this, Jean-Louis Verdier developed hypercoverings. Hypercoverings not only give the correct higher cohomology groups but also allow the open subsets mentioned above to be replaced by certain morphisms from another space. This flexibility is necessary in some applications, such as the construction of Pierre Deligne's mixed Hodge structures.

A much cleaner approach to the computation of some cohomology groups is the Borel–Bott–Weil theorem, which identifies the cohomology groups of some line bundles on flag manifolds with irreducible representations of Lie groups. This theorem can be used, for example, to easily compute the cohomology groups of all line bundles on projective space.

In many cases there is a duality theory for sheaves that generalizes Poincaré duality. See Grothendieck duality and Verdier duality.

Main articles: Grothendieck topology and Topos

André Weil's Weil conjectures stated that there was a cohomology theory for algebraic varieties over finite fields that would give an analogue of the Riemann hypothesis. The only natural topology on such a variety, however, is the Zariski topology, but sheaf cohomology in the Zariski topology is badly behaved because there are very few open sets. Alexandre Grothendieck solved this problem by introducing Grothendieck topologies, which axiomatize the notion of *covering*. Grothendieck's insight was that the definition of a sheaf depends only on the open sets of a topological space, not on the individual points. Once he had axiomatized the notion of covering, open sets could be replaced by other objects. A presheaf takes each one of these objects to data, just as before, and a sheaf is a presheaf that satisfies the gluing axiom with respect to our new notion of covering. This allowed Grothendieck to define étale cohomology and l-adic cohomology, which eventually were used to prove the Weil conjectures.

A category with a Grothendieck topology is called a *site*. A category of sheaves on a site is called a *topos* or a *Grothendieck topos*. The notion of a topos was later abstracted by William Lawvere and Miles Tierney to define an elementary topos, which has connections to mathematical logic.

The first origins of **sheaf theory** are hard to pin down — they may be co-extensive with the idea of analytic continuation^{[clarification needed]}. It took about 15 years for a recognisable, free-standing theory of sheaves to emerge from the foundational work on cohomology.

- 1936 Eduard Čech introduces the
*nerve*construction, for associating a simplicial complex to an open covering. - 1938 Hassler Whitney gives a 'modern' definition of cohomology, summarizing the work since J. W. Alexander and Kolmogorov first defined
*cochains*. - 1943 Norman Steenrod publishes on homology
*with local coefficients*. - 1945 Jean Leray publishes work carried out as a prisoner of war, motivated by proving fixed point theorems for application to PDE theory; it is the start of sheaf theory and spectral sequences.
- 1947 Henri Cartan reproves the de Rham theorem by sheaf methods, in correspondence with André Weil (see De Rham-Weil theorem). Leray gives a sheaf definition in his courses via closed sets (the later
*carapaces*). - 1948 The Cartan seminar writes up sheaf theory for the first time.
- 1950 The "second edition" sheaf theory from the Cartan seminar: the sheaf space (
*espace étalé*) definition is used, with stalkwise structure. Supports are introduced, and cohomology with supports. Continuous mappings give rise to spectral sequences. At the same time Kiyoshi Oka introduces an idea (adjacent to that) of a sheaf of ideals, in several complex variables. - 1951 The Cartan seminar proves the Theorems A and B based on Oka's work.
- 1953 The finiteness theorem for coherent sheaves in the analytic theory is proved by Cartan and Jean-Pierre Serre, as is Serre duality.
- 1954 Serre's paper
*Faisceaux algébriques cohérents*(published in 1955) introduces sheaves into algebraic geometry. These ideas are immediately exploited by Hirzebruch, who writes a major 1956 book on topological methods. - 1955 Alexander Grothendieck in lectures in Kansas defines abelian category and
*presheaf*, and by using injective resolutions allows direct use of sheaf cohomology on all topological spaces, as derived functors. - 1956 Oscar Zariski's report
*Algebraic sheaf theory* - 1957 Grothendieck's
*Tohoku*paper rewrites homological algebra; he proves Grothendieck duality (i.e., Serre duality for possibly singular algebraic varieties). - 1957 onwards: Grothendieck extends sheaf theory in line with the needs of algebraic geometry, introducing: schemes and general sheaves on them, local cohomology, derived categories (with Verdier), and Grothendieck topologies. There emerges also his influential schematic idea of 'six operations' in homological algebra.
- 1958 Godement's book on sheaf theory is published. At around this time Mikio Sato proposes his hyperfunctions, which will turn out to have sheaf-theoretic nature.

At this point sheaves had become a mainstream part of mathematics, with use by no means restricted to algebraic topology. It was later discovered that the logic in categories of sheaves is intuitionistic logic (this observation is now often referred to as Kripke–Joyal semantics, but probably should be attributed to a number of authors). This shows that some of the facets of sheaf theory can also be traced back as far as Leibniz.

**^**Tennison, B. R. (1975),*Sheaf theory*, Cambridge University Press, MR 0404390

- Bredon, Glen E. (1997),
*Sheaf theory*, Graduate Texts in Mathematics**170**(2nd ed.), Berlin, New York: Springer-Verlag, ISBN 978-0-387-94905-5, MR 1481706 (oriented towards conventional topological applications) - Godement, Roger (1973),
*Topologie algébrique et théorie des faisceaux*, Paris: Hermann, MR 0345092 - Grothendieck, Alexander (1957), "Sur quelques points d'algèbre homologique",
*The Tohoku Mathematical Journal. Second Series***9**: 119–221, ISSN 0040-8735, MR 0102537 - Hirzebruch, Friedrich (1995),
*Topological methods in algebraic geometry*, Classics in Mathematics, Berlin, New York: Springer-Verlag, ISBN 978-3-540-58663-0, MR 1335917 (updated edition of a classic using enough sheaf theory to show its power) - Kashiwara, Masaki; Schapira, Pierre (1994),
*Sheaves on manifolds*, Grundlehren der Mathematischen Wissenschaften [Fundamental Principles of Mathematical Sciences]**292**, Berlin, New York: Springer-Verlag, ISBN 978-3-540-51861-7, MR 1299726(advanced techniques such as the derived category and vanishing cycles on the most reasonable spaces) - Mac Lane, Saunders; Moerdijk, Ieke (1994),
*Sheaves in Geometry and Logic: A First Introduction to Topos Theory*, Universitext, Berlin, New York: Springer-Verlag, ISBN 978-0-387-97710-2, MR 1300636 (category theory and toposes emphasised) - Martin, W. T.; Chern, S. S.; Zariski, Oscar (1956), "Scientific report on the Second Summer Institute, several complex variables",
*Bulletin of the American Mathematical Society***62**(2): 79–141, doi:10.1090/S0002-9904-1956-10013-X, ISSN 0002-9904, MR 0077995 - Serre, Jean-Pierre (1955), "Faisceaux algébriques cohérents",
*Annals of Mathematics. Second Series*(The Annals of Mathematics, Vol. 61, No. 2)**61**(2): 197–278, doi:10.2307/1969915, ISSN 0003-486X, JSTOR 1969915, MR 0068874^{Scholar search} - Swan, R. G. (1964),
*The Theory of Sheaves*, University of Chicago Press (concise lecture notes) - Tennison, B. R. (1975),
*Sheaf theory*, Cambridge University Press, MR 0404390 (pedagogic treatment)

- Sheaf at PlanetMath.org.