Gentleintroduction
Gentleintroduction
Gentleintroduction
Jakob Hansen
Abstract
1
I aim here to give an accessible introduction to the theory of sheaves on graphs,
with hints at its potential applications.
2 What is a sheaf?
Sheaves are the canonical mathematical structure for attaching data to spaces. In al-
gebraic topology and geometry, this can take many sophisticated, subtle forms, but
we will deal with a simple version adapted to graphs and simplicial complexes. For
our purposes, a graph is a collection of vertices and edges, together with an incidence
relation, which tells us when a given vertex is incident to a given edge. That is:
Definition 2.1 (Graphs). A graph G consists of a set V of vertices and a set E of edges,
with an incidence relation P, where we write v P e if v is one of the endpoints of the
edge e. There may be more than one edge joining a given pair of vertices.
The vector spaces F(v) and F(e) are called the stalks of F over v or e. The linear
maps Fv P e are sometimes called restriction maps. In agricultural terminology, a sheaf
is a collection of stalks of grain bound together by twine; in mathematical terminology,
a sheaf is a collection of stalks of data bound together by linear maps. The script letter
F is frequently used to denote a sheaf; it is short for faisceau, the French word for sheaf.
The maps Fv P e encode consistency requirements for our data. Whenever consis-
tency can be verified locally, we have a sheaf structure. The simplest example of this is
checking whether a real-valued function on the vertices of a connected graph is con-
stant. This consistency condition can be verified locally: one only needs to check that
the function is constant across each edge. Sheaf theory vastly generalizes this sort of
local consistency checking.
2
F1 a F2 a
F(1) F(a) F(2)
1 a 2
F1 d F2 b
F(d) d b F(b)
F4 d F3 b
4 c 3
F(4) F(c) F(3)
F4 c F3 c
Definition 2.3 (Sections). Let F be a sheaf on a graph G, and let W be a subset of the
vertices of G. A section of F over W is an choice of vectors xv ∈ F(v) for each v ∈ W,
such that whenever v and v 0 are vertices incident to an edge e, we have Fv P e (xv ) =
Fv 0 P e (xv 0 ).
Note that there is a natural way to add any two sections of F over W, simply by
adding their values in each stalk. Because the restriction maps are linear, the sum
of two sections is again a section. Similarly, there is a natural scalar multiplication
on sections, computed stalkwise. This means that the sections of F over W form a
vector space. This space is variously denoted F(W), Γ (W; F), or H0 (W; F). The space
Γ (G; F) of sections of F over all vertices in G is called the space of global sections of F.
Further, note that a global section (xv ) uniquely determines values xe on the edges, by
xe = Fv P e (xv ) = Fv 0 P e (xv 0 ).
Exercise. Verify these claims, that is, show that Γ (W; F) satisfies the axioms of a vector
space, with the specified addition and scalar multiplication operations.
Remark. The term section comes from “cross section.” One often thinks of a sheaf as
having a horizontal portion given by the underlying graph, with a vertical dimension
added by the stalks. A section consists of choosing a consistent copy of the graph
within the stalks of the sheaf, or a cross section of the vertical part of the sheaf.
Example. Let V be a vector space. The constant sheaf V on G has the stalks V(v) = V
for all vertices v and V(e) = V for all edges e, and the restriction maps Fv P e all equal
to the identity. For any subset of vertices W, Γ (W; V) consists of the locally constant
3
R
1 1
u
R R
1 1
v w
R R R
−1 1
Every sheaf has at least one global section: the constant section which is zero ev-
erywhere. (This is a consequence of the fact that the space of global sections of a sheaf
is a vector space, and every vector space has a zero element.) However, many sheaves
have no other global sections.
Example. Consider the sheaf in Figure 2. Suppose there is a global section taking value
xu on the vertex u. The condition to be a global section then means xv = xu due to the
upper left edge, and similarly xw = xu due to the upper right edge. But the bottom
edge forces xw = −xv , meaning xu = −xu , which can only be satisfied if all three
values are zero.
Definition 2.4 (Cochains). Let F be a sheaf over a graph G. There are two spaces of
cochains of F. A zero-dimensional cochain (or 0-cochain) is a choice of a vector xv ∈
F(v) for every vertex v; a one-dimensional cochain (or 1-cochain) is a choice of xe ∈
4
F(e) for every edge. The space of zero-dimensional cochains is denoted C0 (G; F), and
the space of one-dimensional cochains is denoted C1 (G; F).
In mathematical terms, the space of 0-cochains is the direct sum of the stalks over
vertices, and the space of 1-cochains is the direct sum of the stalks over edges. That is,
M M
C0 (G; F) = F(v), C1 (G; F) = F(e).
v∈V e∈E
The space of 0-cochains differs from the space of global sections because we do not
impose any consistency requirements on our choices of vectors in each stalk. There-
fore, the space of global sections is a subspace of the space of 0-cochains. In fact, the
space of global sections is the kernel of a particular linear map from the space of 0-
cochains to the space of 1-cochains. This map is called the coboundary map, and is de-
fined as follows: First choose an orientation for the edges of G. This means selecting a
direction for each edge, and yields an incidence number [v : e] ∈ {±1} for each incident
vertex-edge pair v P e so that each edge has both a positive and a negative incidence
number associated to it. This is done by letting [v : e] = +1 if e is directed toward v
and −1 if it is directed away from it.
The coboundary map δ : C0 (G; F) → C1 (G; F) is given on vertex stalks by δ(xv ) =
P
v P e [v : e]Fv P e (xv ), and extends by linearity to all of C0 (G; F). When necessary,
we will disambiguate the sheaf to which δ pertains by a superscript: δF . We can also
define δ by its output on each edge stalk: (δx)e = Fv P e xv − Fu P e xu , where e is an
edge oriented from u to v.
Example. The coboundary map of the constant sheaf R on G, given in matrix form, is
the transpose of the (signed) incidence matrix of G.
Example. Consider again the sheaf in Figure 2. We can represent C0 (G; F) by R3 , and
we can also represent C1 (G; F) by R3 . If we orient each edge so that it is negatively
incident to the vertex with higher number, the coboundary map is given by the matrix
1 −1 0
δ= 1 0 −1 .
0 −1 −1
Note that this matrix has a trivial nullspace, which reflects the fact that the only global
section of this sheaf is the zero section.
Remark. The term “cochain” comes from algebraic topology. One of its major tools,
homology, deals with understanding “chains” in a topological space, or formal sums
5
of geometrically simple subspaces. For technical reasons, it is often useful to dualize
this theory, producing cohomology, which studies cochains, or linear functionals on
the space of chains. The cochains of sheaves on graphs are algebraically similar to these
cohomological cochains, which is what provoked this use of terminology. Indeed,
sheaf cohomology was a major motivation for the development of sheaf theory.
This cohomological connection is what leads to the common terminology of the
zeroth cohomology (or degree-zero cohomology) for H0 (G; F) = ker δ. We also consider
the cokernel of δ, which is the quotient space C1 (G; F)/(im δ). This space is denoted
H1 (G; F), and is called the first (or degree-one) cohomology of the sheaf F. As a quotient
space, its direct interpretation is less natural than that of the space of global sections of
F. However, the space im δ is analogous to the cut space of a graph. The cut space of a
graph is the space of all real-valued functions on edges spanned by indicator functions
of cut sets. A quick argument shows that this is equal to the space im BT , where B is
the signed incidence matrix of the graph. This is the matrix B with columns indexed
by edges of the graph and rows indexed by vertices of the graph, where Bve = [v : e].
The coboundary matrix is a sort of generalized incidence matrix, so we can interpret
im δ as the space generated by “cuts” of the data communication structure described
by F.
The incidence matrix is most famous in spectral graph theory as a building block
for the graph Laplacian: L = BBT . In order to use spectral methods with sheaves, we
build a Laplacian out of the coboundary map. To do this, we use the inner product on
the stalks (and hence on the spaces of cochains) to construct an adjoint δ∗ to δ. If we
think of δ as simply a block matrix by identifying our vector spaces with the standard
Rn , this adjoint δ∗ is simply the transpose δT .
Proposition 2.1 (Structure of the sheaf Laplacian). If F is a sheaf on a graph G, the ma-
trix of the sheaf Laplacian LF has a symmetric block structure, with the columns divided into
one partition for each vertex of G. If v1 and v2 are distinct and both incident to the edge e,
then the entry in the (v2 , v1 ) block is −Fv∗2 P e Fv1 P e , and the entry in the (v1 , v1 ) block is
P
v1 P e Fv1 P e Fv1 P e .
∗
Exercise. Show this is true by writing down the block matrices for δ and δ∗ and calcu-
6
Figure 3: Illustration of a graph incidence matrix and a sheaf coboundary matrix.
3 Operations on sheaves
3.1 Sheaf morphisms
When we define mathematical objects, we usually want to know how to define rela-
tionships between them. Often the objects themselves are less important than the maps
we can build between them. Linear algebra is a prime example of the supremacy of
maps over objects. Vector spaces, as objects, exist so that we can study linear trans-
formations. Linear maps are far more interesting than vector spaces themselves. We
can take this to an extreme and forget all the internal structure of our objects, looking
instead at the structure of the relationships between different objects of the same type.
This is the point of view of category theory, which serves as a deep organizing prin-
ciple for much of mathematics. A category is formally a collection of objects together
with morphisms between those objects.
The same is true for sheaves. Sheaves have more structure than vector spaces,
enough to be interesting on their own, but relationships between sheaves are still es-
sential. This is why we define mappings or morphisms between sheaves. All we need
7
to deal with to define maps between two sheaves on the same graph is linear algebra.
Definition 3.1 (Sheaf morphisms). Let F and G be two sheaves on a graph G. A mor-
phism or map ϕ : F → G consists of a linear map ϕv : F(v) → G(v) for each vertex v
of G and a linear map ϕe : F(e) → G(e) for each edge e, such that these linear maps
commute with the restriction maps. That is, for each incident vertex-edge pair (v, e),
we have ϕe ◦ Fv P e = Gv P e ◦ ϕv .
This condition is easy to visualize in a diagram showing the relevant vector spaces
and maps between them. The diagram commutes if any two paths along the arrows
represent equal maps.
ϕv
F(v) G(v)
Fve Gve
ϕe
F(e) G(e)
A sheaf morphism can be represented by a large commuting diagram with many
squares like the one above. The fact that the two sheaves are over the same graph
means that the structure of a morphism is easy to define. The individual maps defin-
ing a sheaf morphism assemble into two maps ϕ0 : C0 (G; F) → C0 (G; G) and ϕ1 :
C1 (G; F) → C1 (G; G), and the fact that the maps on stalks commute with restric-
tion maps means that the amalgamated maps commute with the coboundary maps:
δG ◦ ϕ0 = ϕ1 ◦ δF .
Because sheaf morphisms are made out of linear maps, they share a number of
properties with them. Every linear map has a kernel, and so does every sheaf mor-
phism. What may be surprising is that the kernel of a sheaf morphism is a sheaf. The
stalks are easy to define: (ker ϕ)(v) = ker ϕv and (ker ϕ)(e) = ker ϕe . We can restrict
Fv P e to ker ϕv , getting a map Fv P e |ker ϕv : ker ϕe → F(e). If the image of this map lies
in ker ϕe , we have produced a restriction map Fv0 P e : (ker ϕ)(v) → (ker ϕ)(e). Sup-
pose x ∈ ker ϕv . Then ϕv x = 0, so Gv P e ϕv x = 0. Because Gv P e ◦ ϕv = ϕe ◦ Fv P e ,
we know ϕe Fv P e x = 0. But this means that Fv P e x ∈ ker ϕe , as required.
Remark. The sort of argument used above is known as a diagram chase. They can become
quite complicated, and proofs of this kind are usually best communicated by drawing a
commutative diagram, and pointing at various objects in the diagram while discussing
the fate of an element as it is transferred through various maps.
A similar diagram chasing argument shows that sheaf morphisms can be com-
posed just like linear maps. Composing the stalkwise maps of two sheaf morphisms
yields another sheaf morphism. Similarly, the image of a sheaf morphism is again a
sheaf.
8
Exercise. Show that if ϕ : F → G and ψ : G → H are sheaf morphisms, then the
collection of linear maps (ψσ ◦ ϕσ )σ defines a sheaf morphism F → H.
However, if we care about the inner product structure of the stalks of a sheaf, there
is a finer distinction to be made. Invertible matrices preserve all algebraic properties
of the vector spaces they map between, but they do not in general preserve the inner
product structure. Similarly, sheaf isomorphisms do not automatically preserve the
inner product structure. A unitary sheaf isomorphism is one where the maps on stalks
are unitary maps of inner product spaces; that is, these maps must preserve the inner
product.
Just as the space of linear maps from one vector space to another forms a vector
space itself (consider the space of m×n matrices as the space of linear maps Rn → Rm ,
for instance), so does the space of sheaf morphisms. The sum of two sheaf morphisms,
taken by adding the component maps on stalks, is again a sheaf morphism. Scalar
multiples of sheaf morphisms are again sheaf morphisms as well. We denote the space
of sheaf morphisms F → G by Hom(F, G). That is, ϕ ∈ Hom(F, G) if it is a sheaf
morphism φ : F → G.
Exercise. Show that Hom(F, G) is a vector space under the operations described above.
Example. Let F be a sheaf on G, and consider the set of morphisms from the constant
sheaf R to F. A linear map ϕv : R → F(v) is completely determined by ϕv (1), so
we may think of a morphism ϕ : R → F as a collection of elements xv ∈ F(v) and
xe ∈ F(e). The commutativity condition for being a sheaf morphism is that Fve ◦ ϕv =
ϕe ◦ Rv P e . Since Rv P e is the identity, we have Fv P e xv = xe . In other words, a
morphism from R to F is the same as a choice of xv ∈ F(v) and xe ∈ F(e) so that
9
Fv P e xv = xe whenever v P e. This is precisely the same information that we get from
a global section of F! Therefore, we have
Proposition 3.2 (Global sections are functorial). Let ϕ : F → G be a sheaf morphism. This
morphism induces a natural linear map Γ (ϕ) : Γ (G; F) → Γ (G; G). Further, if ψ : G → A is
another sheaf morphism, we have Γ (ψ ◦ ϕ) = Γ (ψ) ◦ Γ (ϕ).
Proof. Note that ϕ induces a map ϕ0 : C0 (G; F) → C0 (G; G) that commutes with the
coboundaries of F and G. In particular, then, if x ∈ ker δF , then δG ϕ0 (x) = ϕ1 δF x = 0,
so ϕ0 (x) ∈ ker δG . This means that ϕ0 induces a map Γ (ϕ) : Γ (G; F) → Γ (G; G) by
restriction to ker δF . It is obvious that ψ0 ◦ ϕ0 = (ψ ◦ ϕ)0 , and since Γ (ψ),Γ (ϕ), and
Γ (ψ ◦ ϕ) are obtained by restriction of these maps, we get Γ (ψ ◦ ϕ) = Γ (ψ) ◦ Γ (ϕ).
Remark. The operation of taking global sections takes a sheaf and produces a vector
space. The fact that this operation behaves nicely with respect to sheaf morphisms and
linear maps means that taking global sections is functorial. It translates information
from the category of sheaves to the category of vector spaces in a way that respects
relationships between sheaves.
Remark. The isomorphism Hom(R, F) ' Γ (G; F) is natural in the sense that it com-
mutes with sheaf morphisms. That is, given a sheaf morphism F → G, we get mor-
phisms Hom(R, F) → Hom(R, G) and Γ (G; F) → Γ (G; G), and the square
'
Hom(R, F) Γ (G; F)
'
Hom(R, G) Γ (G; G)
commutes. This means that for every purpose which we can understand categorically,
we can consider Hom(R, F) and Γ (G; F) to be “the same thing.”
Exercise. What is the linear map Hom(R, F) → Hom(R, G) in the diagram above?
10
ϕ
ker(ϕ) F G
0 1
0 R R
0 1 0
1 0
R R 0
0 1 0
0 1
0 R R
Γ ϕ might not be. That is, G might have global sections that do not come from global
sections of F. This is a bit surprising: when a linear map T : Rn → Rm is surjective,
we can always solve an equation of the form T (x) = y.
Example. Consider the two sheaves F and G in Figure 4. The sheaf F is the constant
sheaf R, while G has vertex stalks R and edge stalk 0. There is an easily constructed
sheaf morphism ϕ : F → G which is the identity on vertex stalks and the zero map
on the edge stalk. Note that H0 (G; F) is one-dimensional, consisting of constant func-
tions, while H0 (G; G) ' C0 (G; G) is two-dimensional. Thus Γ ϕ : H0 (G; F) → H0 (G; G)
cannot be surjective.
Homological algebra is one approach to understanding why this breaks down: why
is it not always possible to “lift” a global section over a surjective sheaf morphism
F → G?
We first observe that this strangeness only happens with surjective sheaf morphisms.
An injective sheaf morphism induces an injective map on global sections. Somehow,
injectivity is a local condition, while surjectivity requires us to integrate global infor-
mation.
The central concept of homological algebra is the exact sequence of maps. This is a
series of sheaf morphisms or linear transformations
ϕk−1 ϕk ϕk+1
··· Fk−1 Fk Fk+1 ···
11
where the image of one morphism is equal to the kernel of the subsequent morphism.
That is, im ϕi−1 = ker ϕi for all i. A special sort of such morphism is a short exact
sequence. This has five terms, two of which are zero.
i q
0 H F G 0
Such a sequence is very special. It must be the case that H = ker q and G = F/H. Short
exact sequences therefore encode a sheaf F, a subsheaf H thereof, and the quotient
G = F/H.
We can take the global sections of each sheaf in a short exact sequence of sheaves,
and we get a sequence
i q
0 H0 (G; H) H0 (G; F) H0 (G; G) 0.
i q d i
0 H0 (G; H) H0 (G; F) H0 (G; G) H1 (G; H) ···
This now says that im q = ker d. If we know d, we can see which sections of G lift
to sections of F by checking if they lie in ker d. In particular, if H1 (G; H) is the zero
vector space, ker d must in fact be all of H0 (G; G), so every section of G can be lifted to
a section of F. In short:
In fact, sections lift precisely when d is the zero map. We say that the connecting
morphism d measures the failure of q to induce a surjective map on sections. The exis-
tence of the map d relies on the quotienting performed in the construction of H1 : it is
only well-defined as a map to equivalence classes.
Example. Continuing the simple example in Figure 4, the kernel of ϕ is the sheaf
ker(ϕ) with vertex stalks 0 and edge stalk R. Then H0 (G; ker(ϕ)) = 0 and H1 (G; ker(ϕ)) '
R, which illustrates the possibility that Γ φ may not be surjective.
12
This result gives one interpretation for the first cohomology of a sheaf, in terms of
what it says about relationships between different sheaves. While these concepts may
seem even more hopelessly abstract than the already-abstract notions of sheaves and
morphisms, the reader should rest assured that the exposition here is far simpler than
nearly any other explanation of sheaf cohomology or homological algebra.
These tools are leveraged in [9, 10] to build a sheaf-based theory of signal sampling.
The signals one desires to sample are sections s of a sheaf F, and but we are only able
to observe the sections ϕ(s) of some sheaf G induced by a sheaf morphism ϕ : F → G.
When H1 (ker ϕ) is zero, sampling makes sense: every sampled signal corresponds to
at least one actual signal. When H0 (ker ϕ) is zero, perfect reconstruction of signals is
possible.
Homological algebra is a vast subject, with branching realms of application, and
this discussion only scratches the surface of it. The interested reader might consult
a book like [2], but a warning is in order: a typical prerequisite for reading and un-
derstanding a book on homological algebra is to have read and understood a book on
homological algebra.
13
We can lift cochains of F on H to cochains of f∗ F on G, and in fact sections of F lift
to sections of f∗ F.
Proposition 3.4. There exist linear maps (f∗ )i : Ci (H; F) → Ci (G; f∗ F) that commute with
∗F
the coboundary maps of F and f∗ F. That is, δf ◦ (f∗ )0 = (f∗ )1 ◦ δF .
Proof. For any vertex v of H, there is an obvious map F(v) → f∗ F(v 0 ) whenever f(v 0 ) =
v. We can assemble these into a map F(v) → f(v 0 )=v f F(v ). Then combining
∗ 0
L
∗ )0 : C0 (H; F) =
v∈H F(v) →
L
these maps
L over verticesv of H, we get a map (f
f(v 0 )=v f F(v ) = v 0 ∈G f F(v ) = C (G; f F). A completely analogous
∗ 0 ∗ 0 0 ∗
L L
v∈H
argument furnishes a map (f∗ )1 : C1 (H; F) → C1 (G; f∗ F). Another, perhaps simpler,
way to think of this map is as letting ((f∗ )i x)σ = xf(σ) .
∗F
Commutativity will be satisfied if for every edge e of H, we have (δf (f∗ )0 x)e =
((f∗ )1 δF x)e . The right hand side is equal to (δF x)f(e) , while the left hand side is equal
to
14
Proof. We will prove this in the case that f does not send any edge to a vertex, although
it is true in general. This means that f∗ F(v) ' f(u)=v F(u) for every vertex v of H,
L
and similarly for edges. Let x be a section of F and define (f∗ x)v = f(u)=v xu . This
L
and
M
f∗ Fv 0 P e (f∗ x)v 0 = Fu 0 P e xu 0 .
f(u 0 )=v 0
f(h)=e
For each edge h of G with f(h) = e, the corresponding terms in the sum are equal,
because this is the condition for x to be a section of F. Thus f∗ x is a section of f∗ F.
Conversely, this same equation shows that the condition for some y to be a section of
f∗ F is precisely the requirement that it be in the image of f∗
There are two operations which combine two sheaves on the same graph into a
single sheaf.
Definition 3.4 (Direct sum). If F and G are sheaves on a graph G, their direct sum F ⊕ G
is the sheaf with stalks (F⊕G)(v) = F(v)⊕G(v), (F⊕G)(e) = F(e)⊕G(e) and restriction
maps (F ⊕ G)v P e = Fv P e ⊕ Gv P e .
One should think of the direct sum of two sheaves as combining two different data
structures over the graph G in an independent way. Neither influences the other. A
section of F ⊕ G is equivalent to a pair of a section of F and a section of G.
Example. The zero sheaf 0, which assigns the zero vector space to each vertex and
edge, is an identity for the direct sum. That is, for any sheaf F, F ' 0 ⊕ F.
Definition 3.5 (Tensor product). If F and G are sheaves on a graph G, their tensor prod-
uct F ⊗ G is the sheaf with stalks (F ⊗ G)(v) = F(v) ⊗ G(v), (F ⊗ G)(e) = F(e) ⊗ G(e)
and restriction maps (F ⊗ G)v P e = Fv P e ⊗ Gv P e .
The tensor product is harder to interpret. Words like “twisting” and “multiplica-
tion” tend to come up when trying to describe this operation. One way to think of this
is that it is possible to “add” and “multiply” sheaves, and these operations satisfy at
least a distributive property: F ⊗ (G ⊕ H) ' (F ⊗ G) ⊕ (F ⊗ H).
Example. The constant sheaf R is an identity of sorts for the tensor product. That is,
for any sheaf F, F ' R ⊗ F.
15
Exercise. Show why R ⊗ F ' F for any sheaf F.
One can naturally identify the coboundary map of F ⊕ G with the direct sum of the
respective coboundary maps; the analogous statement does not hold for the cobound-
ary map of F ⊗ G. (This is because direct sums of vector spaces do not distribute over
tensor products.)
Why care about these operations? One reason to like pushforwards is that they cor-
respond naturally to a sort of abstraction or modularization process. Suppose we have
a sheaf on a graph G that represents some system, made of atomic pieces. We might
want to view this system “from farther away,” by treating subsystems—represented
by induced subgraphs of the graph—as black boxes connected together. The resulting
graph G 0 of the zoomed-out system has one vertex for each subsystem, with the same
edges between systems. This means that there is a homomorphism G → G 0 , which
sends all vertices and edges in a subsystem to the vertex representing them in G 0 ; the
pushforward over this homomorphism represents the black-boxed system.
The exact semantics of pushforwards and other sheaf operations will depend on
the choices made in modeling the system. They are tools that offer formal ways to
represent things we might do to systems—ways to combine or transform them.
If F and G are the constant sheaf R on their respective graphs, then F G is the
constant sheaf R on GH.
Remark. The notation F G is adapted from the topological world, where the most
important product is the Cartesian product, and this “outer product” of sheaves is
frequently useful.
16
u1 f u2
(v1 , f)
v1
(v1 , u1 ) (v1 , u2 )
(e, u1 )
(e, u2 )
e
(v2 , u1 ) (v2 , u2 )
v2
(v2 , f)
Remark. One important fact about sheaves is that the algebraic structure can make
parts of the underlying graph “invisible.” We can effectively delete a vertex or edge
by assigning it the zero vector space. This is an extension of the way that one may
delete edges from a graph by setting their weights to zero. Note that this then allows
for “half-open” edges that are incident to only one vertex.
Although the sheaf Laplacian is not a complete invariant of sheaves, it does con-
vey a lot of information about the sheaf. One obvious piece of data preserved by the
Laplacian is the space of global sections, since ker LF = ker δ. The smallest nontrivial
17
p p
1 2 2 2
R R R R R R
1 0 0
p
2
R R R R
0 0 0 0
0 0
eigenvalue of a sheaf Laplacian gives us information about how close the sheaf is to
having more global sections. This is a consequence of the Courant-Fischer theorem,
which states that for an n × n symmetric matrix A with eigenvalues λ1 6 λ2 6 · · · λn ,
hy, Ayi
λk = min max .
dim Y=k y∈Y,y6=0 hy, yi
Applying this to the sheaf Laplacian, with k = dim(H0 (G; F)) + 1, we see that Y must
contain H0 (G; F) as well as the eigenvector of LF corresponding to λk , which mini-
mizes
hy, LF yi kδyk2
=
hy, yi kyk2
subject to the constraint that y is orthogonal to H0 (G; F).
The spectrum of the sheaf Laplacian interacts in interesting ways with the sheaf
operations described above. These often generalize results known for the spectra of
graph Laplacians.
A common question in spectral graph theory is how the spectrum of a graph changes
as we manipulate the graph. These tend to be the easiest results to extend to spectral
sheaf theory, since the analogous theorem statements are usually immediately evident.
A useful concept when studying the spectra of related matrices is the interlacing
of eigenvalues.
Definition 4.1. Let A, B be n×n matrices with real spectra, and let λ1 6 λ2 6 · · · 6 λn
be the eigenvalues of A and µ1 6 µ2 6 · · · 6 µn be the eigenvalues of B. We say the
18
eigenvalues of A are (p, q)-interlaced with the eigenvalues of B if for all k, λk−p 6
µk 6 λk+q . (We let λk = λ1 for k < 1 and λk = λn for k > n.)
We now show that the eigenvalues of sheaf Laplacians are interlaced after deleting
a subgraph.
Theorem 4.2 (Eigenvalue interlacing for the sheaf Laplacian). Let F be a sheaf on a graph
G, C a collection of edges of G, and let H = G \ C denote G with the edges in C removed.
Let G be the sheaf with the same vertex stalks as F but with all edge stalks over edges not in C
set to zero. Then the eigenvalues of LH are (t, 0)-interlaced with the eigenvalues of LG , where
t = codim H0 (G; G) = dim C0 (G; F) − dim H0 (G; G).
Proof. This is a standard sort of argument in spectral graph theory. We use Rayleigh
quotients to bound eigenvalues in terms of the quadratic form defined by the Lapla-
cian. Notice that LH = LG −LC , where LC is the Laplacian of G. By the Courant-Fischer
theorem, we have
hy, LG yi − hy, LC yi
µk = min max
dim Y=k y∈Y,y6=0 hy, yi
hy, LG yi
> min max
dim Y=k y∈Y∩H0 (G;G),y6=0 hy, yi
hy, LG yi
> min max = λk−t
dim Y=k−t y∈Y,y6=0 hy, yi
and
hy, LG yi
λk = min max
dim Y=k y∈Y,y6=0 hy, yi
hy, LG yi − hy, LC yi
> min max = µk .
dim Y=k y∈Y,y6=0 hy, yi
19
f∗ F(u1 ) = F(v)
G
f∗ F(u2 ) = F(v)
f
F(v)
Proof. Consider the map f∗ : Ci (H; F) → Ci (G; f∗ F) given by (f∗ x)v = xf(v) . If x is an
eigenvector of LF with eigenvalue λ, we have
X
(Lf∗ F f∗ x)v = ((f∗ F)∗ve (f∗ F)ve (f∗ x)v − (f∗ F)∗ve (f∗ F)we f∗ xw )
v P e,w P e
X
∗ ∗
= Ff(v)e Ff(v)e xf(v) −Ff(v)e Ff(w)e xf(w) = (LF x)f(v) = λxf(v) = λ(f∗ x)v .
f(v) P e,f(w) P e
Note that this strengthens the result that sections of F lift to sections of f∗ F to state
that when f is a covering map, eigenvectors of LF lift to eigenvectors of Lf∗ F .
Cartesian products of sheaves have spectra completely determined by their factors.
This is a generalization of a result for Cartesian products of graphs.
Proposition 4.4. Let F be a sheaf on a graph G and G a sheaf on a graph H. The Laplacian
spectrum of the sheaf F G on GH consists of all sums λ + µ, where λ is an eigenvalue of
LF and µ is an eigenvalue of LG .
20
This is simply C0 (G; F) ⊗ C0 (H; G). Similarly,
M M
C1 (GH; F G) ' F(u) G(f) F(e) G(v)
⊗ ⊕
⊗
u∈V(G) e∈E(G)
f∈E(H) v∈V(H)
M M M M
' F(u) ⊗ G(f) ⊕ F(e) ⊗ G(v)
u∈V(G) f∈E(H) e∈e(G) v∈V(H)
With a little work, best done in the privacy of one’s own home, it can be shown that
under this identification, the coboundary matrix of F G is
" #
idC0 (G;F) ⊗δG
δFG = ,
δF ⊗ idC0 (H;G)
from which we can conclude that LFG = idC0 (G;F) ⊗LG + LF ⊗ idC0 (H;G) . This means
that if x is an eigenvector of LF with eigenvalue λ and y is an eigenvector of LG with
eigenvalue µ, then LFG x ⊗ y = idC0 (G;F) ⊗LG x ⊗ y + LF ⊗ idC0 (H;G) x ⊗ y = λx ⊗ y +
µx ⊗ y = (λ + µ)(x ⊗ y).
A number of other interesting results related to sheaves and their Laplacians may
be found in [7]. Among these are results on:
• harmonic functions on sheaves, which are the nearest one can get to a section
when certain values have been specified.
21
has built anything using them yet. But I think they are sufficiently varied and convinc-
ing to show that sheaves are a natural way to represent a number of different real-world
situations.
5.1 Sensors
Here’s a simple example of a sheaf that suggests itself in certain applications. Consider
a set of sensors observing subsets of some domain, with fields of view that overlap.
Say that sensor i can see some subset Ui ⊆ X. We build a graph G using the data of
these subsets: add one vertex for each sensor, and an edge between sensor i and sensor
j when Ui ∩Uj 6= ∅. We assume that what each sensor observes is a function Ui → Rn .
Clearly, if sensor i and sensor j are looking at the same thing, the functions they see
should agree on the intersection of Ui and Uj . This condition translates into a sheaf
on G. For the vertex corresponding to sensor i, the stalk is F(i) = {f : Ui → Rn }, the
vector space of functions on Ui with values in Rn . The stalk over the edge between i
and j is F(i ∼ j) = {f : Ui ∩ Uj → Rn }, the space of functions on the overlap of the
two sensor domains. The restriction maps are then just restriction of functions to the
common domain.
Remark. One might call this the sheaf of functions subordinate to a cover. It is one of the
canonical examples of a sheaf, and this is where the term “restriction maps” originates—
they abstract the notion of restriction of functions to a smaller domain.
Under the assumption that the sensors see the whole domain X, the global sections
of this sheaf are precisely the functions X → Rn . Why is this a useful result? It al-
lows us to check the conditions of consistency locally, without having to construct a
global picture explicitly. If sensors can communicate according to the connections in
the graph G, they can check consistency completely locally.
5.2 Diffusion
The existence of a Laplacian immediately suggests consideration of its associated dif-
ferential equation. This is the Laplacian flow, or diffusion
ẋ = −LF x.
Since LF is positive semidefinite with kernel equal to H0 (G; F), the trajectories of this
dynamical system converge to global sections of F. With a little more work (write
out the closed form solution in terms of the eigendecomposition of LF ) it’s possible to
show that the limiting section is in fact the orthogonal projection of the initial condition
22
onto H0 (G; F). This could be combined with the sensing sheaf above to give a simple
distributed algorithm for ensuring consistency of sensor observations: just run the
diffusion algorithm until convergence.
Graph Laplacian-based diffusions are often used as a building block for the construc-
tion or study of network dynamics. Sheaf Laplacians can add richness to these models
while remaining analytically tractable. Opinion dynamics in social networks offer an
illustrative example. Perhaps the simplest model of opinion dynamics posits a social
network described by a graph G, where each agent has a one-dimensional space of
opinions. The dynamics are described by the graph Laplacian flow on G, and eventu-
ally converge to consensus.
Replacing G with a sheaf on G allows us to model various more interesting aspects
of the system:
• We can add extra dimensions to the opinion space by increasing the dimension
of the vertex and edge stalks
• We can implement links that force opinions apart for certain agents by changing
the sign of one of the restriction maps on an edge
• We can model the difference between an agent’s privately-held opinion and the
one communicated to others by changing edge stalks and restriction maps.
While these additions are still limited by the fact that the overall dynamics are
linear, they introduce interesting behavior in such a system, and can all be analyzed
within the sheaf framework. Further, the linear dynamics can be used as a building
block for more sophisticated models. Some ideas in this direction are explored in [8].
23
the bandwidth requirements.
If V is a vector space, we denote the constant sheaf with stalk V by V, and say that
F is an approximation to the constant sheaf if F is an approximation to V.
1
V V
1 Fv P e
ae
V F(e)
,
1 Fv 0 P e
1
V V
24
on graphs by reducing the amount of communication needed to ensure convergence.
Some exploration of these ideas in a language closer to that of traditional spectral graph
theory is in [4]. Constructing such sheaf approximations and expanders is a surpris-
ingly deep problem.
25
P T is small. It turns out that the space of sheaf Laplacians is a convex cone, so
i xi LF xi
P
we can cast this as a convex optimization problem. Seeking to minimize i xTi LF xi
alone leads to a minimum at LF = 0, so we need to add regularization terms. Details
can be found in [6].
What does the learned LF tell us? We can extract an underlying graph structure
from the sparsity pattern of the Laplacian. These are connections implied by the data.
Each edge further includes a description of the tendencies of the relationships in the
data: an edge “pushes” the data on its incident vertices to lie in some algebraic rela-
tionship.
26
might be groups, and the restriction maps group homomorphisms. The difficulty here
is that the tools we have developed for sheaves of vector spaces do not have immediate
analogues when the stalks are not vector spaces. One situation that allows some of
the machinery developed for vector spaces is the case of sheaves of semimodules over
a semiring. (A semiring is the analogue of a ring without the requirement that every
element have an additive inverse.) These give a natural way to model nonnegativity
constraints and directionality.
27
Not everything in here is relevant to the study of sheaves on graphs, though, and it fo-
cuses less on networks. Robinson also has slides and video from a seminar on sheaves
and data he presented for DARPA: Tutorial on Sheaves in Data Analytics [12].
Sheaves, Cosheaves, and Applications, by Justin Curry [1]. Justin’s thesis is a
perennial source of new insights, but is written from the most abstract perspective of
any of these resources. It is not likely to be a fruitful read for anyone not comfortable
with the material in Elementary Applied Topology.
Toward a Spectral Theory of Cellular Sheaves, by Jakob Hansen and Robert Ghrist [7].
This is an expository paper intended for an audience in applied topology. It contains
more general versions of most of the results discussed in this introduction.
References
[1] J. Curry. Sheaves, Cosheaves, and Applications. PhD thesis, University of Pennsyl-
vania, 2014.
[5] J. Hansen and R. Ghrist. Distributed optimization with sheaf homological con-
straints. In 57th Annual Allerton Conference on Communication, Control, and Com-
puting, Monticello, IL, 2019.
[6] J. Hansen and R. Ghrist. Learning sheaf Laplacians from smooth signals. In
Proceedings of ICASSP, 2019.
[7] J. Hansen and R. Ghrist. Toward a spectral theory of cellular sheaves. Journal of
Applied and Computational Topology, 3(4):315–358, Dec. 2019.
[9] M. Robinson. The Nyquist theorem for cellular sheaves. In Proceedings of the 10th
International Conference on Sampling Theory and Applications, 2013.
28
[11] M. Robinson. Topological Signal Processing. Mathematical Engineering. Springer
Berlin Heidelberg, Berlin, Heidelberg, 2014.
29