---
title: 'CombinatorialSpaces.jl: DEC and Multigrid in Julia'
url: https://www.emergentmind.com/topics/combinatorialspaces-jl
type: topic
---

# CombinatorialSpaces.jl: DEC and Multigrid in Julia

Searching arXiv for recent papers mentioning CombinatorialSpaces.jl and closely related Julia/combinatorial topology tooling.
CombinatorialSpaces.jl is an open-source Julia library for constructing, representing, and operating on simplicial complexes and their associated cochain complexes. In the literature, its documented core role is the implementation of discrete exterior calculus (DEC) over simplicial complexes, including structure-preserving discrete differential operators and, more recently, a geometric multigrid solver over maps between subdivided simplicial complexes. At the same time, several papers in adjacent areas cite it as a natural computational substrate for combinatorial models of configuration spaces, braid groups, and finite-space invariants, although those uses are often presented as feasible implementations or integration targets rather than as established package modules [2508.12501], [1706.06626].

## 1. Core mathematical and computational model

CombinatorialSpaces.jl provides a representation of simplicial complexes together with the linear-algebraic objects needed for DEC. The package is described as implementing exterior derivatives, codifferentials, and Hodge star operators over arbitrary simplicial meshes, with matrix-based assembly of operators for direct use in linear solvers. Its DEC formulation preserves mimetic identities, including the discrete relation \(d d = 0\), so that the discrete curl of a gradient is zero in the same formal sense as in the continuous calculus [2508.12501].

The package’s operator model is sparse and explicitly algebraic. Fast sparse-matrix representations in CSC format are used for geometric maps and for assembled discrete operators. The reported abstraction is embedding independent, so the operator construction is not tied to regular grids or a particular ambient embedding. This places the library in the lineage of chain- and cochain-based geometric computing in Julia, where topological structure is encoded by sparse linear algebra rather than by specialized mesh-specific pointer structures. A plausible implication is that this design makes the package suitable for workflows that treat topology, geometry, and numerics through a common matrix interface [2508.12501], [1710.07819].

## 2. Geometric multigrid over simplicial complexes

A central documented extension is a geometric multigrid (GMG) solver tailored for DEC on simplicial complexes. The solver is defined over maps between subdivided simplicial complexes, formalized as geometric morphisms using barycentric coordinates. Restriction and prolongation are derived automatically from these morphisms, enabling multigrid hierarchies on subdivisions that need not be grid aligned [2508.12501].

For a geometric map \(f : X \to Y\), prolongation is multiplication by the barycentric matrix \(M(f)\), while restriction is constructed via a row-normalized transpose of \(M(f)\). The construction is described as functorial: composition of geometric maps corresponds to matrix multiplication. The framework supports V-cycles, W-cycles, and arbitrary multigrid schemes, and it generalizes beyond simple refinement to arbitrary piecewise linear geometric maps between complexes, including binary and cubic triangle subdivisions [2508.12501].

The published benchmarks emphasize both scalability and solver interoperability. For Poisson solves on meshes with up to 4 binary or cubic subdivisions and up to \(\sim 100k\) vertices, the per-V-cycle cost is reported as linear in the number of vertices, with a best-fit runtime of \(\approx 6.57 \times 10^{-8}\) seconds per vertex per cycle. On a 2.36 million vertex mesh, the following Poisson results are reported [2508.12501]:

| Method | Solve Time (s) | Relative Residual |
|---|---:|---:|
| Direct LU | 0.30 | \(1.83 \times 10^{-14}\) |
| CG--ILU0 | 13.9 | \(2.59 \times 10^{-9}\) |
| GMG (standalone) | 1.50 | \(4.05 \times 10^{-5}\) |
| CG--GMG Precondition | 10.0 | \(3.34 \times 10^{-10}\) |

These numbers motivate a distinction between solver roles. Standalone GMG is reported as much faster than CG--ILU0 but with a higher residual, whereas GMG used as a preconditioner for CG yields a \(\sim 4\times\) lower residual and a 28% faster runtime than CG with ILU0 on the cited example [2508.12501].

## 3. DEC formulations and multiphysics integration

The package is integrated with Decapodes.jl, an embedded domain-specific language for multiphysics models expressed diagrammatically in DEC. This integration allows high-level differential equations to be translated into Julia simulations using CombinatorialSpaces.jl’s DEC primitives and GMG operators. The reported workflow includes the ability to swap between direct, iterative, and GMG linear solvers in a pressure-correction step [2508.12501].

For the Poisson equation, the DEC discretization is written as a \(0\)-form problem with discrete Hodge Laplacian
\[
\Delta_0 = \star_0^{-1} \tilde{d}_1 \star_1 d_0.
\]
All operators are realized as sparse matrices from mesh geometry. For porous convection, the pressure correction step is formulated as
\[
\Delta P = \delta\left(\mathbf{g}^\flat \wedge (\alpha \rho_0 T)\right),
\]
and the temperature evolution is given by
\[
\frac{\partial T}{\partial t} + \frac{1}{\phi}q_D \cdot \nabla T -\frac{\lambda}{\rho_0 c_p} \Delta T = 0,
\qquad
q_D = -\frac{k}{\eta}(\nabla P - \rho_0 \alpha \mathbf{g} T).
\]
The literature presents these equations as fully representable in DEC on arbitrary simplicial meshes through the package and Decapodes.jl [2508.12501].

In the porous convection benchmark on a unit-disk-like domain with up to 16,641 vertices, the reported runtime and accuracy comparison is: Direct LU, 17 s and RMSE \(0\); GMRES (ILU0), 117 s and RMSE \(1.16\times 10^{-4}\); DEC GMG, 167 s and RMSE \(2.54\times 10^{-6}\). The published interpretation is that DEC GMG yields RMSE nearly two orders of magnitude lower than GMRES, with a runtime about 43% higher, while the error of the time-evolving field remains low throughout the simulation [2508.12501].

## 4. Configuration spaces and braid-group computation

Beyond DEC and PDEs, CombinatorialSpaces.jl appears in the configuration-space literature as a computational target for explicit combinatorial models. For simplicial complexes, Wiltshire-Gordon constructs a global model \(C(n,X)\) from conf matrices and simplicial difference, and a local model \(L(n,X)\) from tuples of poset structures in \(\mathcal{P}(n)^k\). The main theorems identify
\[
|C(n,X)| \simeq \Conf(n, |X|), \qquad |L(n,X)| \simeq \Conf(n, C^\circ|X|).
\]
The paper then states that tools such as CombinatorialSpaces.jl can build these combinatorial complexes from simplicial input, compute presentations for configuration and braid groups, and model both global and local configuration spaces in software, including singular and non-manifold cases [1706.06626].

The concrete combinatorics are finite and algorithmic. In the global model, vertices are minimal conf matrices with \(n\) rows, and faces are collections whose columns assemble into a valid conf matrix. In the local model, tuples \((S_1,\ldots,S_k)\) of posets are constrained by comparability and support conditions. This makes the constructions amenable to enumeration, face assembly, and fundamental-groupoid computation. The same paper applies the method to the nodal cubic \(y^2 z = x^3 + x^2 z\), obtaining presentations for global and local braid groups, including
\[
P_2(Z)=\mathbb{Z}\ast\mathbb{Z}, \qquad B_2(Z)=\mathbb{Z}\ast(\mathbb{Z}/2\mathbb{Z}),
\]
together with presentations for the corresponding local groups near the singular point [1706.06626].

A common misconception would be to treat these configuration-space capabilities as already documented features of CombinatorialSpaces.jl itself. The papers establish the combinatorial models and explicitly identify the package as a suitable implementation vehicle; they do not, in the cited form, provide a package manual asserting that all such modules are already part of the released library [1706.06626].

## 5. Finite spaces, order complexes, and combinatorial motion planning

A second combinatorial-topological direction concerns finite \(T_0\) spaces, viewed as finite posets. In this setting, the combinatorial analog of topological complexity is defined using order-preserving maps from the fence poset \(J_m\) to a finite space \(P\), with endpoint map
\[
q_m : P^{J_m} \longrightarrow P \times P, \qquad q_m(\gamma)=(\gamma(0),\gamma(m)).
\]
The resulting invariant \(\mathrm{CC}(P)\) satisfies
\[
\mathrm{TC}(P)=\mathrm{CC}(P),
\]
and after iterated barycentric subdivision one obtains
\[
\mathrm{CC}^{\infty}(P)=\mathrm{SC}(K(P))=\mathrm{TC}(|K(P)|).
\]
The paper explicitly presents these calculations as feasible for a package like CombinatorialSpaces.jl because finite path spaces can be enumerated, open covers and monotone sections can be represented as finite data, and barycentric subdivision is algorithmically implementable [1605.06755].

This situates the package, at least conceptually, within finite-model approaches to motion planning and topological robotics. The computational burden is combinatorial rather than analytic: enumerate \(P^{J_m}\), search for local sections over open covers of \(P\times P\), and iterate subdivision when passing from finite spaces to order complexes. The cited discussion again describes feasibility for software of the CombinatorialSpaces.jl type rather than a fully documented in-package implementation [1605.06755].

## 6. Research ecosystem, adjacent models, and scope boundaries

Several further papers place CombinatorialSpaces.jl near explicit algebraic-topological models without claiming direct integration. Campos and Willwacher construct the dgca model \(\ast\mathrm{Graphs}_M\) for configuration spaces of points on compact smooth oriented manifolds. Their model uses decorated graphs with external and internal vertices, edge-cutting by the diagonal class, and a differential
\[
d = d_{\text{contr}} + d_{\text{cut}}.
\]
The summary explicitly highlights relevance to software implementations like CombinatorialSpaces.jl and lists algorithmic steps such as graph enumeration, differential construction, and cohomology computation of \(\ast\mathrm{Graphs}_M(n)\) [1604.02043].

Similarly, in configuration spaces of products, the homology algorithms based on graph-indexed covers, pruned chain models, and homotopy left Kan extension are described as implementable in computational systems such as CombinatorialSpaces.jl or Sage. The same paper gives an explicit computational pipeline for \(H_\ast(\Conf(n,X\times Y))\) via good covers, tensor products of chain models, Kan extension along graph union, and evaluation at the complete graph \(K_n\) [1808.08894].

The ecosystem boundary is therefore important. The strongest documented claims about CombinatorialSpaces.jl concern DEC, sparse operator assembly, GMG, and multiphysics simulation [2508.12501]. Other papers describe it as a plausible or natural host for algorithms in configuration spaces, finite-space invariants, asymptotic combinatorics, or simplex-graph traversal; in some cases they state explicitly that no integration is yet present or that the relationship is prospective rather than implemented [2208.04490], [2402.03528]. This suggests a package whose established identity is numerical-combinatorial geometry on simplicial complexes, with broader relevance across algebraic topology and combinatorial computation.

Source: https://www.emergentmind.com/topics/combinatorialspaces-jl