From Edges to Simplices
A graph neural network processes data that
lives on the vertices of a graph by repeatedly exchanging information between neighbors.
Each layer is a
message passing layer,
in which a vertex collects a permutation-invariant aggregate of its neighbors' features
and updates its own state accordingly. The information available to a message passing
layer is therefore routed through a single relation, the edge. An edge encodes a
relationship between exactly two vertices. A graph, by its very definition, is a
model of pairwise interaction.
For a great many systems this is the right abstraction, but for many others it quietly
discards structure. A chemical reaction may involve three molecules at once in a way that
is not reducible to its three pairwise sub-interactions. A co-authorship record in which
four researchers wrote a single paper together is not faithfully represented by the six
edges of the pairwise graph on those four authors. That graph cannot distinguish "four
people co-wrote one paper" from "these same four people happen to share six separate
two-person papers." A triangle of vertices that bounds a filled face is a genuinely
different object from a triangle that merely encloses a hole. In each case the missing
information is a higher-order relation: an interaction supported on a
set of three, four, or more vertices that is irreducibly present as a unit, not as a
collection of its pairwise shadows.
The mathematical structure that records relations of every order at once is the
abstract simplicial complex.
A graph is a simplicial complex truncated at dimension one, so that only vertices
(\(0\)-simplices) and edges (\(1\)-simplices) remain. Admitting \(2\)-simplices
(triangles), \(3\)-simplices (tetrahedra), and higher faces restores the higher-order
relations a graph cannot see, and it does so in an internally consistent way. Whenever a
\(k\)-simplex belongs to the complex, all of its faces do too. Data now lives not only on
vertices but on simplices of every dimension, with a feature vector attached to each
triangle, each tetrahedron, and so on.
Higher-order data raises the question that the rest of the page answers. For a graph
neural network the neighborhood of a vertex is unambiguous: the vertices joined to it by
an edge. But what is the neighborhood of a \(2\)-simplex? Two triangles can be adjacent
because they share a common edge, or because they are both faces of a common
tetrahedron. These two adjacencies point in opposite dimensional directions, and a
message passing scheme must account for both. The operator that organizes them is
already in hand: the discrete Hodge Laplacian, built from the same boundary maps that
define the complex's homology.
The Hodge Laplacian as a Propagation Operator
The two notions of adjacency identified at the end of the previous section are not ad
hoc. They are read directly off the maps that build the complex. Recall that the
boundary operator
\(\partial_k\) sends each oriented \(k\)-simplex to the alternating sum of its
\((k-1)\)-dimensional faces. It acts on the
chain group
\(C_k(K)\), the space of real feature vectors indexed by the \(k\)-simplices. We equip
each \(C_k(K)\) with the inner product for which the oriented simplices form an
orthonormal basis, so that the adjoint \(\partial_k^\top\) is the matrix transpose and
maps a \((k-1)\)-chain back up to the \(k\)-chains whose boundary it touches.
With a down-map \(\partial_k\) and an up-map \(\partial_{k+1}^\top\) available at each
level, the operator that combines both is the
Hodge Laplacian
\[
\boldsymbol{L}_k = \underbrace{\partial_{k+1}\partial_{k+1}^\top}_{\boldsymbol{L}_k^{\mathrm{up}}}
+ \underbrace{\partial_k^\top \partial_k}_{\boldsymbol{L}_k^{\mathrm{down}}}.
\]
The two summands are exactly the two adjacencies. The upper Laplacian
\(\boldsymbol{L}_k^{\mathrm{up}}\) couples two \(k\)-simplices when they are faces of a
common \((k+1)\)-simplex. The lower Laplacian \(\boldsymbol{L}_k^{\mathrm{down}}\)
couples them when they share a common \((k-1)\)-face. For a feature vector
\(\mathbf{h} \in C_k(K)\), the products \(\boldsymbol{L}_k^{\mathrm{up}} \mathbf{h}\)
and \(\boldsymbol{L}_k^{\mathrm{down}} \mathbf{h}\) aggregate each simplex's feature
with those of its coface neighbors and of its shared-face neighbors, respectively. Each
product is thus a message passing step in which the complex's own combinatorics
supplies the neighborhood.
In the sum \(\boldsymbol{L}_k \mathbf{h}\), the upper and lower couplings cancel for
simplices that are adjacent in both ways. This cancellation is a consequence of the
identity \(\partial_k \partial_{k+1} = 0\), which states that the
boundary of a boundary is zero.
For the three edges of a single filled triangle, \(\boldsymbol{L}_1\) is three times the
identity, so the edges exchange nothing through it.
The case \(k = 0\) shows that the construction genuinely extends the graph case. The
boundary map \(\partial_1\) from edges to vertices is, up to an overall sign, the
oriented incidence matrix \(\boldsymbol{B}\), and with the convention \(\partial_0 = 0\)
the lower part vanishes. What remains is
\[
\boldsymbol{L}_0 = \partial_1 \partial_1^\top = \boldsymbol{B}\boldsymbol{B}^\top,
\]
which is exactly the
graph Laplacian on vertices.
The diffusion \(\mathbf{h} \mapsto \mathbf{h} - \alpha \boldsymbol{L}_0 \mathbf{h}\) is
a symmetric Laplacian smoothing step. It is the unnormalized analogue of the propagation
used in spectral graph convolutions, which typically replace \(\boldsymbol{L}_0\) by a
normalized variant. The Hodge Laplacian thus contains the graph Laplacian as its
\(0\)-dimensional level, and the higher levels
\(\boldsymbol{L}_1, \boldsymbol{L}_2, \ldots\) bring in, through the simplices of
dimension two and above, the higher-order interactions a graph could not express. The
resulting propagation layer is the following.
Definition: Hodge-Laplacian Message Passing Layer
Let \(K\) be a simplicial complex with Hodge Laplacians
\(\boldsymbol{L}_k = \boldsymbol{L}_k^{\mathrm{up}} + \boldsymbol{L}_k^{\mathrm{down}}\),
and let \(\mathbf{H}_k^{(t)} \in \mathbb{R}^{f_k \times d}\) collect the
\(d\)-dimensional features on the \(k\)-simplices at layer \(t\) (one row per
oriented \(k\)-simplex, so \(f_k\) is the number of \(k\)-simplices). A layer
updates these features by
\[
\mathbf{H}_k^{(t+1)} = \sigma\!\left(
\boldsymbol{L}_k^{\mathrm{up}}\, \mathbf{H}_k^{(t)}\, \boldsymbol{W}_k^{\mathrm{up}}
+ \boldsymbol{L}_k^{\mathrm{down}}\, \mathbf{H}_k^{(t)}\, \boldsymbol{W}_k^{\mathrm{down}}
+ \mathbf{H}_k^{(t)}\, \boldsymbol{W}_k^{\mathrm{self}}
\right),
\]
where \(\boldsymbol{W}_k^{\mathrm{up}}, \boldsymbol{W}_k^{\mathrm{down}}, \boldsymbol{W}_k^{\mathrm{self}} \in \mathbb{R}^{d \times d'}\)
are learnable weight matrices and \(\sigma\) is a pointwise nonlinearity. The two
Laplacian terms route messages through shared cofaces and shared faces respectively,
and the self term retains each simplex's current state. Taking \(k = 0\) and
dropping the (vanishing) lower term recovers a graph-convolution layer on vertices
driven by the unnormalized graph Laplacian.
Separating \(\boldsymbol{L}_k^{\mathrm{up}}\) from \(\boldsymbol{L}_k^{\mathrm{down}}\)
with independent weights lets the network weigh the two directions differently rather
than collapse them into \(\boldsymbol{L}_k\). One subtlety remains. The orientation
chosen for each simplex enters through \(\partial_k\), so a simplex's feature carries a
sign that flips with reorientation, and a well-posed architecture must respect that
sign. The next section takes up this orientation question.
Harmonic Features and What the Network Sees
For suitable weights, a message passing layer driven by
\(\boldsymbol{L}_k\) is, before its nonlinearity, a diffusion. It
repeatedly damps a feature vector in the directions \(\boldsymbol{L}_k\)
sees. To understand what such a network can stably represent, we ask what
survives this diffusion. Because
\(\boldsymbol{L}_k = \partial_{k+1}\partial_{k+1}^\top + \partial_k^\top\partial_k\)
is a sum of two operators of the form \(MM^\top\), it is symmetric
positive semi-definite, and
\[
\langle \boldsymbol{L}_k \mathbf{h}, \mathbf{h} \rangle
= \lVert \partial_{k+1}^\top \mathbf{h} \rVert^2 + \lVert \partial_k \mathbf{h} \rVert^2 .
\]
A feature vector lies in \(\ker \boldsymbol{L}_k\) precisely when both terms vanish, and
these are the features a Laplacian smoothing
\(\mathbf{h} \mapsto \mathbf{h} - \alpha \boldsymbol{L}_k \mathbf{h}\) leaves fixed: the
harmonic \(k\)-chains. Every other eigendirection has a strictly
positive eigenvalue and, for a suitably small step size \(\alpha\), is attenuated under
repeated smoothing. The harmonic space is thus the fixed-point subspace of this
underlying linear diffusion. A trained network, which interleaves learnable weights and
a nonlinearity, is not constrained to converge there.
What that fixed-point subspace contains is the content of the
discrete Hodge theorem,
which states that the harmonic \(k\)-chains are isomorphic to the \(k\)-th
homology
of the complex,
\[
\ker \boldsymbol{L}_k \cong H_k(K; \mathbb{R}),
\quad \dim \ker \boldsymbol{L}_k = \beta_k .
\]
The stable features of a simplicial network are therefore not arbitrary. The dimension
of the space the diffusion preserves equals the \(k\)-th Betti number, and a harmonic
\(k\)-chain is the canonical representative of a homology class. At \(k = 0\) this
counts connected components, at \(k = 1\) independent loops, and at \(k = 2\) enclosed
voids. The linear diffusion underlying a network built on \(\boldsymbol{L}_k\) reads the
topology of its domain directly, in a subspace the propagation itself preserves. These
architectures are topological in precisely this sense, since the invariants
they most readily express are the homological ones.
The harmonic viewpoint also answers the orientation question raised at the close of the
previous section. Reorienting a \(k\)-simplex flips the sign of its column in
\(\partial_k\) and of its row in \(\partial_{k+1}\), and hence the sign of the
corresponding coordinate of every feature vector. If \(\boldsymbol{S}\) is the diagonal
matrix of these signs, the Laplacian changes to
\(\boldsymbol{S}\boldsymbol{L}_k\boldsymbol{S}\), so \(\boldsymbol{S}\) carries each
eigenspace of the old \(\boldsymbol{L}_k\), and in particular
\(\ker \boldsymbol{L}_k\), onto the corresponding eigenspace of the new one. A feature
read off the harmonic space therefore reflects genuine topological content rather than
the bookkeeping of a chosen orientation.
The Hodge-Laplacian layer itself commutes with a reorientation when \(\sigma\)
is odd, as \(\tanh\) is, since a reorientation multiplies the argument of
\(\sigma\) by \(\boldsymbol{S}\) and \(\sigma(-z) = -\sigma(z)\). We can now
assemble the architecture.
Definition: Simplicial Neural Network
Let \(K\) be a simplicial complex with simplices up to dimension \(n\), carrying
input features \(\mathbf{H}_k^{(0)}\) on the \(k\)-simplices for \(0 \le k \le n\).
A simplicial neural network is a composition of message passing
layers, in which each level \(k\) is updated from its own features through
\(\boldsymbol{L}_k^{\mathrm{up}}\) and \(\boldsymbol{L}_k^{\mathrm{down}}\) as in
the layer above, with learnable weights at every level and layer. After \(T\) layers
the representations \(\mathbf{H}_k^{(T)}\) are passed to a task head: a permutation-
and orientation-respecting readout for classification of the whole complex, or the
per-simplex features themselves for simplex-level prediction. A graph neural network
with Laplacian-driven propagation is the special case \(n = 1\) in which only the
vertex level is read out.
The definition describes the minimal model, which updates each level independently, so
different dimensions exchange no information within the layers and have in common only
the boundary maps from which their Laplacians are built. Richer variants, which go
beyond this definition, also pass messages between a simplex and its faces and cofaces
explicitly. What every such model shares is the organizing role of the Hodge Laplacian
and the homological meaning of the features it preserves.
Simplicial Networks in the Geometric Deep Learning Framework
The geometric deep learning framework organizes architectures by the symmetry of their
domain. Its graph neural network instance
is equivariant to permutations of a vertex set and exchanges information across edges.
Its equivariant instance is
equivariant to a continuous group such as the rotations \(SO(3)\) and decomposes features
into irreducible representation types.
The simplicial neural network developed here is a third instance with a distinct place.
Its domain is a discrete combinatorial object, but one carrying structure of every
dimension. The symmetries it respects, all of which leave the complex intact, are the
relabelings of the simplices and, when \(\sigma\) is odd, their reorientations. Where
the graph network is the pairwise, one-dimensional case, the simplicial network is a
higher-dimensional discrete model. It is the discrete counterpart to the continuous,
manifold-based architectures for data on curved domains.
The Hodge-Laplacian layer of the preceding sections is one concrete realization of a more
general scheme. Its propagation made the specific choice that two \(k\)-simplices are
neighbors when they share a coface or a face, but nothing forces that choice. Replacing
it with an abstract neighborhood function, a rule that assigns to each
cell a set of related cells, and allowing a family of such functions yields the general
message passing scheme on a higher-order domain.
Definition: Higher-Order Message Passing
Let \(\mathcal{X}\) be a higher-order domain equipped with a family of neighborhood
functions \(\mathcal{N} = \{\mathcal{N}_1, \ldots, \mathcal{N}_r\}\), and let
\(\mathbf{h}_x^{(t)}\) denote the feature on cell \(x\) at layer \(t\). The domain
may be a simplicial complex, a cell complex, or a more general combinatorial
complex. A higher-order message passing layer updates features
through four rules. For each neighborhood \(\mathcal{N}_j\) and each
\(y \in \mathcal{N}_j(x)\), a message is computed and then aggregated, first within
each neighborhood and then across neighborhoods:
\[
\begin{align*}
m_{x,y}^j &= \phi_{\mathcal{N}_j}\!\left(x, y, \mathbf{h}_x^{(t)}, \mathbf{h}_y^{(t)}\right), \\\\
m_x^j &= \bigoplus_{y \in \mathcal{N}_j(x)} m_{x,y}^j, \\\\
m_x &= \bigotimes_{\mathcal{N}_j \in \mathcal{N}} m_x^j, \\\\
\mathbf{h}_x^{(t+1)} &= \psi\!\left(\mathbf{h}_x^{(t)}, m_x\right).
\end{align*}
\]
Here \(\phi_{\mathcal{N}_j}\) and \(\psi\) are learnable functions, the
intra-neighborhood aggregation \(\bigoplus\) is permutation
invariant, and the inter-neighborhood aggregation
\(\bigotimes\) combines the per-neighborhood messages. A message \(m_{x,y}^j\)
may depend on the cells \(x, y\) themselves, in particular on their orientation,
and not only on their features.
Recovering the concrete layer is now a matter of choosing \(\mathcal{N}\). On a
simplicial complex, we take two neighborhoods of \(x\), \(\mathcal{N}_1(x)\) the cells
\(y\) with a nonzero entry \((\boldsymbol{L}_k^{\mathrm{up}})_{xy}\) and
\(\mathcal{N}_2(x)\) those with a nonzero entry
\((\boldsymbol{L}_k^{\mathrm{down}})_{xy}\). The messages are
\(m_{x,y}^1 = (\boldsymbol{L}_k^{\mathrm{up}})_{xy}\,\mathbf{h}_y \boldsymbol{W}_k^{\mathrm{up}}\)
and \(m_{x,y}^2 = (\boldsymbol{L}_k^{\mathrm{down}})_{xy}\,\mathbf{h}_y \boldsymbol{W}_k^{\mathrm{down}}\),
with \(\bigoplus\) the sum and \(\bigotimes\) addition, and \(\psi\) adds the self
term \(\mathbf{h}_x \boldsymbol{W}_k^{\mathrm{self}}\) and applies \(\sigma\). Other
choices recover message passing on cell complexes and hypergraphs, so one set of
update rules subsumes all these cases. Graph neural networks correspond to the case
where \(\mathcal{X}\) is a graph and \(\mathcal{N}\) consists of its single
neighborhood of adjacent vertices.
Topology as a Feature Space
The organizing fact of this page is that one operator, the Hodge Laplacian
\(\boldsymbol{L}_k\), simultaneously supplies the message passing rule through its
two summands and encodes the topology of the domain. The features its diffusion
preserves form a copy of the \(k\)-th homology, whose dimension is the Betti number
\(\beta_k\). A graph network built on message passing sees only vertices and edges,
so whether a triangle is filled must be supplied to it as extra input, whereas a
simplicial network has the homological structure built into its propagation
operator from the outset. Whether that structure helps on a given task is an
empirical question, since many problems are adequately pairwise. Where higher-order
relations carry the signal, however, \(\boldsymbol{L}_k\) makes them available to
the network directly.
The same Hodge Laplacian points beyond the discrete setting. Its kernel-equals-homology
statement is the discrete shadow of a classical theorem for the Laplace-de Rham operator
on a compact Riemannian manifold, where harmonic differential forms represent de Rham
cohomology. On a smooth triangulation of such a manifold, when it is oriented, with an
inner product on the chains induced by the metric in place of the one fixed above, the
correspondence can be made precise as a convergence result under repeated subdivision,
which we state without proof.
A separate strand leads instead toward topological data analysis. Tracking how
the homology of a complex changes as it is built up through a filtration yields
persistent homology,
a complementary way of turning topology into a feature, independent of the
message passing developed here.
Interactive Demo
The Hodge Laplacian \(\boldsymbol{L}_1\) does two jobs at once. It propagates features
across the complex, and the dimension of its kernel counts the complex's independent
loops, \(\dim \ker \boldsymbol{L}_1 = \beta_1\). The demonstration below makes that
identity concrete on a domain where the eye is of no help at all: a
torus, built from nine square cells arranged in a square grid whose
opposite sides are identified. The cells are squares rather than triangles, but the
chain groups, the boundary maps, and \(\boldsymbol{L}_1\) are built in the same way, and
the discrete Hodge theorem holds for the same reason, since its proof uses only
\(\partial_1 \partial_2 = 0\) and the inner product on chains. Drag to rotate it. Click
a cell to remove its \(2\)-cell and open a hole, or click again to fill it back in.
The most instructive case is the starting one, with every cell filled. There is no
visible gap anywhere on the surface, yet \(\beta_1 = 2\). Two independent loops
cannot be contracted to a point. One runs around the central hole and the other
winds around the tube, but inspection of the surface alone does not reveal them.
The Hodge Laplacian reports them anyway, as \(\dim \ker \boldsymbol{L}_1\), which
the demo computes from the integer ranks of the boundary maps. The number of
near-zero eigenvalues of \(\boldsymbol{L}_1\), computed alongside, agrees with
this dimension on every configuration.
Opening and closing cells changes which cycles bound and which survive, and the computed
value of \(\beta_1\) tracks the change exactly. A first opening leaves \(\beta_1 = 2\),
because the boundary of the missing cell is minus the sum of the boundaries of the other
eight and so remains a boundary. Each further opening raises \(\beta_1\) by one.
The second job, propagation, is on the same screen. The tubes on the edges draw a
feature vector \(\mathbf{h} \in \mathbb{R}^{18}\), one number per edge. Color encodes
the sign of each entry, and tube thickness encodes its magnitude relative to the largest
magnitude among the entries. Smooth until stable runs the diffusion
\(\mathbf{h} \leftarrow \mathbf{h} - \alpha \boldsymbol{L}_1 \mathbf{h}\) with
\(\alpha = 1/\lambda_{\max}\), so the factor \(1 - \alpha\lambda\) attached to an
eigenvalue \(\lambda\) of \(\boldsymbol{L}_1\) lies in \([0,1]\) and equals \(1\) only
for \(\lambda = 0\). Under repeated smoothing,
\(\lVert \boldsymbol{L}_1 \mathbf{h} \rVert\) decays to zero while
\(\lVert \mathbf{h} \rVert\) converges to a nonzero limit whenever the starting feature
has a harmonic part.
What survives is exactly the harmonic projection of the starting feature. On the torus
this projection is visible as a flow that circulates around the holes, along the
\(\beta_1\) independent directions that no smoothing can erase. With every cell filled
there are two such directions. Since \(\beta_1 \geq 2\) on this family of complexes, a
generic starting feature always leaves something behind.
The cells and the feature interact the way the theory says they must. Opening a cell
removes a constraint, so a flow that was harmonic stays harmonic. Filling a cell adds
one, and a previously stable flow can stop being harmonic on the spot. The readout
\(\lVert \boldsymbol{L}_1 \mathbf{h} \rVert\) then jumps from zero, and one more press
of the smoothing button shows what the operator now does to it. The linear diffusion
underlying a network built on \(\boldsymbol{L}_1\) thus both reads and preserves a
feature of the domain that is invisible to direct inspection.