Abstract simplicial complexes in {\tt Macaulay2}
Nathan Grieve
TL;DR
Addresses the need for a polynomial-ring-free infrastructure to study abstract simplicial complexes and their homology in Macaulay2. Proposes a graded-list representation that directly builds reduced and non-reduced chain complexes and supports induced chain maps and random complex models, integrating with Complexes.m2 and offering an alternative to existing SimplicialComplexes.m2 workflows. Key contributions include random models such as $Y_d(n,m)$ and Vietoris–Rips constructions, induced maps for subsimplicial complexes, and concrete examples like the homology calculations for $\mathbb{P}^2_{\mathbb{R}}$ and the Klein bottle, along with benchmarking against the SimplicialComplexes.m2 framework. The framework aims to support Topological Data Analysis workflows and pedagogical exploration within Macaulay2, with groundwork for future integration with core infrastructure. Overall, the work provides a modular, design-conscious toolset for abstract simplicial-homology computations in Macaulay2.
Abstract
{\tt AbstractSimplicialComplexes.m2} is a computer algebra package written for the computer algebra system {\tt Macaulay2} \cite{M2}. It provides new infrastructure to work with abstract simplicial complexes and related homological constructions. Its key novel feature is to implement each given abstract simplicial complex as a certain graded list in the form of a hash table with integer keys. Among other features, this allows for a direct implementation of the associated reduced and non-reduced simplicial chain complexes. Further, it facilitates construction of random simplicial complexes. The approach that we employ here builds on the {\tt Macaulay2} package {\tt Complexes.m2} \cite{Stillman:Smith:Complexes.m2}. It complements and is entirely different from the existing {\tt Macaulay2} simplicial complexes framework that is made possible by the package {\tt SimplicialComplexes.m2} \cite{Smith:et:al:SimplicialComplexes.m2:jsag}.
