SLIDE 1
Computations in homotopy type theory
Guillaume Brunerie MLoC 2019, University of Stockholm August 23, 2019
SLIDE 2 Constructivity of Martin–Löf type theory
Theorem
Take u a closed term of type N in MLTT, and successively apply reduction rules to u. Then
- this procedure terminates,
- the order of the reductions does not matter,
- the result is a numeral (of the form S(. . . (S(0)). . . )).
The last point (canonicity) does not work in the presence of axioms.
SLIDE 3
Homotopy type theory
Homotopy type theory (HoTT) is MLTT + Univalence axiom (+ Higher inductive types) The presence of an axiom destroys the canonicity property. There are closed terms of type N which are stuck but are not numerals.
SLIDE 4
Homotopy type theory
Homotopy type theory (HoTT) is MLTT + Univalence axiom (+ Higher inductive types) The presence of an axiom destroys the canonicity property. There are closed terms of type N which are stuck but are not numerals. Nevertheless, univalence “feels” constructive.
Homotopy canonicity (conjectured by Voevodsky, 2010?)
Given a closed term u : N, there exists a closed term k : N and a proof p : u =N k, where k does not use univalence.
SLIDE 5
Constructivity of homotopy type theory
There are now many results giving some constructive nature to some version of HoTT:
SLIDE 6
Constructivity of homotopy type theory
There are now many results giving some constructive nature to some version of HoTT: → First cubical model (BCH)
SLIDE 7
Constructivity of homotopy type theory
There are now many results giving some constructive nature to some version of HoTT: → First cubical model (BCH) → Cubical type theories and more cubical models (CCHM, ABCFHL, OP, ACCRS)
SLIDE 8
Constructivity of homotopy type theory
There are now many results giving some constructive nature to some version of HoTT: → First cubical model (BCH) → Cubical type theories and more cubical models (CCHM, ABCFHL, OP, ACCRS) → Homotopy canonicity (Sattler-Kapulkin, not yet constructive)
SLIDE 9
Constructivity of homotopy type theory
There are now many results giving some constructive nature to some version of HoTT: → First cubical model (BCH) → Cubical type theories and more cubical models (CCHM, ABCFHL, OP, ACCRS) → Homotopy canonicity (Sattler-Kapulkin, not yet constructive) And work in progress towards constructive simplicial models (GH, vdBF).
SLIDE 10
Implementations
Many implementations have been written:
SLIDE 11
Implementations
Many implementations have been written: → cubical (implementation of the first cubical model from BCH)
SLIDE 12
Implementations
Many implementations have been written: → cubical (implementation of the first cubical model from BCH) → cubicaltt (cubical type theory from CCHM)
SLIDE 13
Implementations
Many implementations have been written: → cubical (implementation of the first cubical model from BCH) → cubicaltt (cubical type theory from CCHM) → redPRL (cartesian, and in the style of Nuprl)
SLIDE 14
Implementations
Many implementations have been written: → cubical (implementation of the first cubical model from BCH) → cubicaltt (cubical type theory from CCHM) → redPRL (cartesian, and in the style of Nuprl) → yacctt (cartesian cubical type theory)
SLIDE 15
Implementations
Many implementations have been written: → cubical (implementation of the first cubical model from BCH) → cubicaltt (cubical type theory from CCHM) → redPRL (cartesian, and in the style of Nuprl) → yacctt (cartesian cubical type theory) → redtt (successor of redPRL)
SLIDE 16
Implementations
Many implementations have been written: → cubical (implementation of the first cubical model from BCH) → cubicaltt (cubical type theory from CCHM) → redPRL (cartesian, and in the style of Nuprl) → yacctt (cartesian cubical type theory) → redtt (successor of redPRL) → cubical Agda (based on CCHM and Agda)
SLIDE 17
π4(S3)
Proposition (2013)
One can construct a natural number n such that π4(S3) ≃ Z/nZ.
SLIDE 18
π4(S3)
Proposition (2013)
One can construct a natural number n such that π4(S3) ≃ Z/nZ.
Proposition (2016)
Moreover, n = 2.
SLIDE 19
π4(S3)
Proposition (2013)
One can construct a natural number n such that π4(S3) ≃ Z/nZ.
Proposition (2016)
Moreover, n = 2.
Open problem
Compute the value of n directly. (And we tried! But all of our experiments, using the various implementations, ran out of either memory or time.)
SLIDE 20
The definition
Z ΩS1 Ω2S2 Ω3S3 Ω3(S1 ∗ S1) Ω3S2 Ω3(S1 ∗ S1) Ω3S3 Ω2S22 ΩΩS21 Ω2S20 ΩS1 Z
λn.loopn ΩϕS1 Ω2ϕS2 Ω3e Ω3α h Ω3e−1 e3 Ωκ2,S2 κ1,ΩS2 e2 e1
n is the absolute value of the image of 1