Nottingham University, June-July 2017
In set theory:
-1 ≝ \bigg\lbrace \big\lbrace n , \; \lbrace n , n+1\rbrace \big\rbrace \mid n ∈ ℕ \bigg\rbrace \\\text{ where } ℕ \ni n ≝ \underbrace{\lbrace ⋯ \lbrace}_{n \text{ times }} ∅ \rbrace ⋯ \rbrace
Poorness of the very notion of set:
Non-constructive
Mistake in one of his papers
Univalent Foundations / Homotopy Type Theory:
new constructive foundations for mathematics based on Per Martin-Löf’s dependent type theory.
The functional programming language / proof assistant Agda: based on dependent type theory.
A foundational framework for mathematics
A programming language
In Type theory:
and a collection of inference rules to form new types/terms.
Types can depend on values
let n be a natural number, p be a prime number, 𝕂 a field of order p^n, and V a 𝕂-vector space
the context Γ contains the variables n, p, 𝕂, and V, having the desired types.
Inference rules enable us to derive judgments of the form:
Judgement | Interpreted as |
---|---|
\Gamma \vdash a {:} A | a is a term of type A in the context Γ |
\Gamma \vdash a ≡ b {:} A | a and b are definitionally/judgmentally equal objects of type A in Γ |
Types play the role of
The Curry-Howard correspondence:
proving a mathematical statement in Type Theory
⟺
providing an element of its corresponding type.
e.g. functions f : (x:A) ⟶ B(x) such that f(x): B(x) for each x: A
dependent products express universal quantification, such as
Ex: A proof of
∀x, y ∈ ℕ, x + y = y + xis a dependent function of type
f : \prod\limits_{x: ℕ} \prod\limits_{y: ℕ} x + y = y + xsuch that, for instance, f(1, 2) is evidence that 1 + 2 = 2 + 1.
(a,b):\Sigma _{(x:A)}B(x)⟺
a:A and b:B(a).
Proof assistants make use of the Curry-Howard correspondence.
A^n: type of n-tuples:
For all natural number n, {\rm Even} n (proofs that n is even)
For all natural numbers n, m: m > n (evidence that m is greater than n)
Notation: σ: Δ ⟶ Γ applied in Γ ⊢ t: A is written t[σ] (free variables substituted by their corresponding term in σ), idem for types.
- Γ ≝ (n: ℕ, \; p:{\rm Prime}, \; 𝕂: {\rm Field} \, p^n, \; V: 𝕂\text{-}{\rm VectorSpace})
- Δ ≝ (q: {\rm PalindromicPrime}, 𝕃: {\rm TopologicalField} \, q^q, \; A : 𝕃\text{-}{\rm Algebra})
\begin{aligned}Δ &\vdash q : ℕ\\Δ &\vdash q :{\rm Prime}\\Δ &\vdash 𝕃 :{\rm Field} \, q^q\\Δ &\vdash A : 𝕃-{\rm Algebra}\end{aligned}
Formation:
Introduction:
Elimination:
Computation:
In homotopy theory, two paths are said to be homotopic if one can be “continuously deformed” into the other.
In homotopy type theory (a new flavour of MLTT):
a type A is abstractly seen as a topological space whose points are its objects
if x, y: A, x ≃_A y represents the paths from x (start point) to y (end point).
given two parallel paths p, q : x ≃_A y, a path r : p ≃_{x≃_A y} q corresponds to a homotopy/2-path between p and q.
r ≃_{p ≃_{x ≃_A y} q} s is the type of 3-paths, and so on…
The tower comprised of these paths, paths of paths, paths of paths of paths, … arising from A forms an ω-groupoid
- Univalence Axiom in Voevodsky’s univalent program:
- equality of types is (weakly) equivalent to equivalence
⟶ This axiom is not constructive per se
Eliminating univalence is a holy grail
… and formalizing a weak ω-groupoid model of Type Theory inside Type Theory might pave the way for it!
Monoids | Categories | Higher Categories | Strict 𝜔-Groupoids | |
---|---|---|---|---|
Carrier set/Underlying set | Sets | Multigraphs | Globular Sets | Globular Sets |
Structure | Binary operation, Neutral element | Composition, Identity morphisms | Compositions, Identity morphisms | Compositions, Identity morphisms, Inverse elements |
Laws | Associativity, Unit law | Associativity, Unit law | Associativity, Unit law, Interchange law | Associativity, Unit law, Interchange law, Inverse law |
\begin{cases} s(a) = s(b) \\ t(a) = t(b)\end{cases}\quad i.e.: \quad \begin{cases} s(s (𝜃)) = s(t (𝜃)) \\ t(s (𝜃)) = t(t (𝜃))\end{cases}
All sources and their corresponding targets are parallel.
For all n∈ℕ^\ast, \; a, b:G_{n-1}, G_n(a, b) ≝ \lbrace f∈G_n \mid s (f) = a \text{ and } t (f) = b\rbrace
The elements of G_n are called n-arrows.
Strict 𝜔-groupoids | Weak 𝜔-groupoids |
---|---|
usual pattern: structures (compositions, identity elements, inverse elements) and laws (associativity, interchange law, identity law, inverse law) | nothing but structure. Laws and structures with regard to elements of G_n now become elements of G_{n+1}. |
Let G ≝ \bigsqcup\limits_{n≥0} G_n be a strict 𝜔-groupoid.
Indeed: for all n∈ℕ^\ast and f_1, \ldots, f_n ∈ \lbrace s, t \rbrace:
⟶ only the leftmost composition matters.
Identity: | {\rm id}^n (\_ ) : \prod\limits_{a: G_{n-1}} G_n(a, a) |
Inverse: | {\rm inv}^n (\_ , \_ ) : \prod\limits_{a, b: G_{n-1}} G_n(a, b) ⟶ G_n(b, a) |
There are n different types of compositions in G_n: \scol_1^n, \, \ldots, \, \scol_n^n.
Let 1 ≤ i < n.
Horizontal Composition (along the i-arrows) | Vertical Composition (along the n-arrows) |
---|---|
\; \\ \scol^n_i: \prod\limits_{x, x', x'': G_0}\prod\limits_{\substack{f, f': G_i(x, x') \\ g, g': G_i(x', x'')}} \\ G_n(f, f') × G_n(g, g') ⟶ G_n(f \,\scol_i^i\, g, \, f' \scol_i^i g') \\ |
\; \\ \scol^n_n: \prod\limits_{x, x': G_0}\prod\limits_{f, f', f'': G_i(x, x')} \\ G_n(f, f') × G_n(f', f'') ⟶ G_n(f, f'') \\ |
\; \\ \cfrac{𝛼:G_i(x, x')\qquad 𝛼': G_i(x', x'')}{𝛼 \scol_i^n 𝛼': G_i(x, x'')} \\ |
\; \\ \cfrac{𝛼:G_n(f, f') \qquad 𝛼': G_n(f', f'')}{𝛼 \scol_n^n 𝛼': G_n(f, f'')} \\ |
Identity (i): x:G_i | |
Composition (i < j): the points x, x', x'' : G_i, the simple arrows f, g : G_j | |
Identity Laws (i<j): the points x, x' : G_i, the simple arrow f : G_j | Left: |
Associativity law (i < j): the points x, x', x'', x''' : G_i, the simple arrows f, g, h : G_j
Interchange law (i < j < k): the points x, x', x'' : G_i, the simple arrows f, f', f'', g, g', g'' : G_j, the double arrows 𝛼, 𝛼', 𝛽, 𝛽' : G_k
Left identity “law”:
Right identity “law”:
Left inverse “law”:
Right inverse “law”:
At level 3, in addition, we have to take into account
the interchange law between the 2-arrows and the 1-arrows:
the different compositions \scol_1^3, \scol_2^3, \scol_3^3
the associativity along the 2-arrows:
etc…
But that’s not it!
Equations between elements of G_1 have been replaced by new 2-arrows.
But one also requires that these 2-arrows satisfy some new equations (represented by new 3-arrows) of their own, called coherence laws!
For instance, there are 5 ways to parenthesize the composition of 4 1-arrows in G_1, which are related as follows:
We impose a coherence law - the pentagon identity - (which becomes a new 3-arrow), stating that all these ways are identical (up to a 3-arrow).
Analogously, another coherence law says that composing with the left identity then with the right identity and composing with the right identity then with the left one are the same thing.
Brunerie type theory 𝔹:
where \isContr (which stands for is contractible) is inductively defined as follows:
the elements of the base type \star correspond to the elements of the set G_0 of the underlying globular set of the weak ω-groupoid.
if x, y: \star the elements of x ≃ y are the 1-arrows of G_1(x, y)
if x, y: \star and f, g: x ≃ y, the elements of f ≃ g are those of G_1(f, g)
and so on…
a context
Γ ≝ \bullet.(x \; y:\star).(f \; g : x ≃ y).(α : f ≃ g) will be depicted as
A context is contractible if it can be “reduced to a point”, by contracting along the arrows.
because of the hole between y and t (we cannot contract y and t).
But if the hole between y and t is filled by a 2-arrow, like in
Γ'' ≝ \bullet.(x \; y \; z \; t:\star).(f : x ≃ y).(g : y ≃ z).(h \; i : y ≃ t).(α ≃ h \; i)
then it becomes contractible.
Example: the associativity law along the 1-arrows.
Let x, y, z, t : \star, \; f : x≃y, \; g: y≃z, \; h: z≃t and
Γ_{x, y, z, t} ≝ \bullet.(x \; y \; z \; t : \star).(f : x ≃ y).(g : y ≃ z).(h : z ≃ t)
First, how to define composition along the 1-arrows?
As
f \scol_1^1 g : x ≃ z can be defined in Γ_{x, y, z, t} as
\coh_{x ≃ z}^{Γ_{x, y, z, t}}
Idem for the other compositions.
Now, there exists a
in Γ_{x, y, z, t}, since Γ_{x, y, z, t} is contractible and Γ_{x, y, z, t} ⊢ (f \scol_1^1 g) \scol_1^1 h ≃ f \scol_1^1 (g \scol_1^1 h))!
a category 𝒞 is given by:
Structure:
Objects: a class of objects, denoted \vert 𝒞 \vert
Arrows: for each pair of objects X, Y : \vert 𝒞\vert, a "collection" of arrows (or morphisms) from X to Y denoted by \Hom_𝒞(X, Y), or 𝒞(X, Y).
For each f ∈ 𝒞(X, Y),
f ∈ 𝒞(X, Y) is denoted by f: X ⟶ Y or X \overset{f}{⟶} Y
X is the domain of f, Y its codomain
Composition: for each pair of morphisms f: X ⟶ Y and g: Y ⟶ Z, a composite arrow g \circ f: A ⟶ C (and f ; g : A ⟶ C)
Identity: for each object A : \vert 𝒞 \vert, an identity morphism \id_X : A ⟶ A
Laws:
Let 𝒞, 𝒟 be two categories.
a (covariant) functor F: 𝒞 ⟶ 𝒟 from 𝒞 to 𝒟 is a mapping such that:
for each object X : \vert 𝒞 \vert in 𝒞, F(X) is an object in 𝒟
for each morphism f : X ⟶ Y in 𝒞, F(f) : F(X) ⟶ F(Y) (also written Ff) is a morphism from F(X) to F(Y) in 𝒟
Preservation of composition: F(g∘f)=F(g)∘F(f) for all morphisms f:X ⟶ Y, \; g:Y ⟶ Z in 𝒞.
Preservation of identity: F(\id_X)=\id_{F(X)} for each object X : \vert 𝒞 \vert in 𝒞
Let 𝒞 be a category and X : \vert 𝒞 \vert an object of 𝒞.
The slice category 𝒞/X is described as follows:
The coslice category X\backslash 𝒞 is the dual category of 𝒞/X.
Let F: 𝒞 ⟶ \Set be a functor.
The category of elements \int^𝒞 F is described as follows:
a Category with Families (abbreviated CwF) is given by:
a category 𝒞, with a terminal object \bullet (the empty context)
a functor
a functor from the category of elements of \Ty:
Universal property of context extension: for each Γ : 𝒞, \; A : \Ty (Γ), the following functor from the slice category 𝒞/Γ
is represented by an object (Γ.A, π_A), which roughly means that:
for each context morphism σ : ∆ ⟶ Γ and type A : \Ty(Γ), there is a "natural" (it does not depend on the variable (Δ, σ)) isomorphism:
A Brunerie CwF (resp. CwF with base-typed intensional identity) is a CwF which “respects” the inference rules of Brunerie type theory (resp. of type theory comprised of the “base type rule” and intensional identity).
The category of Brunerie CwFs: \CwFB (resp. \CwFId) has an initial object 𝔹 (resp. 𝕊^{\Id}_\star).
A Brunerie globular weak ω-groupoid is a weak CwF-morphism from 𝔹 to \Set
To show that types form Brunerie globular weak ω-groupoids, we proceed by demonstrating that there exist CwF-morphisms
whose composition constitute the Brunerie globular weak ω-groupoid associated with the terms of a given type A.