Sheaf (mathematics)

Sheaf (mathematics)

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 theirs, 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, several 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, generalizations of sheaves to more general settings than topological spaces have provided applications to mathematical logic and number theory.



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: section sets 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 Vi 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 Vi, 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 Vi, 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 a ring,...) to each open set: it follows from the gluing property of sheaves that sections on a disjoint union of two open sets is the Cartesian product of the sections over the two open sets. The correct way to define the constant sheaf FA (associated to for instance a set A) on a topological space is to require sections on an open set U to be continuous maps from U to A equipped with the discrete topology; then in particular FA(U) = A for connected U.

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 \mathcal{F} is also common.

Formal definitions

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 normalization and gluing axioms. A presheaf that satisfies these axioms is a sheaf.


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 with values in C is 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 VU, there corresponds a morphism resV,U : F(U) → F(V) in the category C.

The morphisms resV,U are called restriction morphisms. The restriction morphisms are required to satisfy two properties.

  • For every open set U of X, the restriction morphism resU,U : F(U) → F(U) is the identity morphism on F(U).
  • If we have three open sets WVU, then the composite resW,V o resV,U = resW,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 C is a concrete category, then each element of F(U) is called a section. A section over X is called a global section. A common notation (used also below) for the restriction resV,U(s) of a section is s|V. This terminology and notation is by analogy with sections of fiber bundles or sections of the étalé space of a sheaf; see below. F(U) is also often denoted Γ(U,F), especially in contexts such as sheaf cohomology where U tends to be fixed and F tends to be variable.


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:

  1. (Local identity) If (Ui) is an open covering of an open set U, and if s,tF(U) are such that s|Ui = t|Ui for each set Ui of the covering, then s = t; and
  2. (Gluing) If (Ui) is an open covering of an open set U, and if for each i there is a section si of F over Ui such that for each pair Ui,Uj of the covering sets the restrictions of si and sj agree on the overlaps: si|UiUj = sj|UiUj, then there is a section sF(U) such that s|Ui = si for each i.

The section s whose existence is guaranteed by axiom 2 is called the gluing, concatenation, or collation of the sections si. By axiom 1 it is unique. Sections si 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]

Assume now that C is a general category but that C has products. Then the sheaf axioms can be expressed as the exactness of the sequence

F(U) \rightarrow \prod_{i} F(U_i) {{{} \atop \longrightarrow}\atop{\longrightarrow \atop {}}} \prod_{i, j} F(U_i \cap U_j),\

where the first map is the product of the restriction maps


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




A presheaf F is a sheaf precisely when for each open covering of an open set U by a family Ui of open subsets of U, the first arrow in the diagram above is an equalizer. For a separated presheaf, the first arrow need only be injective.

In general, construct a category J whose objects are the sets Ui and the intersections UiUj and whose morphisms are the inclusions of UiUj in Ui and Uj. The sheaf axiom is that the limit of the functor F restricted to the category J must be isomorphic to F(U).

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 normalization 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 φ : GF 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 : YX be a continuous map. We define a sheaf Γ(Y / X) on X by setting Γ(Y / X)(U) equal to the sections UY, that is, Γ(Y / X)(U) is the set of all functions s : UY such that fs = idU. 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={\mathbb C} \backslash \{0\}, Y={\mathbb 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 Sx defined as follows: If U is an open set containing x, then Sx(U) = S. If U does not contain x, then Sx(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.

Sheaves on manifolds

In the following examples M is an n-dimensional Ck-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 \mathcal{O}^j_M, jk Cj-functions UR 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 \mathcal{O}_M.
Sheaf of nonzero k-times continuously differentiable functions \mathcal{O}_X^\times Nowhere zero Ck-functions UR Restriction of functions. A sheaf of groups under pointwise multiplication.
Cotangent sheaves ΩpM Differential forms of degree p on U Restriction of differential forms. Ω1M and ΩnM are commonly denoted ΩM and ωM, respectively.
Sheaf of distributions \mathcal{DB} 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 \mathcal{D}_M Finite-order differential operators on U Restriction of differential operators. Here M is assumed to be smooth.

Presheaves that are not sheaves

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 Ui be the set of all x such that |x| < i. The identity function f(x) = x is bounded on each Ui. Consequently we get a section si on Ui. 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.

Turning a presheaf into a sheaf

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 : FaF that has the universal property that for any sheaf G and any morphism of presheaves f : FG, there is a unique morphism of sheaves \tilde f : aF \rightarrow G such that f = \tilde f i. 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.

Images of sheaves