HoTT / Coq-HoTT

A Coq library for Homotopy Type Theory
http://homotopytypetheory.org/
Other
1.24k stars 189 forks source link

Library description for a handbook chapter #1736

Closed mikeshulman closed 8 months ago

mikeshulman commented 1 year ago

Benedikt Ahrens has invited me to contribute a brief description of the Coq-HoTT library for a chapter about HoTT/UF he is writing for a handbook on "Proof Assistants and Their Applications in Mathematics and Computer Science". The space available is very limited, only about half a page. He suggested that the description could discuss the following questions:

  1. What is the goal of the library/community?
  2. What are the foundations of the library?
  3. What are the topics implemented in the library?

I could do a reasonable job with all of these myself, but it would be helpful to get some input from other contributors as well, especially since I haven't been as active recently. Here are my initial (very brief) thoughts about these questions; feel free to suggest changes!

  1. To formalize mathematics in HoTT/UF, with a particular emphasis on subjects that are impossible in traditional foundations (such as synthetic homotopy theory) or that have interesting and novel features when done in HoTT/UF relative to traditional foundations.
  2. Essentially, Book HoTT: MLTT with univalence and funext as axioms, and HITs (via private inductives) with definitional computation on point-constructors but not on path-constructors.
  3. Here's where I could probably use the most help, since I'm most familiar with the topics that I contributed to myself, like modalities, surreal numbers, Blakers-Massey, idempotent-splitting, wild categories. What are some other important topics to mention?
Alizter commented 1 year ago

Some things come to mind. We have:

cc @jarlg @jdchristensen

You could also mention that this library has acted as a catalyst/stimulant for the development of Coq and related tools. For example https://github.com/ejgallego/coq-lsp

Some downsides of this library would include:

jdchristensen commented 1 year ago

Regarding 1, I think Mike's description is pretty good, but maybe we should emphasize that we're also happy to include things that are not novel in HoTT/UF.

Mike's answer for 2 also sounds good. We could also say that we make serious use of type classes, records, universe polymorphism, and other features of Coq.

The union of Mike's and Ali's answers for 3 covers most things I can think of. The only thing I would add is H-spaces (especially since there is more to come). (I also expect that Jarl and I will be adding some interesting results on other topics in the near future.)

jarlg commented 1 year ago

I like the suggested 1 and 2. For 2, one could mention that tactics like pointed_reduce and make_equiv simplify our lives. For 3, one could also mention the Cayley-Dickson construction, and that we have pretty good tools for working with exactness and long exact sequences with respect to a general modality.

mikeshulman commented 1 year ago

Here's a draft. Feedback welcome!


The Coq-HoTT library\footnote{\url{https://github.com/HoTT/Coq-HoTT}}
originated during the 2012--13 Special Year for HoTT/UF at IAS.  Its
goal is to formalize mathematics in HoTT/UF, with a particular
emphasis on subjects that are impossible in traditional foundations
(such as synthetic homotopy theory), or that have interesting and
novel features when done in HoTT/UF relative to traditional
foundations.  However, this emphasis is not exclusive; we are
happy to include any mathematics formalized in HoTT/UF.

Our foundational theory is essentially ``Book HoTT'': intensional MLTT
with univalence and HITs as axioms, plus definitional computation
rules for point-constructors of HITs.  We use Coq, with univalence and
other axioms tracked as typeclasses, and the ``private inductive
types'' hack for HITs.  We also make heavy use of other features of
Coq, such as general inductive definitions, type classes, general
record-types, universe polymorphism.  We use tactics to automate some
proofs, such as ``rearrangements'' between nested $\Sigma$-types.

Topics of note include: idempotent monadic modalities and
localizations; synthetic homotopy theory; the Blakers--Massey theorem;
HIIT surreal numbers; splitting of idempotents; undergraduate algebra
of groups and rings, including the Chinese remainder theorem; a novel
definition of $\mathrm{Ext}^1$ and some homological algebra; exact
sequences relative to a general modality; construction of the
syllepsis; H-spaces and the Cayley-Dickson construction; and a toolbox
for ``wild categories'' used throughout the library.
Alizter commented 8 months ago

@mikeshulman Can this be closed now?