Metadata-Version: 2.4
Name: comch
Version: 0.1.5
Summary: A specialized computer algebra system for the study of commutativity up to coherent homotopies
Home-page: https://github.com/ammedmar/comch
Author: Anibal M. Medina-Mardones
Author-email: ammedmar@gmail.com
License: MIT
Project-URL: Documentation, https://comch.readthedocs.io/en/latest/
Project-URL: Source, https://github.com/ammedmar/comch
Project-URL: Tracker, https://github.com/ammedmar/comch/issues
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Operating System :: OS Independent
Classifier: Topic :: Scientific/Engineering :: Mathematics
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Provides-Extra: docs
Requires-Dist: sphinx; extra == "docs"
Requires-Dist: sphinx-rtd-theme; extra == "docs"
Provides-Extra: notebooks
Requires-Dist: ipykernel; extra == "notebooks"
Requires-Dist: jupyterlab; extra == "notebooks"
Requires-Dist: nbformat; extra == "notebooks"
Provides-Extra: dev
Requires-Dist: sphinx; extra == "dev"
Requires-Dist: sphinx-rtd-theme; extra == "dev"
Requires-Dist: ipykernel; extra == "dev"
Requires-Dist: jupyterlab; extra == "dev"
Requires-Dist: nbformat; extra == "dev"
Requires-Dist: build; extra == "dev"
Requires-Dist: twine; extra == "dev"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: license
Dynamic: license-file
Dynamic: project-url
Dynamic: provides-extra
Dynamic: requires-python
Dynamic: summary

[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/ammedmar/comch/master?urlpath=lab/tree/notebooks)

# ComCH

ComCH is a Python 3 package for the study of commutativity up to coherent homotopies. Its documentation is located [here](https://comch.readthedocs.io/en/latest/index.html).

## Motivation
Commutativity up to coherent homotopies is a concept originated in algebraic topology. It has found modern uses in topological data analysis, motion planning, condensed matter physics and several other areas. An important challenge for the application of the mathematical ideas surrounding this concept, which are often defined non-constructively, is to describe them in effective terms suitable for concrete computations. This package, a specialized computer algebra system, serves to bridge this gap between theoretical concepts and concrete applications.

## Mathematical overview

Following the pioneering work of Steenrod, Cartan, Adem, Stasheff, Boardman-Vogt, May, Dyer-Lashof and others, today we understand the correct framework for the study of commutativity up to coherent homotopies as the one provided by operads and PROPs. In particular, $E_n$-operads play a central role parameterizing the different levels of homotopical commutativity. In this package, we focus on the category of chain complexes, and consider two models for the $E_\infty$-operad which are equipped with filtrations by $E_n$-operads. These models are respectively due to McClure-Smith [McS] and Berger-Fresse [BF] and are known as the surjection and Barratt-Eccles operads.

## Installation

This package is written in pure Python and has no runtime dependencies. It can be installed from a terminal entering:

`python3 -m pip install comch`

To run notebooks locally, you need Jupyter and a Python kernel. These can be
installed with the notebook extra:

```bash
python -m pip install "comch[notebooks]"
python -m ipykernel install --user --name comch --display-name "Python (comch)"
jupyter lab
```

Then open the example notebooks from the documentation or repository and select the `Python (comch)` kernel in Jupyter. The notebooks can also be run directly in Binder using the badge at the top of this page.

For development, install the development extra:

```bash
python -m pip install -e ".[dev]"
```

## References

[McS]: J. McClure, and J. Smith. "Multivariable cochain operations and little n-cubes." Journal of the American Mathematical Society 16.3 (2003): 681-704. [DOI](https://doi.org/10.1090/S0894-0347-03-00419-3)

[BF]: C. Berger, and B. Fresse. "Combinatorial operad actions on cochains." Mathematical Proceedings of the Cambridge Philosophical Society. Vol. 137. No. 1. Cambridge University Press, 2004. [DOI](https://doi.org/10.1017/S0305004103007138)

[KMM]: Kaufmann, R. M., & Medina-Mardones, A. M. (2020). "Cochain level May-Steenrod operations." Forum Mathematicum. Vol. 33. No. 6. De Gruyter, 2021. [DOI](https://doi.org/10.1515/forum-2020-0296)
