Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
\newunicodechar

โ‰ƒโ‰ƒsimilar-to-or-equals\simeqโ‰ƒ \newunicodecharโ‰…โ‰…\congโ‰… \newunicodecharโˆˆโˆˆ\inโˆˆ \newunicodecharโป- \newunicodecharแดนM \newunicodecharแดบN \newunicodecharโ‰กโ‰ก\equivโ‰ก \newunicodecharฮปฮป๐œ†\lambdaitalic_ฮป \newunicodecharโŠŽโŠŽโŠŽ\uplusโŠŽ \newunicodecharโˆท:::absent:::: : \newunicodecharโ„“โ„“โ„“\ellroman_โ„“ \newunicodecharแตขi \newunicodecharโŸจโŸจโŸจ\langleโŸจ \newunicodecharโŸฉโŸฉโŸฉ\rangleโŸฉ \newunicodecharฮฑฮฑ๐›ผ\alphaitalic_ฮฑ \newunicodecharฮฒฮฒ๐›ฝ\betaitalic_ฮฒ \newunicodecharฮธฮธ๐œƒ\thetaitalic_ฮธ \newunicodecharฯ†ฯ†๐œ‘\varphiitalic_ฯ† \newunicodecharฯˆฯˆ๐œ“\psiitalic_ฯˆ \newunicodecharฮทฮท๐œ‚\etaitalic_ฮท \newunicodecharฮตฮต๐œ€\varepsilonitalic_ฮต \newunicodecharฮนฮน๐œ„\iotaitalic_ฮน \newunicodecharฮฃฮฃฮฃ\Sigmaroman_ฮฃ \newunicodecharฯƒฯƒ๐œŽ\sigmaitalic_ฯƒ \newunicodecharโˆ€โˆ€for-all\forallโˆ€ \newunicodecharโ„•โ„•โ„•\mathbb{N}blackboard_N \newunicodecharโ†’โ†’โ†’\toโ†’ \newunicodecharโŠŽโŠŽโŠŽ\uplusโŠŽ \newunicodecharโ‹†โˆ—*โˆ— \newunicodecharยฌยฌ\lnotยฌ \newunicodecharฮ˜ฮธ๐œƒ\thetaitalic_ฮธ \newunicodecharแดธโ† \newunicodecharแดฟโ†’ \newunicodecharโˆงโˆง\wedgeโˆง \newunicodecharโˆจโˆจ\veeโˆจ \newunicodecharโˆผโˆผsimilar-to\simโˆผ \newunicodecharโ‰ข\nequiv\nequiv\nequiv \newunicodecharฮ ฮ ฮ \Piroman_ฮ  \newunicodecharโ„คโ„คโ„ค\mathbb{Z}blackboard_Z \newunicodecharโˆฅโˆฅparallel-to\parallelโˆฅ \newunicodecharโˆฃโˆฃโˆฃ\midโˆฃ \newunicodecharโ„šโ„šโ„š\mathbb{Q}blackboard_Q \newunicodecharโ‚Š+ \newunicodecharโˆ—โˆ—โˆ—\astโˆ— \newunicodecharโ‚1 \newunicodecharโ‚‚2 \newunicodecharโŠฅโŠฅbottom\botโŠฅ \newunicodecharโˆ˜โˆ˜\circโˆ˜ \newunicodecharฯฯ๐œŒ\rhoitalic_ฯ \newunicodecharโ†ฆโ†ฆmaps-to\mapstoโ†ฆ \newunicodecharโ‚€0 \newunicodecharโˆ™โ‹…bold-โ‹…\boldsymbol{\cdot}bold_โ‹… \newunicodecharฮฉฮฉฮฉ\Omegaroman_ฮฉ \newunicodecharยง๐•Š๐•Š\mathbb{S}blackboard_S \newunicodechar๐Ÿ™๐Ÿ™1\mathbb{1}blackboard_1 \newunicodecharร—ร—\timesร— \newunicodecharโ™ฅSusp \newunicodecharโ‚‹โˆ’{}_{-}\!start_FLOATSUBSCRIPT - end_FLOATSUBSCRIPT \newunicodecharโœชฯƒ๐œŽ\sigma\!italic_ฯƒ \newunicodecharโ™ข\sphereโข2\sphere2\sphere{2}2 \newunicodecharโ‹†* \newunicodecharยฎ33{}^{\text{\color[rgb]{0,0,0}{$3$}}}start_FLOATSUPERSCRIPT 3 end_FLOATSUPERSCRIPT \newunicodecharโ„, \newunicodecharโŒฃโŒฃโŒฃ\smileโŒฃ \newunicodecharโ‹ˆ* \newunicodecharโ–ฌ2 \newunicodechar๐•’A๐ดAitalic_A \newunicodechar๐•“B๐ตBitalic_B \newunicodechar๐•”โ‹†Asubscriptโ‹†๐ด\star_{A}โ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT \newunicodechar๐••โ‹†Bsubscriptโ‹†๐ต\star_{B}โ‹† start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT \newunicodecharโˆ‡โˆ‡โˆ‡\nablaโˆ‡ \newunicodecharโŠ“A๐ดAitalic_A \newunicodechar๐•B๐ตBitalic_B \newunicodechar๐•—iโˆจsuperscript๐‘–i^{\vee}italic_i start_POSTSUPERSCRIPT โˆจ end_POSTSUPERSCRIPT \newunicodechar๐Ÿ™๐Ÿ™1\mathbbm{1}blackboard_1 \newunicodecharโŠ—๐•Š2superscript๐•Š2\mathbb{S}^{{\color[rgb]{0,0,0}2}}blackboard_S start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT \newunicodecharโŠ•๐•Š3superscript๐•Š3\mathbb{S}^{{\color[rgb]{0,0,0}3}}blackboard_S start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT \newunicodecharโ‚ƒ3 \newunicodecharโˆโ‹†โˆงsubscriptโ‹†\mathsf{\star_{\wedge}}โ‹† start_POSTSUBSCRIPT โˆง end_POSTSUBSCRIPT \newunicodecharฤ„โ‹†Asubscriptโ‹†๐ด\star_{A}โ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT \newunicodecharฤ˜โ‹†Bsubscriptโ‹†๐ต\star_{B}โ‹† start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT \newunicodecharโ‹€โˆง\wedgeโˆง \newunicodecharโ‚—l \newunicodecharแตฃr \newunicodecharโ„ปฯƒ๐œŽ\sigmaitalic_ฯƒ \newunicodechar๏ผFn,msubscriptF๐‘›๐‘š{\color[rgb]{0,0,0.8046875}\textsf{F}}_{\color[rgb]{0,0,0}{n,m}}F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT \newunicodecharโ‹‚\sphereโขn\sphere๐‘›\sphere{\color[rgb]{0,0,0}{n}}italic_n \newunicodecharโ‹ƒ\sphereโขm\sphere๐‘š\sphere{\color[rgb]{0,0,0}{m}}italic_m \newunicodechar๐•„\sphereโขn+m+1\sphere๐‘›๐‘š1\sphere{\color[rgb]{0,0,0}{n+m+1}}italic_n + italic_m + 1 \newunicodecharโ—ญ(f๐‘“fitalic_f+โˆ—superscript+^{*}+ start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPTโ€‰g๐‘”gitalic_g) \newunicodecharโ—ฌ(f๐‘“fitalic_f+SuspsuperscriptSusp+^{{\color[rgb]{0,0,0.8046875}\textsf{Susp}}}+ start_POSTSUPERSCRIPT Susp end_POSTSUPERSCRIPTโ€‰g๐‘”gitalic_g) \newunicodechar๏ผฆโ‹†fsubscriptโ‹†๐‘“\star_{f}โ‹† start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT \newunicodecharฮ“โ‹†gsubscriptโ‹†๐‘”\star_{g}โ‹† start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT \newunicodecharโˆโ‹†Csubscriptโ‹†๐ถ\star_{C}โ‹† start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPT \newunicodecharโ–บcongโ‹†subscriptcongโ‹†\text{cong}_{\star}cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPTโ€‰f๐‘“fitalic_f \newunicodecharโ–ปcongโ‹†subscriptcongโ‹†\text{cong}_{\star}cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPTโ€‰g๐‘”gitalic_g \newunicodechar๐•–โ‹†Csubscriptโ‹†๐ถ\star_{C}โ‹† start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPT \newunicodechar๐•จ(f๐‘“fitalic_fโ€‰ โ‹…wsubscriptโ‹…๐‘ค\cdot_{w}โ‹… start_POSTSUBSCRIPT italic_w end_POSTSUBSCRIPT โ€‰g๐‘”gitalic_g) \newunicodecharยน1 \newunicodecharโ–กโ–กโ–ก\mathsf{\square}โ–ก \newunicodecharฮฑ๐•‹2superscript๐•‹2{\mathbb{T}^{2}}blackboard_T start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT \newunicodecharฮฒ๐•‚2superscript๐•‚2{\mathbb{K}^{2}}blackboard_K start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT \newunicodecharฮณฮณ๐›พ\gammaitalic_ฮณ \newunicodecharโ—ƒ \newunicodecharโ–น \newunicodecharโ—Susp \newunicodecharโ–ณโ€†Susp \newunicodecharโ„œinr \newunicodechar๐•ƒinl \newunicodecharโ‹โˆจ\veeโˆจ \newunicodecharโœถโ‹†โ‹†\starโ‹† \newunicodecharโ–ฐฯƒ๐œŽ\sigmaitalic_ฯƒ \newunicodecharโ‚•h \newunicodecharฯ•ฯ•italic-ฯ•\phiitalic_ฯ• \newunicodecharฮถ3

\titlecomment

This paper is an extended version of โ€œFormalizing ฯ€4โข(๐•Š3)โ‰…โ„ค/2โขโ„คsubscript๐œ‹4superscript๐•Š3โ„ค2โ„ค\pi_{4}(\mathbb{S}^{3})\cong\mathbb{Z}/2\mathbb{Z}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT ) โ‰… blackboard_Z / 2 blackboard_Z and Computing a Brunerie Number in Cubical Agdaโ€ published in the post-proceedings of Logic in Computer Science 2023 [LM23]. Some details about what has been added can be found in the Outline paragraph below.

[a] [a]

Formalising and Computing the Fourth Homotopy Group of the 3333-Sphere in Cubical Agda

Axel Ljungstrรถm\lmcsorcid0000-0001-6946-0775 ย andย  Anders Mรถrtberg\lmcsorcid0000-0001-9558-6080 Department of Mathematics, Stockholm University, Stockholm, Sweden axel.ljungstrom@math.su.se, anders.mortberg@math.su.se
Abstract.

Brunerieโ€™s 2016 PhD thesis contains the first synthetic proof in Homotopy Type Theory (HoTT) of the classical result that the fourth homotopy group of the 3-sphere is โ„ค/2โขโ„คโ„ค2โ„ค\mathbb{Z}/2\mathbb{Z}blackboard_Z / 2 blackboard_Z. The proof is one of the most impressive pieces of synthetic homotopy theory to date and uses a lot of advanced classical algebraic topology rephrased synthetically. Furthermore, the proof is fully constructive and the main result can be reduced to the question of whether a particular โ€œBrunerie numberโ€ ฮฒ๐›ฝ\betaitalic_ฮฒ can be normalised to ยฑ2plus-or-minus2\pm 2ยฑ 2. The question of whether Brunerieโ€™s proof could be formalised in a proof assistant, either by computing this number or by formalising the pen-and-paper proof, has since remained open. In this paper, we present a complete formalisation in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda. We do this by modifying Brunerieโ€™s proof so that a key technical result, whose proof Brunerie only sketched in his thesis, can be avoided. We also present a formalisation of a new and much simpler proof that ฮฒ๐›ฝ\betaitalic_ฮฒ is ยฑ2plus-or-minus2\pm 2ยฑ 2. This formalisation provides us with a sequence of simpler Brunerie numbers, one of which normalises very quickly to โˆ’22-2- 2 in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda, resulting in a fully formalised computer-assisted proof that ฯ€4โข(๐•Š3)โ‰…โ„ค/2โขโ„คsubscript๐œ‹4superscript๐•Š3โ„ค2โ„ค\pi_{4}(\mathbb{S}^{3})\cong\mathbb{Z}/2\mathbb{Z}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT ) โ‰… blackboard_Z / 2 blackboard_Z.

Key words and phrases:
Homotopy type theory, Synthetic homotopy theory, Formalisation of mathematics, Constructive mathematics
This paper is based upon research supported by the Swedish Research Council (SRC, Vetenskapsrรฅdet) under Grant No.ย 2019-04545. The research has also received funding from the Knut and Alice Wallenberg Foundation through the Foundationโ€™s program for mathematics.

1. Introduction

Homotopy theory originated in algebraic topology, but is by now a central tool in many branches of modern mathematics, such as algebraic geometry and category theory. One of the central notions of study in homotopy theory is that of the homotopy groups of a space X๐‘‹Xitalic_X, denoted ฯ€nโข(X)subscript๐œ‹๐‘›๐‘‹\pi_{n}(X)italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_X ). These groups constitute a topological invariant, making them a powerful tool for establishing whether two given spaces can or cannot be homotopy equivalent. The first two such groups of a space are easy to understand: ฯ€0โข(X)subscript๐œ‹0๐‘‹\pi_{0}(X)italic_ฯ€ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ( italic_X ) characterises the connected components of X๐‘‹Xitalic_X and ฯ€1โข(X)subscript๐œ‹1๐‘‹\pi_{1}(X)italic_ฯ€ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_X ) is the fundamental group, i.e.ย the group of equivalence classes consisting of the loops contained in X๐‘‹Xitalic_X up to homotopy. This idea generalises to higher values of n๐‘›nitalic_n, for which ฯ€nโข(X)subscript๐œ‹๐‘›๐‘‹\pi_{n}(X)italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_X ) consists of n๐‘›nitalic_n-dimensional loops up to homotopy. For many spaces, these groups tend to become increasingly esoteric and difficult to compute for large n๐‘›nitalic_n. This is true also for seemingly tame spaces like spheres, for which ฯ€nโข(๐•Šm)subscript๐œ‹๐‘›superscript๐•Š๐‘š\pi_{n}(\mathbb{S}^{m})italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( blackboard_S start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ) in general is highly irregular when n>mโ‰ฅ2๐‘›๐‘š2n>m\geq 2italic_n > italic_m โ‰ฅ 2.111Seeย [Bru16a, Figureย 2.1] for a table of ฯ€nโข(๐•Šm)subscript๐œ‹๐‘›superscript๐•Š๐‘š\pi_{n}(\mathbb{S}^{m})italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( blackboard_S start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ) for small n๐‘›nitalic_n and m๐‘šmitalic_m. This paper concerns the first computer formalisation of the classical result that ฯ€4โข(๐•Š3)โ‰…โ„ค/2โขโ„คsubscript๐œ‹4superscript๐•Š3โ„ค2โ„ค\pi_{4}(\mathbb{S}^{3})\cong\mathbb{Z}/2\mathbb{Z}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT ) โ‰… blackboard_Z / 2 blackboard_Z, a result which is particularly interesting because it gives the whole first stable stem of homotopy groups of spheres, i.e.ย ฯ€n+1โข(๐•Šn)subscript๐œ‹๐‘›1superscript๐•Š๐‘›\pi_{n+1}(\mathbb{S}^{n})italic_ฯ€ start_POSTSUBSCRIPT italic_n + 1 end_POSTSUBSCRIPT ( blackboard_S start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ) for nโ‰ฅ3๐‘›3n\geq 3italic_n โ‰ฅ 3. The fact that ฯ€4โข(๐•Š3)โ‰…โ„ค/2โขโ„คsubscript๐œ‹4superscript๐•Š3โ„ค2โ„ค\pi_{4}(\mathbb{S}^{3})\cong\mathbb{Z}/2\mathbb{Z}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT ) โ‰… blackboard_Z / 2 blackboard_Z was proved already in the 1930โ€™s by Pontryagin using cobordism theory, but we instead follow the synthetic approach to homotopy theory developed in Homotopy Type Theory (HoTT) and popularised by the HoTT Bookย [Uni13]. In this new approach to homotopy theory, spaces are represented directly as (higher inductive) types and homotopy groups are computed using Voevodskyโ€™s univalence axiomย [Voe10a]. This gives a logical approach to homotopy theory, suitable for computer formalisation in proof assistants based on type theory, while also making it possible to interpret results in any suitably structured (โˆž,1)1(\infty,1)( โˆž , 1 )-topos [Shu19].

The basis for our formalisation is the 2016 PhD thesis of Brunerie [Bru16a] which contains the first synthetic proof in HoTT that ฯ€4โข(๐•Š3)โ‰…โ„ค/2โขโ„คsubscript๐œ‹4superscript๐•Š3โ„ค2โ„ค\pi_{4}(\mathbb{S}^{3})\cong\mathbb{Z}/2\mathbb{Z}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT ) โ‰… blackboard_Z / 2 blackboard_Z. The proof is one of the most impressive pieces of synthetic homotopy theory to date and uses advanced machinery from classical algebraic topology developed synthetically, including the symmetric monoidal structure of smash products, (integral) cohomology rings, the Mayer-Vietoris and Gysin sequences, the Hopf invariant, Whitehead products, etc. The formalisation of Brunerieโ€™s proof has since remained open, primarily due to the highly technical nature of some of the details. In this paper, we will present such a formalisation in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda [VMA21], a cubical extension of the ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda proof assistant [Agd24] with native support for computational univalence and higher inductive types (HITs).

In addition to being a very impressive proof in synthetic homotopy theory, Brunerieโ€™s proof is particularly interesting as it is fully constructive. The proof consists of two parts, with the first one culminating in Chapter 3 with the definition of a number ฮฒ:โ„ค:๐›ฝโ„ค\beta:\mathbb{Z}italic_ฮฒ : blackboard_Z such that ฯ€4โข(๐•Š3)โ‰…โ„ค/ฮฒโขโ„คsubscript๐œ‹4superscript๐•Š3โ„ค๐›ฝโ„ค\pi_{4}(\mathbb{S}^{3})\cong\mathbb{Z}/\beta\mathbb{Z}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT ) โ‰… blackboard_Z / italic_ฮฒ blackboard_Z. Since then, this ฮฒ๐›ฝ\betaitalic_ฮฒ has been commonly referred to as the Brunerie number. Brunerie writes the following about it:

This result is quite remarkable in that even though it is a constructive proof, it is not at all obvious how to actually compute this [ฮฒ๐›ฝ\betaitalic_ฮฒ]. At the time of writing, we still havenโ€™t managed to extract its value from its definition. [Bru16a, Pageย 85]

In fact, [Bru16a, Appendix B] contains a complete and concise definition of ฮฒ๐›ฝ\betaitalic_ฮฒ as the image of 1111 under a sequence of 12121212 maps:

โ„คโ„ค{\mathbb{Z}}blackboard_Zฮฉโข(๐•Š1)ฮฉsuperscript๐•Š1{\Omega(\mathbb{S}^{1})}roman_ฮฉ ( blackboard_S start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT )ฮฉ2โข(๐•Š2)superscriptฮฉ2superscript๐•Š2{\Omega^{2}(\mathbb{S}^{2})}roman_ฮฉ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT )ฮฉ3โข(๐•Š3)superscriptฮฉ3superscript๐•Š3{\Omega^{3}(\mathbb{S}^{3})}roman_ฮฉ start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT )ฮฉ3โข(๐•Š1โˆ—๐•Š1)superscriptฮฉ3superscript๐•Š1superscript๐•Š1{\Omega^{3}(\mathbb{S}^{1}*\mathbb{S}^{1})}roman_ฮฉ start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT โˆ— blackboard_S start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT )ฮฉ3โข(๐•Š2)superscriptฮฉ3superscript๐•Š2{\Omega^{3}(\mathbb{S}^{2})}roman_ฮฉ start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT )ฮฉ3โข(๐•Š1โˆ—๐•Š1)superscriptฮฉ3superscript๐•Š1superscript๐•Š1{\Omega^{3}(\mathbb{S}^{1}*\mathbb{S}^{1})}roman_ฮฉ start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT โˆ— blackboard_S start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT )ฮฉ3โข(๐•Š3)superscriptฮฉ3superscript๐•Š3{\Omega^{3}(\mathbb{S}^{3})}roman_ฮฉ start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT )ฮฉ2โขโ€–๐•Š2โ€–2superscriptฮฉ2subscriptnormsuperscript๐•Š22{\Omega^{2}\|\mathbb{S}^{2}\|_{2}}roman_ฮฉ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT โˆฅ blackboard_S start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT โˆฅ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPTฮฉโขโ€–ฮฉโข(๐•Š2)โ€–1ฮฉsubscriptnormฮฉsuperscript๐•Š21{\Omega\|\Omega(\mathbb{S}^{2})\|_{1}}roman_ฮฉ โˆฅ roman_ฮฉ ( blackboard_S start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) โˆฅ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPTโ€–ฮฉ2โข(๐•Š2)โ€–0subscriptnormsuperscriptฮฉ2superscript๐•Š20{\|\Omega^{2}(\mathbb{S}^{2})\|_{0}}โˆฅ roman_ฮฉ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) โˆฅ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPTฮฉโข(๐•Š1)ฮฉsuperscript๐•Š1{\Omega(\mathbb{S}^{1})}roman_ฮฉ ( blackboard_S start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT )โ„คโ„ค{\mathbb{Z}}blackboard_Znโ†ฆ๐—…๐—ˆ๐—ˆ๐—‰nmaps-to๐‘›superscript๐—…๐—ˆ๐—ˆ๐—‰๐‘›\scriptstyle{n\mapsto\mathsf{loop}^{n}}italic_n โ†ฆ sansserif_loop start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPTฮฉโขฯ†๐•Š1ฮฉsubscript๐œ‘superscript๐•Š1\scriptstyle{\Omega\varphi_{\mathbb{S}^{1}}}roman_ฮฉ italic_ฯ† start_POSTSUBSCRIPT blackboard_S start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT end_POSTSUBSCRIPTฮฉ2โขฯ†๐•Š2superscriptฮฉ2subscript๐œ‘superscript๐•Š2\scriptstyle{\Omega^{2}\varphi_{\mathbb{S}^{2}}}roman_ฮฉ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_ฯ† start_POSTSUBSCRIPT blackboard_S start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_POSTSUBSCRIPTฮฉ3โขesuperscriptฮฉ3๐‘’\scriptstyle{\Omega^{3}e}roman_ฮฉ start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT italic_eฮฉ3โขฮฑsuperscriptฮฉ3๐›ผ\scriptstyle{\Omega^{3}\alpha}roman_ฮฉ start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT italic_ฮฑhโ„Ž\scriptstyle{h}italic_hฮฉ3โข(eโˆ’1)superscriptฮฉ3superscript๐‘’1\scriptstyle{\Omega^{3}(e^{-1})}roman_ฮฉ start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT ( italic_e start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT )e3subscript๐‘’3\scriptstyle{e_{3}}italic_e start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPTฮฉโขฮบ2,๐•Š2ฮฉsubscript๐œ…2superscript๐•Š2\scriptstyle{\Omega\kappa_{2,\mathbb{S}^{2}}}roman_ฮฉ italic_ฮบ start_POSTSUBSCRIPT 2 , blackboard_S start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_POSTSUBSCRIPTฮบ1,ฮฉโข๐•Š2subscript๐œ…1ฮฉsuperscript๐•Š2\scriptstyle{\kappa_{1,\Omega\mathbb{S}^{2}}}italic_ฮบ start_POSTSUBSCRIPT 1 , roman_ฮฉ blackboard_S start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_POSTSUBSCRIPTe2subscript๐‘’2\scriptstyle{e_{2}}italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPTe1subscript๐‘’1\scriptstyle{e_{1}}italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT

By implementing this number in a proof assistant with computational support for univalence and HITs, one should be able to normalise it using a computer to establish that ฮฒ=ยฑ2๐›ฝplus-or-minus2\beta=\pm 2italic_ฮฒ = ยฑ 2 and hence that ฯ€4โข(๐•Š3)โ‰…โ„ค/2โขโ„คsubscript๐œ‹4superscript๐•Š3โ„ค2โ„ค\pi_{4}(\mathbb{S}^{3})\cong\mathbb{Z}/2\mathbb{Z}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT ) โ‰… blackboard_Z / 2 blackboard_Z. In 2016, by the time Brunerie was finishing his thesis, there were some experimental proof assistants based on the cubical type theory of [CCHM18], but these were too slow to perform such a complex computation. So, instead of relying on normalisation, Brunerie spends the second part of the thesis (Chapters 4โ€“6) to prove, using a lot of the advanced machinery mentioned above, that |ฮฒ|๐›ฝ|\beta|| italic_ฮฒ | is propositionally equal to 2222. However, if one were instead able to compute the number automatically in a proof assistant, this equality would hold definitionallyโ€”effectively reducing the complexity and length of the proof by an order of magnitude.

The intriguing possibility of a computer assisted formal proof made many people interested and countless attempts to normalise Brunerieโ€™s ฮฒ๐›ฝ\betaitalic_ฮฒ have been made using increasingly powerful computers. However, to date, no one has succeeded and it is still unclear whether it is normalisable in a reasonable amount of time. In light of this, it is natural to wonder whether it is possible to simplify Brunerieโ€™s number in order to be able to compute it. For example, Brunerieโ€™s original definition only involves 1-HITs, as the status of higher HITs was still quite understudied at the time. With a better understanding of higher HITs developed in [LS20, CHM18, CH19], one quickly sees that the first 3333 maps can be combined into one sending 1111 to the 3-cell of ๐•Š3superscript๐•Š3\mathbb{S}^{3}blackboard_S start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT defined as a 3-HIT and not as an iterated suspension as in Brunerieโ€™s thesis. Unfortunately, simple optimisations like this do not seem to reduce the complexity of the computation enough and all attempts to run it have thus far failed.

After several unsuccessful attempts at optimising the computation, we instead decided to formalise the second half of Brunerieโ€™s thesis. However, this is by no means straightforward. The first issue appears already in the beginning of Chapterย 4, a chapter concerning smash products of spheres. The main result of the section is Proposition 4.1.2, which says that the smash product is a 1-coherent symmetric monoidal product on pointed types. However, the proof of this result is just a sketch and Brunerie writes the following about it:

The following result is the main result of this section even though we essentially admit it. [Bru16a, Page 90]

Unfortunately, this result is then used to construct integral cohomology rings, Hโˆ—โข(X)superscript๐ป๐‘‹H^{*}(X)italic_H start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ( italic_X ), whose cup product, โŒฃโŒฃ\smileโŒฃ, appears in the definition of the so-called Hopf invariant which is crucially used to prove that |ฮฒ|๐›ฝ|\beta|| italic_ฮฒ | is 2222. While one might be convinced that Brunerieโ€™s informal proof sketch is correct, it is not obvious how one convinces a proof assistant of this. A complete formalisation would either have to fill in the holes in the sketch or find an alternative construction which avoids Proposition 4.1.2. In fact, Brunerie tried very hard to fill these holes using ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda metaprogrammingย [Bru18]. However, he never managed to typecheck his computer generated proof of the pentagon identity. Hence, this approach also seems infeasible with current proof assistant technology.

Luckily, Brunerie, Ljungstrรถm and Mรถrtbergย [BLM22] recently gave an alternative synthetic definition of the cup product on Hโˆ—โข(X)superscript๐ป๐‘‹H^{*}(X)italic_H start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ( italic_X ) which completely avoids smash products. This has allowed us to completely skip the problematic Chapter 4 and, in particular, Proposition 4.1.2, while still following the proofs in Chapters 5 and 6. Having a strategy for a formal proof, we were then able to embark on able to embark on the ambitious project of formalising Brunerieโ€™s proof. Even though we do not need any theory about smash products, there was still a lot left to formalise and our final formalisation closely follows Brunerieโ€™s proof, except for various smaller simplifications and adjustments which we discuss in the paper.

In addition to this, we have also formalised a new proof by Ljungstrรถmย [Lju22] which completely circumvents Chapters 4โ€“6. This major simplification builds on manually calculating the image of the element ฮท:ฯ€3โข(๐•Š2):๐œ‚subscript๐œ‹3superscript๐•Š2\eta:\pi_{3}(\mathbb{S}^{2})italic_ฮท : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ), corresponding to ฮฒ๐›ฝ\betaitalic_ฮฒ under the isomorphism ฯ€3โข(๐•Š2)โ‰…โ„คsubscript๐œ‹3superscript๐•Š2โ„ค\pi_{3}(\mathbb{S}^{2})\cong\mathbb{Z}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) โ‰… blackboard_Z, by dividing this isomorphism into several maps, tracing ฮท๐œ‚\etaitalic_ฮท in each step. In particular, the new proof is completely elementary and does not rely on advanced tools such as cohomology. The elements that one obtains while tracing ฮท๐œ‚\etaitalic_ฮท are all new โ€œBrunerie numbersโ€ that should normalise to ยฑ2plus-or-minus2\pm 2ยฑ 2. In fact, one of these normalises, in just under 4444 seconds on a regular laptop, to โˆ’22-2- 2 in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda at the time of writing. So, despite still not being able to compute the original ฮฒ๐›ฝ\betaitalic_ฮฒ, this work can be seen as an alternative solution to Brunerieโ€™s conjecture about obtaining a computational proof that ฯ€4โข(๐•Š3)โ‰…โ„ค/2โขโ„คsubscript๐œ‹4superscript๐•Š3โ„ค2โ„ค\pi_{4}(\mathbb{S}^{3})\cong\mathbb{Z}/2\mathbb{Z}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT ) โ‰… blackboard_Z / 2 blackboard_Z which relies on simplifying the Brunerie number until it becomes effectively computable.

Outline

The paper closely follows the structure of Brunerieโ€™s proof. In sectionย 2, we discuss key results from HoTT that we will need and their formalisation in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda. sectionย 3, which roughly corresponds to Chapter 2 of Brunerieโ€™s thesis, contains some first results on homotopy groups of spheresโ€”e.g.ย the computation of ฯ€nโข(๐•Šm)subscript๐œ‹๐‘›superscript๐•Š๐‘š\pi_{n}(\mathbb{S}^{m})italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( blackboard_S start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ) for nโ‰คm๐‘›๐‘šn\leq mitalic_n โ‰ค italic_m. We then give Brunerieโ€™s definition of ฮฒ๐›ฝ\betaitalic_ฮฒ and prove that ฯ€4โข(๐•Š3)โ‰…โ„ค/ฮฒโขโ„คsubscript๐œ‹4superscript๐•Š3โ„ค๐›ฝโ„ค\pi_{4}(\mathbb{S}^{3})\cong\mathbb{Z}/\beta\mathbb{Z}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( blackboard_S start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT ) โ‰… blackboard_Z / italic_ฮฒ blackboard_Z, the formalisation of which involves the James construction and Whitehead products. The remainder of the paper is then devoted to the formalisation of the different proofs that ฮฒ=ยฑ2๐›ฝplus-or-minus2\beta=\pm 2italic_ฮฒ = ยฑ 2. We first discuss the formalisation of Chapters 4โ€“6 of Brunerieโ€™s proof in sectionย 5. This involves a lot of technical machinery like cohomology, the Hopf invariant, etc. We then, in sectionย 6, turn our attention to the new elementary proof that ฮฒ=ยฑ2๐›ฝplus-or-minus2\beta=\pm 2italic_ฮฒ = ยฑ 2 and the new Brunerie number which quickly normalises to โˆ’22-2- 2 in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda. Here, we also present some result concerning joins of spheres and the vanishing of Whitehead products. We conclude in sectionย 7 with a discussion and comparison of the different formal proofs, as well as some directions for future work.

Compared to the previous publication on which the current paper is based, [LM23], the main differences are the following.

  • โ€ข

    Many proofs which were omitted because of page constraints in [LM23] have been added or extended throughout the paper. In particular, the proofs in [LM23, Sectionย VI] have been substantially expanded with many details added in subsectionย 6.3.

  • โ€ข

    In sectionย 6, many results from [LM23, Sectionย VI] have also been generalised, e.g.ย the alternative definition of homotopy groups in terms of joins of spheres, ฯ€nโˆ—subscriptsuperscript๐œ‹๐‘›\pi^{*}_{n}italic_ฯ€ start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT, is now studied in general and not just for n=3๐‘›3n=3italic_n = 3.

  • โ€ข

    As part of the expansion and generalisation of [LM23, Sectionย VI] in sectionย 6, a new subsectionย 6.1 on joins and smash products of spheres, a new subsectionย 6.2 on homotopy groups in terms of joins and a new subsectionย 6.4 on the possibility of a stand-alone proof of Brunerieโ€™s theorem have been added.

Formalisation

All results in the paper have been formalised in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda and are part of the ๐šŠ๐š๐š๐šŠ/๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐šŠ๐š๐š๐šŠ๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}agda/cubical}typewriter_agda / typewriter_cubical library, available at https://github.com/agda/cubical/. The code in the paper is mainly literal ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda code taken verbatim from the library, but we have taken some liberties when typesetting, e.g.ย shortening notations and omitting some universe levels. A ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda summary file linking the formalisation and paper can be found at: https://github.com/agda/cubical/blob/master/Cubical/Papers/Pi4S3-JournalVersion.agda The development typechecks with ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agdaโ€™s --safe flag, which ensures that there are no admitted goals or postulates.

2. Homotopy Type Theory in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda

In this section, we concisely summarise the key HoTT concepts needed for the proofs and their formalisation in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda. This roughly corresponds to [Bru16a, Chapterย 1]. For a more in-depth introduction, see the HoTT Bookย [Uni13] which also serves as a reference for the formal language โ€œBook HoTTโ€. In this paper, we will present many things with cubical notations, but almost all of the results also hold with minor changes in Book HoTT where paths are represented using Martin-Lรถfโ€™s inductive Id-typesย [ML75] instead of cubical path types. In sectionย 7 we discuss in more detail which proofs crucially rely on cubical features.

All of the results presented in this section were already part of the ๐šŠ๐š๐š๐šŠ/๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐šŠ๐š๐š๐šŠ๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}agda/cubical}typewriter_agda / typewriter_cubical library before we began our formalisation and, while useful as a resource for our notations, experts on HoTT and ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda can safely skim this section.

2.1. Elementary HoTT notions and ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda notations

We write (x:A)โ†’Bx(x:A)\to B\,x( italic_x : italic_A ) โ†’ italic_B italic_x for dependent function types and denote the identity function by idA:Aโ†’A:subscriptid๐ดโ†’๐ด๐ด\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{id}}}_{A}:A\to Aid start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT : italic_A โ†’ italic_A. We write ฮฃx:Aโข(Bโขx)subscriptฮฃ:๐‘ฅ๐ด๐ต๐‘ฅ\Sigma_{x:A}(B\,x)roman_ฮฃ start_POSTSUBSCRIPT italic_x : italic_A end_POSTSUBSCRIPT ( italic_B italic_x ) for the dependent pair type and ๐–ฟ๐—Œ๐—๐–ฟ๐—Œ๐—\mathsf{fst}sansserif_fst and ๐—Œ๐—‡๐–ฝ๐—Œ๐—‡๐–ฝ\mathsf{snd}sansserif_snd for its projection maps. In what follows, we mean by a pointed type a dependent pair (A,โ‹†A)๐ดsubscriptโ‹†๐ด(A,\star_{A})( italic_A , โ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT ) consisting of a type A๐ดAitalic_A and a fixed basepoint โ‹†A:A\star_{A}:Aโ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT : italic_A. For ease of notation, we will often omit the basepoint and simply write A๐ดAitalic_A for the pointed type (A,โ‹†A)๐ดsubscriptโ‹†๐ด(A,\star_{A})( italic_A , โ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT ). Given two pointed types A๐ดAitalic_A and B๐ตBitalic_B, the type of pointed functions Aโ†’โ‹†Bsubscriptโ†’โ‹†๐ด๐ตA\to_{\star}Bitalic_A โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_B consists of pairs (f,โ‹†f)๐‘“subscriptโ‹†๐‘“(f,\star_{f})( italic_f , โ‹† start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT ) where f:Aโ†’B:๐‘“โ†’๐ด๐ตf:A\to Bitalic_f : italic_A โ†’ italic_B and โ‹†f:fโ‹†Aโ‰กโ‹†B\star_{f}:{f\,\star_{A}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{\star_{B}}โ‹† start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT : italic_f โ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT โ‰ก โ‹† start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT witnesses basepoint preservation. Again, we simply write f:Aโ†’โ‹†B:๐‘“subscriptโ†’โ‹†๐ด๐ตf:A\to_{\star}Bitalic_f : italic_A โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_B and take โ‹†fsubscriptโ‹†๐‘“\star_{f}โ‹† start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT implicit.

HoTT supports inductive types, i.e.ย types inductively generated by their constructors/points. We write Bool for the type of booleans and ๐Ÿ™1\mathbbm{1}blackboard_1 for the unit/singleton type with a single point โ‹†๐Ÿฃsubscriptโ‹†1\mathsf{\star_{1}}โ‹† start_POSTSUBSCRIPT sansserif_1 end_POSTSUBSCRIPT. A defining feature of HoTT, as opposed to plain Martin-Lรถf type theory [ML84], is the existence of higher inductive types (HITs). This is a generalisation of inductive types where we are not only allowed to specify the generating points of the type in question, but also identifications between these points (and possibly identifications of these identifications, and so on). This is useful for defining quotient types, but also for defining spaces when working in the types-as-spaces interpretation of HoTT (see e.g.ย [Uni13, Tableย 1] and [AW09]). ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda natively supports HITs and a type representing the circle can be defined as follows: \ExecuteMetaData[agda/latex/background.tex]s1 Here, ๐–ป๐–บ๐—Œ๐–พ๐–ป๐–บ๐—Œ๐–พ\mathsf{base}sansserif_baseโ€†โ‰กโ€†๐–ป๐–บ๐—Œ๐–พ๐–ป๐–บ๐—Œ๐–พ\mathsf{base}sansserif_base denotes the type of identifications of ๐–ป๐–บ๐—Œ๐–พ๐–ป๐–บ๐—Œ๐–พ\mathsf{base}sansserif_base with itself. This is interpreted as the type of paths from ๐–ป๐–บ๐—Œ๐–พ๐–ป๐–บ๐—Œ๐–พ\mathsf{base}sansserif_base to itself when viewing \sphereโข1\sphere1\sphere{1}1 as a space. Hence, the above HIT captures precisely the representation of the circle as a cell complex with one 00-cell (๐–ป๐–บ๐—Œ๐–พ๐–ป๐–บ๐—Œ๐–พ\mathsf{base}sansserif_base) and one 1111-cell (๐—…๐—ˆ๐—ˆ๐—‰๐—…๐—ˆ๐—ˆ๐—‰\mathsf{loop}sansserif_loop). We always take \sphereโข1\sphere1\sphere{1}1 to be pointed by ๐–ป๐–บ๐—Œ๐–พ๐–ป๐–บ๐—Œ๐–พ\mathsf{base}sansserif_base. In order to discuss the induction principle for \sphereโข1\sphere1\sphere{1}1, we need to discuss paths in more detail. Cubically, paths correspond to functions out of the unit interval, just like in traditional topology. In ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda, there is a primitive interval type222For technical reasons, this is actually just a โ€œpre-typeโ€ in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda. I with endpoints ๐—‚๐Ÿข๐—‚๐Ÿข\mathsf{i0}sansserif_i0 and ๐—‚๐Ÿฃ๐—‚๐Ÿฃ\mathsf{i1}sansserif_i1. A path of type xโขโ‰กโขy๐‘ฅโ‰ก๐‘ฆ{x}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ‰ก}}\,{y}italic_x โ‰ก italic_y between two points x,y:A:๐‘ฅ๐‘ฆ๐ดx,y:Aitalic_x , italic_y : italic_A is a function p:Iโ†’A:๐‘โ†’I๐ดp:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{I}}\to Aitalic_p : I โ†’ italic_A such that pโข๐—‚๐Ÿข=x๐‘๐—‚๐Ÿข๐‘ฅp\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{i0}$}}}=xitalic_p sansserif_i0 = italic_x and pโข๐—‚๐Ÿฃ=y๐‘๐—‚๐Ÿฃ๐‘ฆp\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{i1}$}}}=yitalic_p sansserif_i1 = italic_y judgmentally. For instance, refl, the constant path at a point x๐‘ฅxitalic_x, is defined by: \ExecuteMetaData[agda/latex/Section2.tex]refl Note that we use โ€œ===โ€ for definitional/judgmental equality and โ€œโ€†โ‰กโ€†โ€ for ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agdaโ€™s path-equality. This can be contrasted with the HoTT Book [Uni13] which uses the opposite convention where โ€œ===โ€ is propositional/typal equality and โ€œโ‰ก\equivโ‰กโ€ definitional/judgmental equality.

This type of notational conventions is not the only difference between ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda and Book HoTT. Many proofs that are complicated in Book HoTT become remarkably direct using the direct treatment of equality using path types. For instance, function extensionality and its inverse funExtโป are one-liners that just flip the arguments: \ExecuteMetaData[agda/latex/Section2.tex]funExt \ExecuteMetaData[agda/latex/Section2.tex]funextInv In Book HoTT, however, funExt is typically proved as a consequence of the univalence axiom using a rather ingenious proofย [Lic14] while its inverse follows from path induction. Another elementary example of a proof involving _โ€†โ‰กโ€†_ is cong (called ap in Book HoTT), which applies a function to a path: \ExecuteMetaData[agda/latex/Section2.tex]cong

Although the treatment of paths in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda differs somewhat from Book HoTT, we may still prove path induction: for any dependent type B:(y:A)(p:xโ‰กy)โ†’TypeB:(y:A)\,(p:{x}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{y})\to{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{Type}}italic_B : ( italic_y : italic_A ) ( italic_p : italic_x โ‰ก italic_y ) โ†’ Type, all dependent functions f:(y:A)(p:xโ‰กy)โ†’Bxpf:(y:A)\,(p:{x}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{y})\to B\,x\,pitalic_f : ( italic_y : italic_A ) ( italic_p : italic_x โ‰ก italic_y ) โ†’ italic_B italic_x italic_p are uniquely determined by fโขxโข(reflโขx)๐‘“๐‘ฅrefl๐‘ฅf\,x\,({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{refl}}\,x)italic_f italic_x ( refl italic_x ). In Book HoTT, this can be used, among other things, to define the notion of a dependent path, which formalises the situation when two points a:A:๐‘Ž๐ดa:Aitalic_a : italic_A and b:B:๐‘๐ตb:Bitalic_b : italic_B are equal up to a path p:Aโขโ‰กโขB:๐‘๐ดโ‰ก๐ตp:{A}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ‰ก}}\,{B}italic_p : italic_A โ‰ก italic_B. In ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda, however, the type of dependent paths is primitive: \ExecuteMetaData[agda/latex/Section2.tex]PathP In fact, _โขโ‰กโข__โ‰ก_{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{\_}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{\_}_ โ‰ก _ is just the special case of PathP where the line of paths is constant: \ExecuteMetaData[agda/latex/Section2.tex]Path

We are now ready to describe the induction principle of \sphereโข1\sphere1\sphere{1}1. A dependent function f:(x:\sphere1)โ†’Bxf:(x:\sphere{1})\textrightarrow B\,xitalic_f : ( italic_x : 1 ) โ†’ italic_B italic_x is determined by a point b:Bโข๐–ป๐–บ๐—Œ๐–พ:๐‘๐ต๐–ป๐–บ๐—Œ๐–พb:B\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{base}$}}}italic_b : italic_B sansserif_base and a loop โ„“:PathPโข(ฮปโขiโ†’Bโข(๐—…๐—ˆ๐—ˆ๐—‰โขi))โขbโขb:โ„“PathPโ†’๐œ†๐‘–๐ต๐—…๐—ˆ๐—ˆ๐—‰๐‘–๐‘๐‘\ell:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{PathP}}(\lambda i\to B({{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{loop}$}% }}\,i))\,b\,broman_โ„“ : PathP ( italic_ฮป italic_i โ†’ italic_B ( sansserif_loop italic_i ) ) italic_b italic_b. In ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda, this would be written using pattern matching, as in the left-most definition below, which is introduced side-by-side with the way it would commonly be written in informal HoTT (as in Brunerieโ€™s thesis):

\ExecuteMetaData

[agda/latex/Background.tex]s1-fun

fโข(๐–ป๐–บ๐—Œ๐–พ)=b๐‘“๐–ป๐–บ๐—Œ๐–พ๐‘\displaystyle f({{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0.546875,0}\textsf{$\mathsf{base}$}}})=bitalic_f ( sansserif_base ) = italic_b ๐–บ๐—‰fโข(๐—…๐—ˆ๐—ˆ๐—‰)=โ„“subscript๐–บ๐—‰๐‘“๐—…๐—ˆ๐—ˆ๐—‰โ„“\displaystyle\mathsf{ap}_{f}({{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{loop}$}}})=\ellsansserif_ap start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT ( sansserif_loop ) = roman_โ„“

2.2. More higher inductive types

Let us now introduce the remaining HITs used in [Bru16a]. These come equipped with induction principles analogous to that of \sphereโข1\sphere1\sphere{1}1. To define higher spheres, we need suspensions: \ExecuteMetaData[agda/latex/background.tex]susp We always take suspensions to be pointed by ๐—‡๐—ˆ๐—‹๐—๐—๐—‡๐—ˆ๐—‹๐—๐—\mathsf{north}sansserif_north. We may now define the n๐‘›nitalic_n-sphere, for nโ‰ฅ1๐‘›1n\geq 1italic_n โ‰ฅ 1, by \sphereโขn=Suspn-1โข๐•Š1\sphere๐‘›Suspn-1superscript๐•Š1\sphere{n}=\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}${}^{n-1}$}{\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \mathbb{S}^{1}$}}}italic_n = Susp blackboard_S start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT where Suspn-1โ€† denotes (nโˆ’1)๐‘›1(n-1)( italic_n - 1 )-fold suspension. We also define \sphereโˆ’1=โŠฅ\sphere1bottom\sphere{-1}={\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{$\bot$}}- 1 = โŠฅ (the empty type) and \sphereโข0=Bool\sphere0Bool\sphere{0}={\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{\text{Bool}}}0 = Bool. We remark that we could equivalently have defined \sphereโข1\sphere1\sphere{1}1 as the suspension of \sphereโข0\sphere0\sphere{0} as is done in [Bru16a]. Our reason for not doing so is that certain functions using \sphereโข1\sphere1\sphere{1}1 appear to compute better with the ๐–ป๐–บ๐—Œ๐–พ/๐—…๐—ˆ๐—ˆ๐—‰๐–ป๐–บ๐—Œ๐–พ๐—…๐—ˆ๐—ˆ๐—‰{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{base}$}}}/{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{loop}$}}}sansserif_base / sansserif_loop definition. Furthermore, this is the definition used in already existing code in the ๐šŠ๐š๐š๐šŠ/๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐šŠ๐š๐š๐šŠ๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}agda/cubical}typewriter_agda / typewriter_cubical library.

We may also capture the (homotopy) pushout of a span Bโ†๐‘“Aโ†’๐‘”C๐‘“โ†๐ต๐ด๐‘”โ†’๐ถB\xleftarrow{f}A\xrightarrow{g}Citalic_B start_ARROW overitalic_f โ† end_ARROW italic_A start_ARROW overitalic_g โ†’ end_ARROW italic_C by the HIT: \ExecuteMetaData[agda/latex/background.tex]pushout Diagrammatically this corresponds to:

A๐ด{A}italic_AC๐ถ{C}italic_CB๐ต{B}italic_BPushoutโขfโขgPushout๐‘“๐‘”{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{Pushout}}\,f\,g}}Pushout italic_f italic_gf๐‘“\scriptstyle{f}italic_fg๐‘”\scriptstyle{g}italic_g๐—‚๐—‡๐—…๐—‚๐—‡๐—…\scriptstyle\mathsf{inl}sansserif_inl๐—‚๐—‡๐—‹๐—‚๐—‡๐—‹\scriptstyle\mathsf{inr}sansserif_inrโŒŸโŒŸ\scriptstyle{\lrcorner}โŒŸ

We use pushouts to define the wedge sum of two pointed types, denoted AโˆจB๐ด๐ต{A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\vee$}}\,B}italic_A โˆจ italic_B, the join of two types, denoted Aโข*โขB๐ด*๐ต{A\,}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{B}italic_A * italic_B, and the cofibre of a map f:Aโ†’B:๐‘“โ†’๐ด๐ตf:A\to Bitalic_f : italic_A โ†’ italic_B, denoted cofibโขfcofib๐‘“{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{cofib}}}}\,{f}cofib italic_f:

๐Ÿ™1\mathbbm{1}blackboard_1B๐ต{B}italic_BAร—B๐ด๐ต{{A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\times$}}\,B}}italic_A ร— italic_BB๐ต{B}italic_BA๐ด{A}italic_AB๐ต{B}italic_BA๐ด{A}italic_AAโˆจB๐ด๐ต{{A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\vee$}}\,B}}italic_A โˆจ italic_BA๐ด{A}italic_AAโข*โขB๐ด*๐ต{{{A}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}{B}}}italic_A * italic_B๐Ÿ™1\mathbbm{1}blackboard_1cofibโขfcofib๐‘“{{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{cofib}}}}\,{f}}cofib italic_f๐–ฟ๐—Œ๐—๐–ฟ๐—Œ๐—\scriptstyle\mathsf{fst}sansserif_fst๐—Œ๐—‡๐–ฝ๐—Œ๐—‡๐–ฝ\scriptstyle\mathsf{snd}sansserif_sndf๐‘“\scriptstyle{f}italic_fโŒŸโŒŸ\scriptstyle{\lrcorner}โŒŸโŒŸโŒŸ\scriptstyle{\lrcorner}โŒŸโŒŸโŒŸ\scriptstyle{\lrcorner}โŒŸ

Two particularly important functions out of wedge sums are \ExecuteMetaData[agda/latex/background.tex]nabla and \ExecuteMetaData[agda/latex/background.tex]totimes

2.3. Truncation levels and n๐‘›nitalic_n-truncations

An important concept in HoTT is that of Voevodskyโ€™s h-levelsย [Voe10b], which gives rise to the notion of an n-type. Since types in HoTT are interpreted as spaces (or rather, as homotopy types), they are not only determined by their points but also by which higher paths they may contain. We say that a type A๐ดAitalic_A is an n๐‘›nitalic_n-type if all (n+1)๐‘›1(n+1)( italic_n + 1 )-dimensional structure of A๐ดAitalic_A is trivial. Formally, this is captured by an inductive definition. We say that A๐ดAitalic_A is a (โˆ’2)2(-2)( - 2 )-type if it is contractible, i.e.ย consisting of a single point, as captured by isContrA=ฮฃa0:A((a:A)โ†’a0โ‰กa){\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{isContr}}\,A=\Sigma_{a_{0}:A}((a:A)\to{a_{0}}\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{โ‰ก}}\,{a})isContr italic_A = roman_ฮฃ start_POSTSUBSCRIPT italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT : italic_A end_POSTSUBSCRIPT ( ( italic_a : italic_A ) โ†’ italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT โ‰ก italic_a ). We inductively say that A๐ดAitalic_A is an (n+1)๐‘›1(n+1)( italic_n + 1 )-type if for any x,y:A:๐‘ฅ๐‘ฆ๐ดx,y:Aitalic_x , italic_y : italic_A, the type xโขโ‰กโขy๐‘ฅโ‰ก๐‘ฆ{x}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ‰ก}}\,{y}italic_x โ‰ก italic_y is an n๐‘›nitalic_n-type. We call (โˆ’1)1(-1)( - 1 )-types propositions and 00-types sets.

We can turn any type A๐ดAitalic_A into an n๐‘›nitalic_n-type by n๐‘›nitalic_n-truncation, denoted โˆฅโขAโขโˆฅnโˆฅ๐ดsubscriptโˆฅ๐‘›{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}\,A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{n}โˆฅ italic_A โˆฅ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT. For instance, the (โˆ’1)1(-1)( - 1 )-truncation may be directly defined using the following HIT: \ExecuteMetaData[agda/latex/background.tex]ptrunc We often use direct definitions like this of (โˆ’1)1(-1)( - 1 )- and 00-truncation in our formalisation, and similar constructions work for any fixed value of n๐‘›nitalic_n, but not when n๐‘›nitalic_n is arbitrary. For higher n๐‘›nitalic_n we rely on the hub-and-spoke constructionย [Uni13, Sectionย 7.3]. \ExecuteMetaData[agda/latex/background.tex]trunc

One caveat with truncations is that a map f:Aโ†’B:๐‘“โ†’๐ด๐ตf:A\to Bitalic_f : italic_A โ†’ italic_B does not, in general, induce a map f:โˆฅโขAโขโˆฅnโ†’B:๐‘“โ†’โˆฅ๐ดsubscriptโˆฅ๐‘›๐ตf:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}\,A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{n}\to Bitalic_f : โˆฅ italic_A โˆฅ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT โ†’ italic_B. This is, however, the case when B๐ตBitalic_B is an n๐‘›nitalic_n-type. In particular, f๐‘“fitalic_f always induces a function โˆฅโขfโขโˆฅn:โˆฅโขAโขโˆฅnโ†’โˆฅโขBโขโˆฅn:โˆฅ๐‘“subscriptโˆฅ๐‘›โ†’โˆฅ๐ดsubscriptโˆฅ๐‘›โˆฅ๐ตsubscriptโˆฅ๐‘›{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}\,f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{n}:{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,A\,{\color% [rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{โˆฅ}}_{n}\to{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,B\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{n}โˆฅ italic_f โˆฅ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT : โˆฅ italic_A โˆฅ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT โ†’ โˆฅ italic_B โˆฅ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT.

2.4. Univalence, loop spaces, and H-spaces

In order to introduce Voevodskyโ€™s univalence principleย [Voe10a], we need to define the (homotopy) fibre of a function. Given a function f:Aโ†’B:๐‘“โ†’๐ด๐ตf:A\to Bitalic_f : italic_A โ†’ italic_B and a point b:B:๐‘๐ตb:Bitalic_b : italic_B, we define the fibre of f๐‘“fitalic_f over b๐‘bitalic_b by fibโขfโขb=ฮฃx:Aโข(fโขaโขโ‰กโขb)fib๐‘“๐‘subscriptฮฃ:๐‘ฅ๐ด๐‘“๐‘Žโ‰ก๐‘\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{fib}}}\,{f}\,b=\Sigma_{x:A}{({f\,a}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก% }}\,{b}})fib italic_f italic_b = roman_ฮฃ start_POSTSUBSCRIPT italic_x : italic_A end_POSTSUBSCRIPT ( italic_f italic_a โ‰ก italic_b ). We say that f:Aโ†’B:๐‘“โ†’๐ด๐ตf:A\to Bitalic_f : italic_A โ†’ italic_B is an equivalence, written f:Aโขโ‰ƒโขB:๐‘“๐ดโ‰ƒ๐ตf:{A}\,\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{B}italic_f : italic_A โ‰ƒ italic_B, if fibโขfโขbfib๐‘“๐‘\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{fib}}}\,{f}\,bfib italic_f italic_b is contractible for all b:B:๐‘๐ตb:Bitalic_b : italic_B. In order to prove that a function f:Aโ†’B:๐‘“โ†’๐ด๐ตf:A\to Bitalic_f : italic_A โ†’ italic_B is an equivalence, it suffices to provide an inverse fโˆ’:Bโ†’A:superscript๐‘“โ†’๐ต๐ดf^{-}:B\to Aitalic_f start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT : italic_B โ†’ italic_A and two paths fโˆ˜fโˆ’โขโ‰กโขidB๐‘“superscript๐‘“โ‰กsubscriptid๐ต{f\circ f^{-}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{id}}}_{B}}italic_f โˆ˜ italic_f start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT โ‰ก id start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT and fโˆ’โˆ˜fโขโ‰กโขidAsuperscript๐‘“๐‘“โ‰กsubscriptid๐ด{f^{-}\circ f}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{id}}}_{A}}italic_f start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT โˆ˜ italic_f โ‰ก id start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT. If f๐‘“fitalic_f is also pointed, we write f:Aโ‰ƒโ‹†B:๐‘“subscriptsimilar-to-or-equalsโ‹†๐ด๐ตf:A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\simeq_{\star}$}}\,Bitalic_f : italic_A โ‰ƒ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_B.

Univalence states that the canonical map Aโขโ‰กโขBโ†’Aโขโ‰ƒโขBโ†’๐ดโ‰ก๐ต๐ดโ‰ƒ๐ต{A}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ‰ก}}\,{B}\to{A}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{B}italic_A โ‰ก italic_B โ†’ italic_A โ‰ƒ italic_B, defined by path induction, is an equivalence. In particular, we get a map ua:Aโขโ‰ƒโขBโ†’Aโขโ‰กโขB:uaโ†’๐ดโ‰ƒ๐ต๐ดโ‰ก๐ต{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{ua}}:{A}\,\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{B}\to{A}\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{โ‰ก}}\,{B}ua : italic_A โ‰ƒ italic_B โ†’ italic_A โ‰ก italic_B promoting equivalences to paths. This provides us with a useful method for transferring proofs between equivalent types which extends to structured types and are then referred to as the structure identity principleย [Uni13, Section 9.8].

Transferring proofs is, however, not the only use case of univalence in HoTT. It can also be used to characterise loop spaces of HITs. This is often done using the encode-decode methodย [Uni13, Sectionย 8.1.4], a type theoretic analogue of proofs by contractibilty of total spaces of fibrations. In HoTT, we define the loop space of a pointed type A๐ดAitalic_A, by ฮฉA=(โ‹†Aโ‰กโ‹†A){\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{A}=({\star_{A}}\,{\color[rgb]{0,0,0.8046875% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{\star_{A% }})roman_ฮฉ italic_A = ( โ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT โ‰ก โ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT ). This is again pointed by reflโ‹†A{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{refl}}\,\star_{A}refl โ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT, so we may iterate this definition to get the n๐‘›nitalic_nth loop space of A๐ดAitalic_A, denoted ฮฉnโขAsuperscriptฮฉ๐‘›๐ด{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}^{n}\,{A}roman_ฮฉ start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_A. Loop spaces belong to a particularly important class of types called H-spaces. These consist of a pointed type B๐ตBitalic_B equipped with a unital magma structure

ฮผ:Bร—Bโ†’B:๐œ‡โ†’๐ต๐ต๐ต\displaystyle\mu:B\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\times$}}B\to Bitalic_ฮผ : italic_B ร— italic_B โ†’ italic_B
ฮผl:(b:B)โ†’ฮผ(โ‹†B,b)โ‰กb\displaystyle\mu_{l}:(b:B)\to{\mu(\star_{B},b)}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{b}italic_ฮผ start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT : ( italic_b : italic_B ) โ†’ italic_ฮผ ( โ‹† start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT , italic_b ) โ‰ก italic_b
ฮผr:(b:B)โ†’ฮผ(b,โ‹†B)โ‰กb\displaystyle\mu_{r}:(b:B)\to{\mu(b,\star_{B})}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{b}italic_ฮผ start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT : ( italic_b : italic_B ) โ†’ italic_ฮผ ( italic_b , โ‹† start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT ) โ‰ก italic_b

satisfying ฮผlโ‹†Bโ‰กฮผrโ‹†B{\mu_{l}\,\star_{B}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{\mu_{r}\,\star_{B}}italic_ฮผ start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT โ‹† start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT โ‰ก italic_ฮผ start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT โ‹† start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT. Another particularly important H-space for our purposes is \sphereโข1\sphere1\sphere{1}1, for which we will use +++ to denote its binary operation. \sphereโข1\sphere1\sphere{1}1 also comes equipped with a notion of inversion which we will denote by โˆ’--. In fact, \sphereโข1\sphere1\sphere{1}1 is a commutative and associative H-space.

3. First results on homotopy groups of spheres

In this section, we cover [Bru16a, Chapterย 2], which introduces some elementary results on the homotopy groups of spheres. All of these results can also be found in the HoTT Bookย [Uni13]. Before even stating them, we need homotopy groups: {defi}[Homotopy groups] For n:โ„•:๐‘›โ„•n:\mathbb{N}italic_n : blackboard_N, we define the n๐‘›nitalic_nth homotopy group of a pointed type A๐ดAitalic_A by:

ฯ€nโข(A)=โˆฅโข\sphereโขnโ†’โ‹†Aโขโˆฅ0subscript๐œ‹๐‘›๐ดโˆฅ\sphere๐‘›subscriptโ†’โ‹†๐ดsubscriptโˆฅ0{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}(A)={\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,\sphere{n}\to_{\star}A% \,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}_{0}italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_A ) = โˆฅ italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_A โˆฅ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT

The name homotopy group should be taken with a grain of salt: it, in general, only has a group structure when nโ‰ฅ1๐‘›1n\geq 1italic_n โ‰ฅ 1 (abelian when nโ‰ฅ2๐‘›2n\geq 2italic_n โ‰ฅ 2). The structure may be defined, much like in [BHF18, Section 5], by considering the equivalence (\sphereโขnโ†’โ‹†A)โขโ‰ƒโข(\sphereโขnโˆ’1โ†’โ‹†ฮฉโขA)subscriptโ†’โ‹†\sphere๐‘›๐ดโ‰ƒsubscriptโ†’โ‹†\sphere๐‘›1ฮฉ๐ด{(\sphere{n}\to_{\star}A)}\,\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{(\sphere{n-1}\to_{\star}{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{A})}( italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_A ) โ‰ƒ ( italic_n - 1 โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT roman_ฮฉ italic_A ), where the latter type has a multiplication given by pointwise path composition. An alternative definition of ฯ€nโข(A)subscript๐œ‹๐‘›๐ด{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}(A)italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_A ) is via loop spaces. There is an equivalence ฯ‰n:ฮฉnโขAโขโ‰ƒโข(\sphereโขnโ†’โ‹†A):subscript๐œ”๐‘›superscriptฮฉ๐‘›๐ดโ‰ƒsubscriptโ†’โ‹†\sphere๐‘›๐ด\omega_{n}:{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{$\Omega$}}^{n}\,{A}}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{(% \sphere{n}\to_{\star}A)}italic_ฯ‰ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT : roman_ฮฉ start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_A โ‰ƒ ( italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_A ) and, hence, we could equivalently have defined ฯ€nโข(A)subscript๐œ‹๐‘›๐ด{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}(A)italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_A ) by setting ฯ€nโข(A)=โˆฅโขฮฉnโขAโขโˆฅ0subscript๐œ‹๐‘›๐ดโˆฅsuperscriptฮฉ๐‘›๐ดsubscriptโˆฅ0{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}(A)={\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \Omega$}}^{n}\,{A}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{0}italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_A ) = โˆฅ roman_ฮฉ start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_A โˆฅ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT. This makes the group structure on ฯ€nโข(A)subscript๐œ‹๐‘›๐ด{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}(A)italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_A ) more transparent: it is simply path composition. This is the definition used in the HoTT Bookย [Uni13]. Brunerie uses both definitions in his thesis and often passes between the two without comment.

An elementary but crucial result for the computation of homotopy groups is the existence of the long exact sequence of homotopy groups. Its proof is usually phrased using the loop space definition of homotopy groups as in e.g.ย [Uni13, Theorem 8.4.6]. For ease of notation, let us write fibโขffib๐‘“\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{fib}}}\,{f}fib italic_f for the fibre of a pointed function f:Aโ†’โ‹†B:๐‘“subscriptโ†’โ‹†๐ด๐ตf:A\to_{\star}Bitalic_f : italic_A โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_B over the basepoint of B๐ตBitalic_B.

Proposition 1 (LES of homotopy groups).

For any pointed map f:Aโ†’โ‹†B:๐‘“subscriptโ†’โ‹†๐ด๐ตf:A\to_{\star}Bitalic_f : italic_A โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_B, there is a long exact sequence

โ€ฆโ€ฆ{\dots}โ€ฆฯ€n+1โข(B)subscript๐œ‹๐‘›1๐ต{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n+1}(B)}}italic_ฯ€ start_POSTSUBSCRIPT italic_n + 1 end_POSTSUBSCRIPT ( italic_B )โ€…ฯ€nโข(fibโขf)subscript๐œ‹๐‘›fib๐‘“{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}(\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{fib}}}\,{f})}}italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( fib italic_f )ฯ€nโข(A)subscript๐œ‹๐‘›๐ด{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}(A)}}italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_A )ฯ€nโข(B)subscript๐œ‹๐‘›๐ต{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}(B)}}italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_B )โ€…ฯ€nโˆ’1โข(fibโขf)subscript๐œ‹๐‘›1fib๐‘“{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n-1}(\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{fib}}}\,{f})}}italic_ฯ€ start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT ( fib italic_f )โ€ฆโ€ฆ{\dots}โ€ฆ

where the horizontal maps are induced by the functorial action of ฯ€nsubscript๐œ‹๐‘›{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT on ๐–ฟ๐—Œ๐—:fibโขfโ†’A:๐–ฟ๐—Œ๐—โ†’fib๐‘“๐ด{{\color[rgb]{0.93359375,0.0703125,0.5390625}\definecolor[named]{% pgfstrokecolor}{rgb}{0.93359375,0.0703125,0.5390625}\textsf{$\mathsf{\mathsf{% fst}}$}}}:\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{fib}}}\,{f}\to Asansserif_fst : fib italic_f โ†’ italic_A and f:Aโ†’B:๐‘“โ†’๐ด๐ตf:A\to Bitalic_f : italic_A โ†’ italic_B.

Above, we have implicitly taken the kernel and image of a group homomorphism ฯ•:Gโ†’H:italic-ฯ•โ†’๐บ๐ป\phi:G\to Hitalic_ฯ• : italic_G โ†’ italic_H to be defined by

kerโขฯ•keritalic-ฯ•\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{ker}}\,\phi\,ker italic_ฯ• =fibโขฯ•โขโ€‰0Habsentfibitalic-ฯ•subscriptโ€‰0๐ป\displaystyle={\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{fib}}\,\phi\,0_{H}= fib italic_ฯ• 0 start_POSTSUBSCRIPT italic_H end_POSTSUBSCRIPT
imโขฯ•imitalic-ฯ•\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{im}}\,\phiim italic_ฯ• =ฮฃh:Hโขโˆฅโขฮฃg:Gโข(ฯ•โข(g)โ‰กh)โขโˆฅโˆ’1absentsubscriptฮฃ:โ„Ž๐ปโˆฅsubscriptฮฃ:๐‘”๐บitalic-ฯ•๐‘”โ„Žsubscriptโˆฅ1\displaystyle=\Sigma_{h:H}{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,\Sigma_{g:G}(\phi(g)\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\equiv$}}\,h)\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{-1}= roman_ฮฃ start_POSTSUBSCRIPT italic_h : italic_H end_POSTSUBSCRIPT โˆฅ roman_ฮฃ start_POSTSUBSCRIPT italic_g : italic_G end_POSTSUBSCRIPT ( italic_ฯ• ( italic_g ) โ‰ก italic_h ) โˆฅ start_POSTSUBSCRIPT - 1 end_POSTSUBSCRIPT

When analysing loop spaces and homotopy groups of suspensions, the following function is of great importance. It will be used in many constructions to come. {defi}[The suspension map] Given a pointed type A๐ดAitalic_A, there is a canonical map ฯƒ:Aโ†’ฮฉโข(SuspA):๐œŽโ†’๐ดฮฉSuspA{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}:A\to{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{(}\textnormal{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{Susp}}{$\,A$}})italic_ฯƒ : italic_A โ†’ roman_ฮฉ ( Susp italic_A ) given by

ฯƒx=๐—†๐–พ๐—‹๐—‚๐–ฝxโ‹…(๐—†๐–พ๐—‹๐—‚๐–ฝโ‹†A)โˆ’1{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}\,x={{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{merid}$}}}\;{x}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cdot$}}\,{({{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{merid}$}}}\;{\star_{% A}})}^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$-1$}}}italic_ฯƒ italic_x = sansserif_merid italic_x โ‹… ( sansserif_merid โ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT

This induces a homomorphism on homotopy groups by post-composition:

ฯ€nโข(A)โ†’ฯƒโˆ—ฯ€nโข(ฮฉโข(SuspA))โ†’โ‰…ฯ€n+1โข(SuspA)subscript๐œŽโ†’subscript๐œ‹๐‘›๐ดsubscript๐œ‹๐‘›ฮฉSuspAโ†’subscript๐œ‹๐‘›1SuspA{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}(A)\xrightarrow{\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}_{*}% \,}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}({\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{(\textnormal{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{Susp}}{$\,A$}})})\xrightarrow{\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,}{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n+1}(\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,A$}})italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_A ) start_ARROW start_OVERACCENT italic_ฯƒ start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT end_OVERACCENT โ†’ end_ARROW italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( roman_ฮฉ ( Susp italic_A ) ) start_ARROW start_OVERACCENT โ‰… end_OVERACCENT โ†’ end_ARROW italic_ฯ€ start_POSTSUBSCRIPT italic_n + 1 end_POSTSUBSCRIPT ( Susp italic_A )

We will often, with some abuse of notation, simply write ฯƒโˆ—subscript๐œŽ{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}_{*}italic_ฯƒ start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT for this composition. We also define ฯƒn:โˆฅโขAโขโˆฅnโ†’ฮฉโขโˆฅโขSuspAโขโˆฅn+1:subscript๐œŽ๐‘›โ†’โˆฅ๐ดsubscriptโˆฅ๐‘›ฮฉโˆฅSuspAsubscriptโˆฅ๐‘›1{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}_{n}:{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,A\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ% }}_{n}\to{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,\textnormal{{\color[rgb% ]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}% {$\,A$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}_{n+1}}italic_ฯƒ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT : โˆฅ italic_A โˆฅ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT โ†’ roman_ฮฉ โˆฅ Susp italic_A โˆฅ start_POSTSUBSCRIPT italic_n + 1 end_POSTSUBSCRIPT by

ฯƒnโขโˆฃโขxโขโˆฃ=congโขโˆฃโข_โขโˆฃโข(ฯƒโขx)subscript๐œŽ๐‘›โˆฃ๐‘ฅโˆฃcongโˆฃ_โˆฃ๐œŽ๐‘ฅ{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}_{n}{{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,x\,{{\color[% rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}% \textsf{$\mathsf{โˆฃ}$}}}={\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{{{\color[rgb]{0,0.546875,0% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}% \,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{\!\_\!}$}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}}% \;{({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}\,x)}italic_ฯƒ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT โˆฃ italic_x โˆฃ = cong โˆฃ _ โˆฃ ( italic_ฯƒ italic_x )

We will soon see the suspension map in action, but first we need the following elementary result.

Proposition 2 (Join of spheres).

\sphereโขnโข*โข\sphereโขmโขโ‰ƒโข\sphereโขn+m+1\sphere๐‘›*\sphere๐‘šโ‰ƒ\sphere๐‘›๐‘š1{{\sphere{n}}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\,\sphere{m}}}\,\,% {\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{\sphere{n+m+1}}italic_n * italic_m โ‰ƒ italic_n + italic_m + 1.

In fact, as we will see inย sectionย 6, there is more to say about this equivalence. We make a forwards reference to 32 and the preceding discussion for a detailed account of its construction.

In particular, 2 gives us an equivalence \sphereโข1โข*โข\sphereโข1โขโ‰ƒโข\sphereโข3\sphere1*\sphere1โ‰ƒ\sphere3{{\sphere{1}}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{1}}}\,\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{\sphere{3}}1 * 1 โ‰ƒ 3. Using this fact, we define the following map, which will play a crucial role in the analysis of ฯ€4โข(\sphereโข3)subscript๐œ‹4\sphere3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ). {defi}[Hopf map] We define hopf:\sphereโข3โ†’\sphereโข2:hopfโ†’\sphere3\sphere2\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{hopf}}}:\sphere{3}\to\sphere{2}hopf : 3 โ†’ 2 by the composition \sphereโข3โ†’โˆผ\sphereโข1โข*โข\sphereโข1โ†’h\sphereโข2similar-toโ†’\sphere3\sphere1*\sphere1hโ†’\sphere2\sphere{3}\xrightarrow{\sim}{\sphere{1}}{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{\text{% \textasteriskcentered}}}\,{\sphere{1}}\xrightarrow{\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{h}}}}% \sphere{2}3 start_ARROW overโˆผ โ†’ end_ARROW 1 * 1 start_ARROW overh โ†’ end_ARROW 2 where h is given by \ExecuteMetaData[agda/latex/BruneriesProof.tex]hopf where โˆ’-- is defined using the H-space and inversion structure on \sphereโข1\sphere1\sphere{1}1. It turns out that the following is trueย [Uni13, Theoremย 8.5.1].

Proposition 3 (The fibre of the Hopf map).

The fibre of hopf is equivalent to \sphereโข1\sphere1\sphere{1}1, i.e.ย fibโขhopfโขโ‰ƒโข\sphereโข1fibhopfโ‰ƒ\sphere1{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{fib}}}\,{\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{hopf}}}}}\,\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{โ‰ƒ}}\,\,{\sphere{1}}fib hopf โ‰ƒ 1.

3 gives us a fibration sequence \sphereโข1โ†’\sphereโข3โ†’\sphereโข2โ†’\sphere1\sphere3โ†’\sphere2\sphere{1}\to\sphere{3}\to\sphere{2}1 โ†’ 3 โ†’ 2 which, in particular, will allow us to connect homotopy groups of \sphereโข2\sphere2\sphere{2}2 with those of \sphereโข3\sphere3\sphere{3}3 and \sphereโข1\sphere1\sphere{1}1. For this, we need to introduce the notion of connectedness. We say that a type A๐ดAitalic_A is n๐‘›nitalic_n-connected if โˆฅโขAโขโˆฅnโˆฅ๐ดsubscriptโˆฅ๐‘›{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}\,A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{n}โˆฅ italic_A โˆฅ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT is contractible. Similarly, we say that a function f:Aโ†’B:๐‘“โ†’๐ด๐ตf:A\to Bitalic_f : italic_A โ†’ italic_B is n๐‘›nitalic_n-connected if all of its fibres are n๐‘›nitalic_n-connected. This means, in particular, that the induced function โˆฅโขfโขโˆฅn:โˆฅโขAโขโˆฅnโ†’โˆฅโขBโขโˆฅn:โˆฅ๐‘“subscriptโˆฅ๐‘›โ†’โˆฅ๐ดsubscriptโˆฅ๐‘›โˆฅ๐ตsubscriptโˆฅ๐‘›{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}\,f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{n}:{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,A\,{\color% [rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{โˆฅ}}_{n}\to{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,B\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{n}โˆฅ italic_f โˆฅ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT : โˆฅ italic_A โˆฅ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT โ†’ โˆฅ italic_B โˆฅ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT is an equivalence. The following is an immediate consequence of the definition of n๐‘›nitalic_n-truncations.

Lemma 4 (Connectedness of spheres).

For nโ‰ฅโˆ’1๐‘›1n\geq-1italic_n โ‰ฅ - 1, \sphereโขn\sphere๐‘›\sphere{n}italic_n is (nโˆ’1)๐‘›1(n-1)( italic_n - 1 )-connected.

Usingย 4, we can easily prove the following:

Proposition 5 ([Bru16a, Propositionย 2.4.1]).

For n<m๐‘›๐‘šn<mitalic_n < italic_m, the group ฯ€nโข(\sphereโขm)subscript๐œ‹๐‘›\sphere๐‘š{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}(\sphere{m})italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_m ) is trivial.

For the sake of completeness, let us take the liberty of mentioning some results from [Bru16a, Chapterย 3] already here, since they also concern low-dimensional homotopy groups of spheres. A crucial result is the following theoremย [Uni13, Theoremย 8.6.4]:

Theorem 6 (Freudenthal suspension theorem).

Given an n๐‘›nitalic_n-connected and pointed type A๐ดAitalic_A, the map ฯƒ:Aโ†’ฮฉโข(SuspA):๐œŽโ†’๐ดฮฉSuspA{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}:A\to{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{(}\textnormal{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{Susp}}{$\,A$}})italic_ฯƒ : italic_A โ†’ roman_ฮฉ ( Susp italic_A ) is 2โขn2๐‘›2n2 italic_n-connected.

On can easily deduce fromย 6 that, in particular, ฯƒn:โˆฅโขAโขโˆฅnโ†’โˆฅโขฮฉโข(SuspA)โขโˆฅn:subscript๐œŽ๐‘›โ†’โˆฅ๐ดsubscriptโˆฅ๐‘›โˆฅฮฉSuspAsubscriptโˆฅ๐‘›{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}_{n}:{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,A\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ% }}_{n}\to{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{(}\textnormal{{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{% Susp}}{$\,A$}})\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{n}italic_ฯƒ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT : โˆฅ italic_A โˆฅ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT โ†’ โˆฅ roman_ฮฉ ( Susp italic_A ) โˆฅ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT is an equivalence. This allows us to prove the following result:

Corollary 7.

For nโ‰ฅ1๐‘›1n\geq 1italic_n โ‰ฅ 1, we have ฯ€nโข(\sphereโขn)โ‰…โ„คsubscript๐œ‹๐‘›\sphere๐‘›โ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}(\sphere{n})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}}italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_n ) โ‰… โ„ค. Furthermore, ฯ€nโข(\sphereโขn)subscript๐œ‹๐‘›\sphere๐‘›{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}(\sphere{n})italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_n ) is generated by in=โˆฃโขid\sphereโขnโขโˆฃsubscript๐‘–๐‘›โˆฃsubscriptid\sphere๐‘›โˆฃi_{n}={{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{id}}}_{\sphere{n}}\,{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{โˆฃ}$}}}italic_i start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT = โˆฃ id start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT โˆฃ.

Proof 3.1.

The synthetic proof of the classical result that ฯ€1โข(\sphereโข1)โ‰…โ„คsubscript๐œ‹1\sphere1โ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{1}(\sphere{1})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}}italic_ฯ€ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( 1 ) โ‰… โ„ค is due to Licata and Shulmanย [LS13]. The fact that ฯ€2โข(\sphereโข2)โ‰…ฯ€1โข(\sphereโข1)subscript๐œ‹2\sphere2subscript๐œ‹1\sphere1{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{2}(\sphere{2})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{1}(\sphere{1})}italic_ฯ€ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( 2 ) โ‰… italic_ฯ€ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( 1 ) is given by the LES associated to the Hopf fibration combined withย 5. The fact that ฯ€n+1โข(\sphereโขn+1)โ‰…ฯ€nโข(\sphereโขn)subscript๐œ‹๐‘›1\sphere๐‘›1subscript๐œ‹๐‘›\sphere๐‘›{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n+1}(\sphere{n+1})}\,\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \cong$}}\,\,{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\pi$}}_{n}(\sphere{n})}italic_ฯ€ start_POSTSUBSCRIPT italic_n + 1 end_POSTSUBSCRIPT ( italic_n + 1 ) โ‰… italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_n ) is an immediate consequence ofย 6. The second statement follows by induction on n๐‘›nitalic_n, using that suspension is functorial and thereby preserves the identity map.

We have now analysed all homotopy groups ฯ€nโข(\sphereโขm)subscript๐œ‹๐‘›\sphere๐‘š{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}(\sphere{m})italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_m ) with nโ‰คm๐‘›๐‘šn\leq mitalic_n โ‰ค italic_m. This yields the following:

Proposition 8.

Post-composition by hopf induces an isomorphism ฯ€3โข(\sphereโข3)โ‰…ฯ€3โข(\sphereโข2)subscript๐œ‹3\sphere3subscript๐œ‹3\sphere2{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{3})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 3 ) โ‰… italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ).

Proof 3.2.

By 1 and 3, we get an exact sequence

ฯ€3โข(\sphereโข1)โ†’ฯ€3โข(\sphereโข3)โ†’hopfโˆ—ฯ€3โข(\sphereโข2)โ†’ฯ€2โข(\sphereโข1)โ†’subscript๐œ‹3\sphere1subscript๐œ‹3\sphere3subscripthopfโ†’subscript๐œ‹3\sphere2โ†’subscript๐œ‹2\sphere1{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{1})\to{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}_{3}(% \sphere{3})\xrightarrow{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{hopf}}}_{*}}{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \pi$}}_{3}(\sphere{2})\to{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}_{2}(\sphere{1})italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 1 ) โ†’ italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 3 ) start_ARROW start_OVERACCENT hopf start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT end_OVERACCENT โ†’ end_ARROW italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ†’ italic_ฯ€ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( 1 )

as ฯ€nโข(\sphereโข1)subscript๐œ‹๐‘›\sphere1{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}(\sphere{1})italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( 1 ) vanishes for n>1๐‘›1n>1italic_n > 1, hopfโˆ—subscripthopf\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{hopf}}}_{*}hopf start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT is an isomorphism.

Corollary 9.

There is an isomorphism ฯˆ:ฯ€3โข(\sphereโข2)โ‰…โ„ค:๐œ“subscript๐œ‹3\sphere2โ„ค{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\psi$}}:{{\color[rgb]{0,0,0.8046875}\definecolor[named]% {pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})}\,\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cong$}}\,\,{{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}}italic_ฯˆ : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ‰… โ„ค. Furthermore, ฯ€3โข(\sphereโข2)subscript๐œ‹3\sphere2{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) is generated by hopf.

Proof 3.3.

By 7 we know that ฯ€3โข(\sphereโข3)subscript๐œ‹3\sphere3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{3})italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 3 ) is generated by the identity function on \sphereโข3\sphere3\sphere{3}3. We know that the isomorphism ฯ€3โข(\sphereโข3)โ‰…ฯ€3โข(\sphereโข2)subscript๐œ‹3\sphere3subscript๐œ‹3\sphere2{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{3})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 3 ) โ‰… italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) is given by post-composition by hopf and thus the generator of ฯ€3โข(\sphereโข3)subscript๐œ‹3\sphere3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{3})italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 3 ) is mapped to hopf.

3.1. Formalisation of Brunerieโ€™s Chapter 2

Most of these results have already been added to ๐šŠ๐š๐š๐šŠ/๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐šŠ๐š๐š๐šŠ๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}agda/cubical}typewriter_agda / typewriter_cubical by Mรถrtbergย &ย Pujetย [MP20], Ljungstrรถmย [Lju20], and Brunerie, Ljungstrรถm & Mรถrtbergย [BLM22]. The Freudenthal suspension theorem was formalised in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda by Cavalloย [Cav20], using a direct cubical proof followingย [Uni13, Theoremย 8.6.4]. 7 was given a direct proof, following the computation of cohomology groups of spheres inย [BLM22].

There were some technical difficulties related to the equivalence ฯ‰n:ฮฉnโขAโขโ‰ƒโข(\sphereโขnโ†’โ‹†A):subscript๐œ”๐‘›superscriptฮฉ๐‘›๐ดโ‰ƒsubscriptโ†’โ‹†\sphere๐‘›๐ด\omega_{n}:{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{$\Omega$}}^{n}\,{A}}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{(% \sphere{n}\to_{\star}A)}italic_ฯ‰ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT : roman_ฮฉ start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_A โ‰ƒ ( italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_A ), which is used to show that the two different definitions of homotopy groups are equivalent. In several proofs, it is more natural to work on the left-hand-side of ฯ‰nsubscript๐œ”๐‘›\omega_{n}italic_ฯ‰ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT. At the same time, working on the right-hand-side often makes constructing elements easier (compare, for instance, an explicit description of the generator of i3:ฯ€3โข(\sphereโข3):subscript๐‘–3subscript๐œ‹3\sphere3i_{3}:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{3})italic_i start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 3 ) described as a 3333-loop in \sphereโข3\sphere3\sphere{3}3 to the very compact definition i3=โˆฃโขid\sphereโข3โขโˆฃsubscript๐‘–3โˆฃsubscriptid\sphere3โˆฃi_{3}={{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{id}}}_{\sphere{3}}\,{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{โˆฃ}$}}}italic_i start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT = โˆฃ id start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT โˆฃ). This means that we often have to translate between the two definitions. One particularly important example is the LES of homotopy groups associated to a function Aโ†’โ‹†Bsubscriptโ†’โ‹†๐ด๐ตA\to_{\star}Bitalic_A โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_B. On each level, the maps are given as follows:

ฮฉnโข(fibโขf)โ†’ฮฉnโข๐–ฟ๐—Œ๐—ฮฉnโขAโ†’ฮฉnโขfฮฉnโขBsuperscriptฮฉ๐‘›๐–ฟ๐—Œ๐—โ†’superscriptฮฉ๐‘›fib๐‘“superscriptฮฉ๐‘›๐ดsuperscriptฮฉ๐‘›๐‘“โ†’superscriptฮฉ๐‘›๐ต\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\Omega$}}^{n}\,{(\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{fib}}}\,% {f})}\xrightarrow{\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}^{n}\,{\mathsf{fst}}\,}{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}^{n}\,{A}\xrightarrow{\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \Omega$}}^{n}\,{f}\,}{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}^{n}\,{B}roman_ฮฉ start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ( fib italic_f ) start_ARROW start_OVERACCENT roman_ฮฉ start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT sansserif_fst end_OVERACCENT โ†’ end_ARROW roman_ฮฉ start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_A start_ARROW start_OVERACCENT roman_ฮฉ start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_f end_OVERACCENT โ†’ end_ARROW roman_ฮฉ start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_B

This is then transported to the definition of homotopy groups as maps from spheres via ฯ‰nsubscript๐œ”๐‘›\omega_{n}italic_ฯ‰ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT. For the proof of e.g.ย 9, we need to know that the maps in the sequence are given as follows:

ฯ€nโข(fibโขf)โ†’๐–ฟ๐—Œ๐—โˆ—ฯ€nโข(A)โ†’fโˆ—ฯ€nโข(B)subscript๐–ฟ๐—Œ๐—โ†’subscript๐œ‹๐‘›fib๐‘“subscript๐œ‹๐‘›๐ดsubscript๐‘“โ†’subscript๐œ‹๐‘›๐ต\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\pi$}}_{n}{(\textnormal{{\color[rgb]{0,0,0.8046875% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{fib}}}\,{f})}% \xrightarrow{\,{{\color[rgb]{0.93359375,0.0703125,0.5390625}\definecolor[named% ]{pgfstrokecolor}{rgb}{0.93359375,0.0703125,0.5390625}\textsf{$\mathsf{fst}$}}% }_{*}\,}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}{(A)}\xrightarrow{\,f_{*}\,}{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \pi$}}_{n}{(B)}italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( fib italic_f ) start_ARROW start_OVERACCENT sansserif_fst start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT end_OVERACCENT โ†’ end_ARROW italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_A ) start_ARROW start_OVERACCENT italic_f start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT end_OVERACCENT โ†’ end_ARROW italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_B )

What we need is then more than just an equivalence ฯ‰n:ฮฉnโขAโขโ‰ƒโข(\sphereโขnโ†’โ‹†A):subscript๐œ”๐‘›superscriptฮฉ๐‘›๐ดโ‰ƒsubscriptโ†’โ‹†\sphere๐‘›๐ด\omega_{n}:{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{$\Omega$}}^{n}\,{A}}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{(% \sphere{n}\to_{\star}A)}italic_ฯ‰ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT : roman_ฮฉ start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_A โ‰ƒ ( italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_A ) โ€“ we need to show that this equivalence is functorial. This is implicitly assumed in Brunerieโ€™s thesis, but, in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda, we need to make it precise. Formalising this fact is not entirely trivial. First, we need a tractable definition of the equivalence in question. It can be described inductively with base case ฯ‰1:ฮฉโขAโ†’(\sphereโข1โ†’โ‹†A):subscript๐œ”1โ†’ฮฉ๐ดsubscriptโ†’โ‹†\sphere1๐ด\omega_{1}:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{$\Omega$}}\,{A}\to(\sphere{1}\to_{\star}A)italic_ฯ‰ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT : roman_ฮฉ italic_A โ†’ ( 1 โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_A ) given by:

ฯ‰1โขpโข๐–ป๐–บ๐—Œ๐–พsubscript๐œ”1๐‘๐–ป๐–บ๐—Œ๐–พ\displaystyle\omega_{1}\,p\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{base}$}}}italic_ฯ‰ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_p sansserif_base =โ‹†Aabsentsubscriptโ‹†๐ด\displaystyle=\star_{A}= โ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT
ฯ‰1โขpโข(๐—…๐—ˆ๐—ˆ๐—‰โขi)subscript๐œ”1๐‘๐—…๐—ˆ๐—ˆ๐—‰๐‘–\displaystyle\omega_{1}\,p\,({{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{loop}$}}}\,i)italic_ฯ‰ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_p ( sansserif_loop italic_i ) =pโขiabsent๐‘๐‘–\displaystyle=p\,i= italic_p italic_i

which we take to be pointed by refl. It is easy to verify that this is an equivalence. We define ฯ‰n+1subscript๐œ”๐‘›1\omega_{n+1}italic_ฯ‰ start_POSTSUBSCRIPT italic_n + 1 end_POSTSUBSCRIPT by the composition:

ฮฉn+1โขA=ฮฉโข(ฮฉnโขA)โ†’ฮฉโขฯ‰nฮฉโข(\sphereโขnโ†’โ‹†A)โ†’funExtโ‹†โˆ’(\sphereโขnโ†’โ‹†ฮฉโขA)โ†’(\sphereโขn+1โ†’โ‹†A)superscriptฮฉ๐‘›1๐ดฮฉsuperscriptฮฉ๐‘›๐ดฮฉsubscript๐œ”๐‘›โ†’ฮฉsubscriptโ†’โ‹†\sphere๐‘›๐ดfunExtโ‹†โˆ’โ†’subscriptโ†’โ‹†\sphere๐‘›ฮฉ๐ดโ†’subscriptโ†’โ‹†\sphere๐‘›1๐ด\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\Omega$}}^{n+1}\,{A}={\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{({% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}^{n}\,{A})}\xrightarrow{\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \Omega$}}\,{\omega_{n}}\,}{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{(\sphere{n}\to_{\star}% A)}\xrightarrow{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0,0.8046875}\textsf{funExt${}^{-}_{\star}$}}}(\sphere{n}\to_{\star}{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{A})\xrightarrow{\,}(\sphere{n+1}\to_{\star}A)roman_ฮฉ start_POSTSUPERSCRIPT italic_n + 1 end_POSTSUPERSCRIPT italic_A = roman_ฮฉ ( roman_ฮฉ start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_A ) start_ARROW start_OVERACCENT roman_ฮฉ italic_ฯ‰ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_OVERACCENT โ†’ end_ARROW roman_ฮฉ ( italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_A ) start_ARROW overfunExt-โ‹† โ†’ end_ARROW ( italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT roman_ฮฉ italic_A ) start_ARROW โ†’ end_ARROW ( italic_n + 1 โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_A )

where the last arrow comes from the adjunction SuspโŠฃฮฉdoes-not-proveSuspฮฉ{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{Susp}}\dashv{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{}Susp โŠฃ roman_ฮฉ. This is a composition of equivalences, and hence an equivalence. We then need to verify that the following commutes

ฮฉnโขAsuperscriptฮฉ๐‘›๐ด{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}^{n}\,{A}}}roman_ฮฉ start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_A(\sphereโขnโ†’โ‹†A)subscriptโ†’โ‹†\sphere๐‘›๐ด{{(\sphere{n}\to_{\star}A)}}( italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_A )ฮฉnโขBsuperscriptฮฉ๐‘›๐ต{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}^{n}\,{B}}}roman_ฮฉ start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_B(\sphereโขnโ†’โ‹†B)subscriptโ†’โ‹†\sphere๐‘›๐ต{{(\sphere{n}\to_{\star}B)}}( italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_B )ฯ‰nsubscript๐œ”๐‘›\scriptstyle{\omega_{n}}italic_ฯ‰ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPTฮฉnโขfsuperscriptฮฉ๐‘›๐‘“\scriptstyle{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\scriptstyle\Omega$}}^{n}\,{\!f}}roman_ฮฉ start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_fฯ‰nsubscript๐œ”๐‘›\scriptstyle{\omega_{n}}italic_ฯ‰ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPTfโˆ—subscript๐‘“\scriptstyle{f_{*}}italic_f start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT

This can be proved inductively. The base case is easy and the inductive step is given by the following diagram

ฮฉโข(\sphereโขnโ†’โ‹†A)ฮฉsubscriptโ†’โ‹†\sphere๐‘›๐ด{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{(}\sphere{n}\to_{\star}A)}}roman_ฮฉ ( italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_A )ฮฉn+1โขAsuperscriptฮฉ๐‘›1๐ด{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}^{n+1}\,{A}}}roman_ฮฉ start_POSTSUPERSCRIPT italic_n + 1 end_POSTSUPERSCRIPT italic_A(\sphereโขn+1โ†’โ‹†A)subscriptโ†’โ‹†\sphere๐‘›1๐ด{{(\sphere{n+1}\to_{\star}A)}}( italic_n + 1 โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_A )ฮฉn+1โขBsuperscriptฮฉ๐‘›1๐ต{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}^{n+1}\,{B}}}roman_ฮฉ start_POSTSUPERSCRIPT italic_n + 1 end_POSTSUPERSCRIPT italic_B(\sphereโขn+1โ†’โ‹†B)subscriptโ†’โ‹†\sphere๐‘›1๐ต{{(\sphere{n+1}\to_{\star}B)}}( italic_n + 1 โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_B )ฮฉโข(\sphereโขnโ†’โ‹†B)ฮฉsubscriptโ†’โ‹†\sphere๐‘›๐ต{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{(}\sphere{n}\to_{\star}B)}}roman_ฮฉ ( italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_B )ฯ‰n+1subscript๐œ”๐‘›1\scriptstyle{\omega_{n+1}}italic_ฯ‰ start_POSTSUBSCRIPT italic_n + 1 end_POSTSUBSCRIPTฮฉn+1โขfsuperscriptฮฉ๐‘›1๐‘“\scriptstyle{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\scriptstyle\Omega$}}^{n+1}\,{f}}roman_ฮฉ start_POSTSUPERSCRIPT italic_n + 1 end_POSTSUPERSCRIPT italic_fฯ‰n+1subscript๐œ”๐‘›1\scriptstyle{\omega_{n+1}}italic_ฯ‰ start_POSTSUBSCRIPT italic_n + 1 end_POSTSUBSCRIPTfโˆ—subscript๐‘“\scriptstyle{f_{*}}italic_f start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPTโ€†โ€†โ‰ƒโ€†โ€†ฮฉโขfโˆ—ฮฉsubscript๐‘“\scriptstyle{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\scriptstyle\Omega$}}\,{f_{*}}}roman_ฮฉ italic_f start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPTโ€†โ€†โ‰ƒโ€†โ€†ฮฉโขฯ‰nฮฉsubscript๐œ”๐‘›\scriptstyle{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\scriptstyle\Omega$}}\,{\omega_{n}}}roman_ฮฉ italic_ฯ‰ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPTฮฉโขฯ‰nฮฉsubscript๐œ”๐‘›\scriptstyle{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\scriptstyle\Omega$}}\,{\omega_{n}}}roman_ฮฉ italic_ฯ‰ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT

where the commutativity of the outer square comes from the base case paired with the inductive hypothesis, the triangles from the definition of ฯ‰n+1subscript๐œ”๐‘›1\omega_{n+1}italic_ฯ‰ start_POSTSUBSCRIPT italic_n + 1 end_POSTSUBSCRIPT and the right-most square from a straightforward argument.

4. The Brunerie number

Here we give an overview of the first half of Brunerieโ€™s proof. This corresponds to [Bru16a, Chapterย 3] and culminates in the isomorphism ฯ€4โข(\sphereโข3)โ‰…โ„ค/ฮฒโ„คsubscript๐œ‹4\sphere3โ„คฮฒโ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}/{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\beta$}}{\color[rgb]{0,0,0.8046875% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) โ‰… โ„ค / sansserif_ฮฒ sansserif_โ„ค for an at this point unknown โ€œBrunerie numberโ€ ฮฒ:โ„ค:๐›ฝโ„ค{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}:{\color[rgb]{0,0,0.8046875}\definecolor[named]% {pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฮฒ : โ„ค. We also discuss the formalisation of this part of the proof and various simplifications found during the formalisation.

4.1. The James construction

To define ฮฒ๐›ฝ\betaitalic_ฮฒ, Brunerie uses the James constructionย [Jam55], which he introduced in HoTT and partially formalised in [Bru19].

Proposition 10 (James construction).

For a (kโ‰ฅ0)๐‘˜0(k\geq 0)( italic_k โ‰ฅ 0 )-connected pointed type A๐ดAitalic_A, there are types JโขAnJsubscript๐ด๐‘›\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{J}}}{}_{n}{\,A}J start_FLOATSUBSCRIPT italic_n end_FLOATSUBSCRIPT italic_A with inclusions

JโขA0โธฆj0โ†’JโขA1โธฆj1โ†’JโขA2โธฆj2โ†’โ‹ฏโธฆj0โ†’Jsubscript๐ด0Jsubscript๐ด1โธฆj1โ†’Jsubscript๐ด2โธฆj2โ†’โ‹ฏ\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{J}}}{}_{0}{\,A}\lhook\joinrel\xrightarrow{\,j_{0}\,}% \textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{J}}}{}_{1}{\,A}\lhook\joinrel\xrightarrow{\,j_{1}\,}% \textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{J}}}{}_{2}{\,A}\lhook\joinrel\xrightarrow{\,j_{2}\,}\cdotsJ start_FLOATSUBSCRIPT 0 end_FLOATSUBSCRIPT italic_A โธฆj0โ†’ J start_FLOATSUBSCRIPT 1 end_FLOATSUBSCRIPT italic_A โธฆj1โ†’ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT italic_A โธฆj2โ†’ โ‹ฏ

such that its sequential colimit JโขAโˆžโขโ‰ƒโขฮฉโข(SuspA)Jsubscript๐ดโ‰ƒฮฉSuspA{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{J}}}{}_{\infty}{\,A}}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{{\color% [rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\Omega$}}\,{(\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,A$}})}}J start_FLOATSUBSCRIPT โˆž end_FLOATSUBSCRIPT italic_A โ‰ƒ roman_ฮฉ ( Susp italic_A ). Furthermore, jn:JโขAnโ†ชJโขAn+1:subscript๐‘—๐‘›โ†ชJsubscript๐ด๐‘›Jsubscript๐ด๐‘›1j_{n}:\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_{n}{\,A}\hookrightarrow\textnormal{% {\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{J}}}{}_{n+1}{\,A}italic_j start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT : J start_FLOATSUBSCRIPT italic_n end_FLOATSUBSCRIPT italic_A โ†ช J start_FLOATSUBSCRIPT italic_n + 1 end_FLOATSUBSCRIPT italic_A is (nโข(k+1)+(kโˆ’1))๐‘›๐‘˜1๐‘˜1(n(k+1)+(k-1))( italic_n ( italic_k + 1 ) + ( italic_k - 1 ) )-connected.

A consequence of 10 is the following fact

Proposition 11.

Given a (kโ‰ฅ0)๐‘˜0(k\geq 0)( italic_k โ‰ฅ 0 )-connected type A๐ดAitalic_A, there is a (3โขk+1)3๐‘˜1(3k+1)( 3 italic_k + 1 )-connected map JโขA2โ†’ฮฉโข(SuspA)absentโ†’Jsubscript๐ด2ฮฉSuspA\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{J}}}{}_{2}{\,A}\xrightarrow{}{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{(% \textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{Susp}}{$\,A$}})}J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT italic_A start_ARROW start_OVERACCENT end_OVERACCENT โ†’ end_ARROW roman_ฮฉ ( Susp italic_A ).

The proof ofย 11 uses that JโขAโˆžJsubscript๐ด\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{J}}}{}_{\infty}{\,A}J start_FLOATSUBSCRIPT โˆž end_FLOATSUBSCRIPT italic_A, the sequential colimit of the sequence inย 10, can be shown to be equivalent to ฮฉโข(SuspA)ฮฉSuspA{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{(\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,A$}})}roman_ฮฉ ( Susp italic_A ). This, paired with some results on the connectivity of sequential colimits, gives the statement. A key consequence of this is the following result which allows us to express ฯ€4โข(\sphereโข3)subscript๐œ‹4\sphere3{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) as ฯ€3โข(Jโข\sphere2โข2)subscript๐œ‹3Jsubscript\sphere22{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2% }})}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 ) โ€“ a group which turns out to be quite a bit easier to reason about.

Theorem 12.

ฯ€4โข(\sphereโข3)โ‰…ฯ€3โข(Jโข\sphere2โข2)subscript๐œ‹4\sphere3subscript๐œ‹3Jsubscript\sphere22{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2% }})}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) โ‰… italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 )

Proof 4.1.

Because \sphereโข2\sphere2\sphere{2}2 is 1111-connected, 11 tells us that there is a 4444-connected map

Jโข\sphere2โข2โ†’ฮฉโข(Susp\sphereโข2)=ฮฉโข(\sphereโข3)โ†’Jsubscript\sphere22ฮฉSusp\sphereโข2ฮฉ\sphere3\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2}}\to{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{(}% \textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{Susp}}{$\,\sphere{2}$}})={\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{(}% \sphere{3})J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 โ†’ roman_ฮฉ ( Susp 2 ) = roman_ฮฉ ( 3 )

In particular, it is 3333-connected and induces an equivalence โˆฅโขJโข\sphere2โข2โขโˆฅ3โขโ‰ƒโขโˆฅโขฮฉโข\sphereโข3โขโˆฅ3โˆฅJsubscript\sphere22subscriptโˆฅ3โ‰ƒโˆฅฮฉ\sphere3subscriptโˆฅ3{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}\,\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2}}\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{โˆฅ}}_{3}}\,\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\Omega$}}\,{\sphere{3}}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{3}}โˆฅ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 โˆฅ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT โ‰ƒ โˆฅ roman_ฮฉ 3 โˆฅ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT. We get:

ฯ€4โข(\sphereโข3)โ‰…ฯ€3โข(ฮฉโข\sphereโข3)โ‰…ฯ€3โข(Jโข\sphere2โข2)subscript๐œ‹4\sphere3subscript๐œ‹3ฮฉ\sphere3subscript๐œ‹3Jsubscript\sphere22{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}({\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{\sphere{3}})\,% \,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cong$}}\,\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}_{3}(\textnormal{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2}})italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) โ‰… italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( roman_ฮฉ 3 ) โ‰… italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 )

4.2. Formalisation of the James construction

This is a particularly technical part of Brunerieโ€™s thesis, primarily due to the high number of higher coherences which need to be verified in the proof of 10. While this has, subsequent to our efforts, been formalised in its entirety by Kangย [Kan22a], we have taken a shortcut by giving a direct proof ofย 12, which means we do not in fact need the full James construction. Consequently, we instead give direct definitions of JโขAnJsubscript๐ด๐‘›\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{J}}}{}_{n}{\,A}J start_FLOATSUBSCRIPT italic_n end_FLOATSUBSCRIPT italic_A for nโ‰ค2๐‘›2n\leq 2italic_n โ‰ค 2 for a pointed type A๐ดAitalic_A. {defi}[Low dimensional James construction] We define JโขA0=๐Ÿ™Jsubscript๐ด01\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{J}}}{}_{0}{\,A}={\color[rgb]{0,0,0.8046875}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\mathbbm{1}$}}J start_FLOATSUBSCRIPT 0 end_FLOATSUBSCRIPT italic_A = blackboard_1 and JโขA1=AJsubscript๐ด1๐ด\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{J}}}{}_{1}{\,A}=AJ start_FLOATSUBSCRIPT 1 end_FLOATSUBSCRIPT italic_A = italic_A. The type JโขA2Jsubscript๐ด2\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{J}}}{}_{2}{\,A}J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT italic_A is defined as the pushout:

AโˆจA๐ด๐ด{{A\vee A}}italic_A โˆจ italic_AA๐ด{A}italic_AAร—A๐ด๐ด{{A\times A}}italic_A ร— italic_AJโขA2Jsubscript๐ด2{{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{J}}}{}_{2}{\,A}}}J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT italic_Aiโˆจsuperscript๐‘–\scriptstyle i^{\vee}italic_i start_POSTSUPERSCRIPT โˆจ end_POSTSUPERSCRIPTโˆ‡โˆ‡\scriptstyle\nablaโˆ‡โŒŸโŒŸ\scriptstyle{\lrcorner}โŒŸ

We remark that the construction inย subsectionย 4.2 is not definitionally the same as Brunerieโ€™s; in his thesis, these constructions are theorems rather than definitions. Here we take them as definitions. With JโขAnJsubscript๐ด๐‘›\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{J}}}{}_{n}{\,A}J start_FLOATSUBSCRIPT italic_n end_FLOATSUBSCRIPT italic_A defined this way, the map j0:JโขA0โ†’JโขA1:subscript๐‘—0โ†’Jsubscript๐ด0Jsubscript๐ด1j_{0}:\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_{0}{\,A}\to\textnormal{{\color[rgb]% {0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_% {1}{\,A}italic_j start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT : J start_FLOATSUBSCRIPT 0 end_FLOATSUBSCRIPT italic_A โ†’ J start_FLOATSUBSCRIPT 1 end_FLOATSUBSCRIPT italic_A is just the constant pointed map and j1:JโขA1โ†’JโขA2:subscript๐‘—1โ†’Jsubscript๐ด1Jsubscript๐ด2j_{1}:\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_{1}{\,A}\to\textnormal{{\color[rgb]% {0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_% {2}{\,A}italic_j start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT : J start_FLOATSUBSCRIPT 1 end_FLOATSUBSCRIPT italic_A โ†’ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT italic_A is ๐—‚๐—‡๐—‹๐—‚๐—‡๐—‹\mathsf{inr}sansserif_inr.

Before we continue, let us temporarily redefine \sphereโข2\sphere2\sphere{2}2 to be the following equivalent HIT. This will make some of the following constructions more compact. \ExecuteMetaData[agda/latex/background.tex]s2

The next lemma will be crucial. It is a special case of the Wedge Connectivity Lemmaย [Uni13, Lemmaย 8.6.2], of which we have formalised a version of the proof of the sphere case inย [BLM22, Lemmaย 8]. From the point of view of formalisation, this proof is easier to work with since it gives more useful definitional equalities.

Lemma 13 (Wedge connectivity for \sphereโข2\sphere2\sphere{2}2).

Let P:\sphereโข2ร—\sphereโข2โ†’2-Type:๐‘ƒโ†’\sphere2\sphere22-TypeP:\sphere{2}\times\sphere{2}\to\textnormal{${2}$-{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Type}}}italic_P : 2 ร— 2 โ†’ 2 - sansserif_Type. Any function f:(x:\sphere2ร—\sphere2)โ†’Pxf:(x:\sphere{2}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0,0.8046875}\textsf{$\times$}}\,\sphere{2})\to P\,xitalic_f : ( italic_x : 2 ร— 2 ) โ†’ italic_P italic_x is induced by the following data:

flsubscript๐‘“๐‘™\displaystyle f_{l}italic_f start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT :(x:\sphere2)โ†’P(x,๐–ป๐–บ๐—Œ๐–พ)\displaystyle:(x:\sphere{2})\to P(x\,{{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}\,{{\color[rgb% ]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{base}$}}}): ( italic_x : 2 ) โ†’ italic_P ( italic_x , sansserif_base )
frsubscript๐‘“๐‘Ÿ\displaystyle f_{r}italic_f start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT :(y:\sphere2)โ†’P(๐–ป๐–บ๐—Œ๐–พ,y)\displaystyle:(y:\sphere{2})\to P({{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{base}$}}}\,{{\color[% rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}% \textsf{$\mathsf{,}$}}}\,y): ( italic_y : 2 ) โ†’ italic_P ( sansserif_base , italic_y )
flโขrsubscript๐‘“๐‘™๐‘Ÿ\displaystyle f_{lr}italic_f start_POSTSUBSCRIPT italic_l italic_r end_POSTSUBSCRIPT :flโข๐–ป๐–บ๐—Œ๐–พโขโ‰กโขfrโข๐–ป๐–บ๐—Œ๐–พ:absentsubscript๐‘“๐‘™๐–ป๐–บ๐—Œ๐–พโ‰กsubscript๐‘“๐‘Ÿ๐–ป๐–บ๐—Œ๐–พ\displaystyle:{f_{l}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{base}$}}}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก% }}\,{f_{r}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0.546875,0}\textsf{$\mathsf{base}$}}}}: italic_f start_POSTSUBSCRIPT italic_l end_POSTSUBSCRIPT sansserif_base โ‰ก italic_f start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT sansserif_base

Before we discuss the formalisation of 12 stated with the low dimensional James construction, we first construct the following function. The goal is to define a family of equivalences fx:โˆฅโขJโข\sphere2โข2โขโˆฅ3โขโ‰ƒโขโˆฅโขJโข\sphere2โข2โขโˆฅ3:subscript๐‘“๐‘ฅโˆฅJsubscript\sphere22subscriptโˆฅ3โ‰ƒโˆฅJsubscript\sphere22subscriptโˆฅ3f_{x}:{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}\,\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2}}\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{โˆฅ}}_{3}}\,\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,% \textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2}}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{3}}italic_f start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT : โˆฅ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 โˆฅ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT โ‰ƒ โˆฅ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 โˆฅ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT over x:\sphereโข2:๐‘ฅ\sphere2x:\sphere{2}italic_x : 2. We do this by truncation elimination and pattern matching on x๐‘ฅxitalic_x, starting with the ๐–ป๐–บ๐—Œ๐–พ๐–ป๐–บ๐—Œ๐–พ\mathsf{base}sansserif_base case:

f๐–ป๐–บ๐—Œ๐–พโขโˆฃโข๐—‚๐—‡๐—…โข(x,y)โขโˆฃsubscript๐‘“๐–ป๐–บ๐—Œ๐–พโˆฃ๐—‚๐—‡๐—…๐‘ฅ๐‘ฆโˆฃ\displaystyle f_{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0.546875,0}\textsf{$\mathsf{base}$}}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}% \,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inl}$}}}\,{(}x,y)\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}italic_f start_POSTSUBSCRIPT sansserif_base end_POSTSUBSCRIPT โˆฃ sansserif_inl ( italic_x , italic_y ) โˆฃ =โˆฃโข๐—‚๐—‡๐—…โข(xโข,โขy)โขโˆฃabsentโˆฃ๐—‚๐—‡๐—…๐‘ฅ,๐‘ฆโˆฃ\displaystyle={{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{inl}$}}% }\,{(}x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{,}$}}}\,y)\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}= โˆฃ sansserif_inl ( italic_x , italic_y ) โˆฃ
f๐–ป๐–บ๐—Œ๐–พโขโˆฃโข๐—‚๐—‡๐—‹โขzโขโˆฃsubscript๐‘“๐–ป๐–บ๐—Œ๐–พโˆฃ๐—‚๐—‡๐—‹๐‘งโˆฃ\displaystyle f_{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0.546875,0}\textsf{$\mathsf{base}$}}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}% \,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inr}$}}}\,{z}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}italic_f start_POSTSUBSCRIPT sansserif_base end_POSTSUBSCRIPT โˆฃ sansserif_inr italic_z โˆฃ =โˆฃโข๐—‚๐—‡๐—…โข(๐–ป๐–บ๐—Œ๐–พโข,โขz)โขโˆฃabsentโˆฃ๐—‚๐—‡๐—…๐–ป๐–บ๐—Œ๐–พ,๐‘งโˆฃ\displaystyle={{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{inl}$}}% }\,{(}{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{base}$}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,z)\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}= โˆฃ sansserif_inl ( sansserif_base , italic_z ) โˆฃ
f๐–ป๐–บ๐—Œ๐–พโขโˆฃโข๐—‰๐—Ž๐—Œ๐—โข(๐—‚๐—‡๐—…โขx)โขiโขโˆฃsubscript๐‘“๐–ป๐–บ๐—Œ๐–พโˆฃ๐—‰๐—Ž๐—Œ๐—๐—‚๐—‡๐—…๐‘ฅ๐‘–โˆฃ\displaystyle f_{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0.546875,0}\textsf{$\mathsf{base}$}}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}% \,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{({{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{inl}$}}% }\,{x}})\,i\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}italic_f start_POSTSUBSCRIPT sansserif_base end_POSTSUBSCRIPT โˆฃ sansserif_push ( sansserif_inl italic_x ) italic_i โˆฃ =โˆฃโข(๐—‰๐—Ž๐—Œ๐—โข(๐—‚๐—‡๐—…โขx)โ‹…๐—‰๐—Ž๐—Œ๐—โข(๐—‚๐—‡๐—‹โขx)โˆ’1)โขiโขโˆฃabsentโˆฃโ‹…๐—‰๐—Ž๐—Œ๐—๐—‚๐—‡๐—…๐‘ฅ๐—‰๐—Ž๐—Œ๐—superscript๐—‚๐—‡๐—‹๐‘ฅ1๐‘–โˆฃ\displaystyle={{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{({{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}% }}\,{({{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inl}$}}}\,{x})}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{push}$}}}\,{({{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{inr}$}}}\,{x})}}^{{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$-1$}}})}\,i\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}= โˆฃ ( sansserif_push ( sansserif_inl italic_x ) โ‹… sansserif_push ( sansserif_inr italic_x ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ) italic_i โˆฃ
f๐–ป๐–บ๐—Œ๐–พโขโˆฃโข๐—‰๐—Ž๐—Œ๐—โข(๐—‚๐—‡๐—‹โขy)โขiโขโˆฃsubscript๐‘“๐–ป๐–บ๐—Œ๐–พโˆฃ๐—‰๐—Ž๐—Œ๐—๐—‚๐—‡๐—‹๐‘ฆ๐‘–โˆฃ\displaystyle f_{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0.546875,0}\textsf{$\mathsf{base}$}}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}% \,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{({{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{inr}$}}% }\,{y}})\,i\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}italic_f start_POSTSUBSCRIPT sansserif_base end_POSTSUBSCRIPT โˆฃ sansserif_push ( sansserif_inr italic_y ) italic_i โˆฃ =โˆฃโข๐—‚๐—‡๐—…โข(๐–ป๐–บ๐—Œ๐–พโข,โขy)โขโˆฃabsentโˆฃ๐—‚๐—‡๐—…๐–ป๐–บ๐—Œ๐–พ,๐‘ฆโˆฃ\displaystyle={{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{inl}$}}% }\,{(}{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{base}$}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,y)\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}= โˆฃ sansserif_inl ( sansserif_base , italic_y ) โˆฃ
f๐–ป๐–บ๐—Œ๐–พโขโˆฃโข๐—‰๐—Ž๐—Œ๐—โข(๐—‰๐—Ž๐—Œ๐—โขyโขj)โขiโขโˆฃsubscript๐‘“๐–ป๐–บ๐—Œ๐–พโˆฃ๐—‰๐—Ž๐—Œ๐—๐—‰๐—Ž๐—Œ๐—๐‘ฆ๐‘—๐‘–โˆฃ\displaystyle f_{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0.546875,0}\textsf{$\mathsf{base}$}}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}% \,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{({{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}% }}\,{y}\,j)}\,i\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}italic_f start_POSTSUBSCRIPT sansserif_base end_POSTSUBSCRIPT โˆฃ sansserif_push ( sansserif_push italic_y italic_j ) italic_i โˆฃ =โ€ฆabsentโ€ฆ\displaystyle=\dots= โ€ฆ

where the omitted step consists of a proof that ๐—‰๐—Ž๐—Œ๐—โข(๐—‚๐—‡๐—…โข๐–ป๐–บ๐—Œ๐–พ)โ‹…๐—‰๐—Ž๐—Œ๐—โข(๐—‚๐—‡๐—‹โข๐–ป๐–บ๐—Œ๐–พ)โˆ’1โ‰กreflโ‹…๐—‰๐—Ž๐—Œ๐—๐—‚๐—‡๐—…๐–ป๐–บ๐—Œ๐–พ๐—‰๐—Ž๐—Œ๐—superscript๐—‚๐—‡๐—‹๐–ป๐–บ๐—Œ๐–พ1refl{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{({{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{inl}$}}% }\,{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{base}$}}}})}\cdot{{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}% }}\,{({{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inr}$}}}\,{{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{base}$}% }}})}}^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$-1$}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% refl}}sansserif_push ( sansserif_inl sansserif_base ) โ‹… sansserif_push ( sansserif_inr sansserif_base ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โ‰ก refl. It is an easy lemma that f๐–ป๐–บ๐—Œ๐–พsubscript๐‘“๐–ป๐–บ๐—Œ๐–พf_{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{base}$}}}italic_f start_POSTSUBSCRIPT sansserif_base end_POSTSUBSCRIPT is equal to the identity on โˆฅโขJโข\sphere2โข2โขโˆฅ3โˆฅJsubscript\sphere22subscriptโˆฅ3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}\,\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2}}\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{โˆฅ}}_{3}โˆฅ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 โˆฅ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT. To complete the definition of fxsubscript๐‘“๐‘ฅf_{x}italic_f start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT, we need to consider the case when x=๐—Œ๐—Ž๐—‹๐–ฟโขiโขj๐‘ฅ๐—Œ๐—Ž๐—‹๐–ฟ๐‘–๐‘—x={{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{surf}$}}}\,i\,jitalic_x = sansserif_surf italic_i italic_j. This amounts to providing a dependent function:

f๐—Œ๐—Ž๐—‹๐–ฟ:(x:โˆฅJ\sphere22โˆฅ3)โ†’ฮฉ2(โˆฅJ\sphere22โˆฅ3,f๐–ป๐–บ๐—Œ๐–พx)f_{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{surf}$}}}:(x:{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,% \textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2}}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{3})\to{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}^{2}\,{({\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,% \textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2}}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{3}\,{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{,}$}}}\,f_{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{base}$}}}\,x)}italic_f start_POSTSUBSCRIPT sansserif_surf end_POSTSUBSCRIPT : ( italic_x : โˆฅ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 โˆฅ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) โ†’ roman_ฮฉ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( โˆฅ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 โˆฅ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT , italic_f start_POSTSUBSCRIPT sansserif_base end_POSTSUBSCRIPT italic_x )

To do this, we will, in particular, need to provide a family of fillers

Q(xโข,โขy):reflโˆฃโข๐—‚๐—‡๐—…โข(xโข,โขy)โขโˆฃโ‰กreflโˆฃโข๐—‚๐—‡๐—…โข(xโข,โขy)โขโˆฃ:subscript๐‘„๐‘ฅ,๐‘ฆsubscriptreflโˆฃ๐—‚๐—‡๐—…๐‘ฅ,๐‘ฆโˆฃsubscriptreflโˆฃ๐—‚๐—‡๐—…๐‘ฅ,๐‘ฆโˆฃQ_{(x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{,}$}}}\,y)}:{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{refl}}_{{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{โˆฃ}$}}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{inl}$}}}\,{(}x\,{{\color[% rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}% \textsf{$\mathsf{,}$}}}\,y)\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{refl}}_{{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{inl}$}}}\,{(}x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}\,y)\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{โˆฃ}$}}}}italic_Q start_POSTSUBSCRIPT ( italic_x , italic_y ) end_POSTSUBSCRIPT : refl start_POSTSUBSCRIPT โˆฃ sansserif_inl ( italic_x , italic_y ) โˆฃ end_POSTSUBSCRIPT โ‰ก refl start_POSTSUBSCRIPT โˆฃ sansserif_inl ( italic_x , italic_y ) โˆฃ end_POSTSUBSCRIPT

This is a 1111-type, and thusย 13 applies. We define:

Q(๐–ป๐–บ๐—Œ๐–พโข,โขy)โขiโขjsubscript๐‘„๐–ป๐–บ๐—Œ๐–พ,๐‘ฆ๐‘–๐‘—\displaystyle Q_{({{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{base}$}}}\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{,}$}}}\,y)}\,i\,jitalic_Q start_POSTSUBSCRIPT ( sansserif_base , italic_y ) end_POSTSUBSCRIPT italic_i italic_j =โˆฃโข๐—‚๐—‡๐—…โข(๐—Œ๐—Ž๐—‹๐–ฟโขiโขjโข,โขy)โขโˆฃabsentโˆฃ๐—‚๐—‡๐—…๐—Œ๐—Ž๐—‹๐–ฟ๐‘–๐‘—,๐‘ฆโˆฃ\displaystyle={{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{inl}$}}% }\,{(}{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{surf}$}}}\,i\,j\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,y)\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}= โˆฃ sansserif_inl ( sansserif_surf italic_i italic_j , italic_y ) โˆฃ
Q(xโข,โข๐–ป๐–บ๐—Œ๐–พ)โขiโขjsubscript๐‘„๐‘ฅ,๐–ป๐–บ๐—Œ๐–พ๐‘–๐‘—\displaystyle Q_{(x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{base}$}}})}\,i\,jitalic_Q start_POSTSUBSCRIPT ( italic_x , sansserif_base ) end_POSTSUBSCRIPT italic_i italic_j =โˆฃโข๐—‚๐—‡๐—…โข(xโข,โข๐—Œ๐—Ž๐—‹๐–ฟโขiโขj)โขโˆฃabsentโˆฃ๐—‚๐—‡๐—…๐‘ฅ,๐—Œ๐—Ž๐—‹๐–ฟ๐‘–๐‘—โˆฃ\displaystyle={{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{inl}$}}% }\,{(}x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{,}$}}}\,{{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{surf}$}}}\,i\,j)\,{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{โˆฃ}$}}}= โˆฃ sansserif_inl ( italic_x , sansserif_surf italic_i italic_j ) โˆฃ

The fact that these two constructions agree when both x๐‘ฅxitalic_x and y๐‘ฆyitalic_y are ๐–ป๐–บ๐—Œ๐–พ๐–ป๐–บ๐—Œ๐–พ\mathsf{base}sansserif_base is a technical but relatively straightforward lemma. Thereby, Q(xโข,โขy)subscript๐‘„๐‘ฅ,๐‘ฆQ_{(x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{,}$}}}\,y)}italic_Q start_POSTSUBSCRIPT ( italic_x , italic_y ) end_POSTSUBSCRIPT is defined. We may now define f๐—Œ๐—Ž๐—‹๐–ฟsubscript๐‘“๐—Œ๐—Ž๐—‹๐–ฟf_{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{surf}$}}}italic_f start_POSTSUBSCRIPT sansserif_surf end_POSTSUBSCRIPT:

f๐—Œ๐—Ž๐—‹๐–ฟโขโˆฃโข๐—‚๐—‡๐—…โข(xโข,โขy)โขโˆฃsubscript๐‘“๐—Œ๐—Ž๐—‹๐–ฟโˆฃ๐—‚๐—‡๐—…๐‘ฅ,๐‘ฆโˆฃ\displaystyle f_{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0.546875,0}\textsf{$\mathsf{surf}$}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}% \,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inl}$}}}\,{(}x\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,y)\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}italic_f start_POSTSUBSCRIPT sansserif_surf end_POSTSUBSCRIPT โˆฃ sansserif_inl ( italic_x , italic_y ) โˆฃ =Q(xโข,โขy)absentsubscript๐‘„๐‘ฅ,๐‘ฆ\displaystyle=Q_{(x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}\,y)}= italic_Q start_POSTSUBSCRIPT ( italic_x , italic_y ) end_POSTSUBSCRIPT
f๐—Œ๐—Ž๐—‹๐–ฟโขโˆฃโข๐—‚๐—‡๐—‹โขzโขโˆฃsubscript๐‘“๐—Œ๐—Ž๐—‹๐–ฟโˆฃ๐—‚๐—‡๐—‹๐‘งโˆฃ\displaystyle f_{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0.546875,0}\textsf{$\mathsf{surf}$}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}% \,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inr}$}}}\,{z}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}italic_f start_POSTSUBSCRIPT sansserif_surf end_POSTSUBSCRIPT โˆฃ sansserif_inr italic_z โˆฃ =Q(๐–ป๐–บ๐—Œ๐–พโข,โขz)absentsubscript๐‘„๐–ป๐–บ๐—Œ๐–พ,๐‘ง\displaystyle=Q_{({{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{base}$}}}\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{,}$}}}\,z)}= italic_Q start_POSTSUBSCRIPT ( sansserif_base , italic_z ) end_POSTSUBSCRIPT

The higher cases are easy due to the fact that the goal becomes 00-truncated, making it sufficient to define them for ๐–ป๐–บ๐—Œ๐–พ:\sphereโข2:๐–ป๐–บ๐—Œ๐–พ\sphere2{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{base}$}}}:\sphere{2}sansserif_base : 2. Thus, fxsubscript๐‘“๐‘ฅf_{x}italic_f start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT is defined for all x:\sphereโข2:๐‘ฅ\sphere2x:\sphere{2}italic_x : 2.

Lemma 14.

For x:\sphereโข2:๐‘ฅ\sphere2x:\sphere{2}italic_x : 2, fxsubscript๐‘“๐‘ฅf_{x}italic_f start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT is an automorphism on โˆฅโขJโข\sphere2โข2โขโˆฅ3โˆฅJsubscript\sphere22subscriptโˆฅ3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}\,\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2}}\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{โˆฅ}}_{3}โˆฅ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 โˆฅ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT.

Proof 4.2.

To make coming proofs easier, this is proved by explicitly constructing the inverse analogously to fxsubscript๐‘“๐‘ฅf_{x}italic_f start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT.

f๐–ป๐–บ๐—Œ๐–พโˆ’1โขxsubscriptsuperscript๐‘“1๐–ป๐–บ๐—Œ๐–พ๐‘ฅ\displaystyle f^{-1}_{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{base}$}}}\,xitalic_f start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT sansserif_base end_POSTSUBSCRIPT italic_x =f๐–ป๐–บ๐—Œ๐–พโขxabsentsubscript๐‘“๐–ป๐–บ๐—Œ๐–พ๐‘ฅ\displaystyle=f_{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0.546875,0}\textsf{$\mathsf{base}$}}}\,x= italic_f start_POSTSUBSCRIPT sansserif_base end_POSTSUBSCRIPT italic_x
f๐—Œ๐—Ž๐—‹๐–ฟโˆ’1โขxsubscriptsuperscript๐‘“1๐—Œ๐—Ž๐—‹๐–ฟ๐‘ฅ\displaystyle f^{-1}_{{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{surf}$}}}}\,xitalic_f start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT sansserif_surf end_POSTSUBSCRIPT italic_x =f๐—Œ๐—Ž๐—‹๐–ฟโˆ’1โขxabsentsubscript๐‘“superscript๐—Œ๐—Ž๐—‹๐–ฟ1๐‘ฅ\displaystyle=f_{{{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{surf}$}}}}^{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% -1$}}}}\,x= italic_f start_POSTSUBSCRIPT sansserif_surf start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT end_POSTSUBSCRIPT italic_x

Proving that these cancel is technical, but direct.

We are now ready to prove the following statement, which is a rephrasing of 12.

Proposition 15.

ฮฉโขโˆฅโข\sphereโข3โขโˆฅ4โ‰ƒโˆฅโขJโข\sphere2โข2โขโˆฅ3similar-to-or-equalsฮฉโˆฅ\sphere3subscriptโˆฅ4โˆฅJsubscript\sphere22subscriptโˆฅ3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,\sphere{3}\,{\color[rgb% ]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf% {โˆฅ}}_{4}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{$\simeq$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,\textnormal{{\color[rgb% ]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}% _{2}{\,\sphere{2}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{3}roman_ฮฉ โˆฅ 3 โˆฅ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT โ‰ƒ โˆฅ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 โˆฅ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT

Proof 4.3.

We take \sphereโข3=Susp\sphereโข2\sphere3Susp\sphereโข2\sphere{3}=\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,\sphere{2}$}}3 = Susp 2, where \sphereโข2\sphere2\sphere{2}2 is defined using basebase\mathsf{base}sansserif_base/surfsurf\mathsf{surf}sansserif_surf as above. We employ the encode-decode method and define a family of 3333-types over โˆฅโข\sphereโข3โขโˆฅ4โˆฅ\sphere3subscriptโˆฅ4{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}\,\sphere{3}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{4}โˆฅ 3 โˆฅ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT. Since the universe of 3333-types is a 4444-type, we may do so by truncation elimination:

Code :โˆฅโข\sphereโข3โขโˆฅ4โ†’3-Type:absentโ†’โˆฅ\sphere3subscriptโˆฅ43-Type\displaystyle:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,\sphere{3}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{4}\to% \textsf{$3${\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}{-Type}}}: โˆฅ 3 โˆฅ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT โ†’ 3 italic_sansserif_-Type
Codeโˆฃโˆฃ\mathsf{โˆฃ}โˆฃnorthnorth\mathsf{north}sansserif_northโˆฃโˆฃ\mathsf{โˆฃ}โˆฃ =โˆฅโขJโข\sphere2โข2โขโˆฅ3absentโˆฅJsubscript\sphere22subscriptโˆฅ3\displaystyle={\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2% }}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}_{3}= โˆฅ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 โˆฅ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT
Codeโˆฃโˆฃ\mathsf{โˆฃ}โˆฃsouthsouth\mathsf{south}sansserif_southโˆฃโˆฃ\mathsf{โˆฃ}โˆฃ =โˆฅโขJโข\sphere2โข2โขโˆฅ3absentโˆฅJsubscript\sphere22subscriptโˆฅ3\displaystyle={\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2% }}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}_{3}= โˆฅ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 โˆฅ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT
Codeโขโˆฃโข๐—†๐–พ๐—‹๐—‚๐–ฝโขxโขiโขโˆฃCodeโˆฃ๐—†๐–พ๐—‹๐—‚๐–ฝ๐‘ฅ๐‘–โˆฃ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{Code}}\,{{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{{\color[rgb% ]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{merid}$}}}\;{x}\,i\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}Code โˆฃ sansserif_merid italic_x italic_i โˆฃ =uaโขfxโขiabsentuasubscript๐‘“๐‘ฅ๐‘–\displaystyle={\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{ua}}\,f_{x}\,i= ua italic_f start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT italic_i

We now need to define two families of functions

encodex:โˆฃโข๐—‡๐—ˆ๐—‹๐—๐—โขโˆฃโ‰กxโ†’Codeโขx:subscriptencode๐‘ฅโˆฃ๐—‡๐—ˆ๐—‹๐—๐—โˆฃ๐‘ฅโ†’Code๐‘ฅ\displaystyle\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{encode}}}_{x}:{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}% \,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{north}$}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}% \,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\equiv$}}\,x\to{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{Code}}\,xencode start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT : โˆฃ sansserif_north โˆฃ โ‰ก italic_x โ†’ Code italic_x
decodex:Codeโขxโ†’โˆฃโข๐—‡๐—ˆ๐—‹๐—๐—โขโˆฃโ‰กx:subscriptdecode๐‘ฅโ†’Code๐‘ฅโˆฃ๐—‡๐—ˆ๐—‹๐—๐—โˆฃ๐‘ฅ\displaystyle\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{decode}}}_{x}:{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{Code}}\,x\to{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{โˆฃ}$}}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{north}$}}}\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{โˆฃ}$}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,xdecode start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT : Code italic_x โ†’ โˆฃ sansserif_north โˆฃ โ‰ก italic_x

over x:โˆฅโข\sphereโข3โขโˆฅ4:๐‘ฅโˆฅ\sphere3subscriptโˆฅ4x:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}\,\sphere{3}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{4}italic_x : โˆฅ 3 โˆฅ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT. We define encodexsubscriptencode๐‘ฅ\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{encode}}}_{x}encode start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT by path induction, sending refl to the basepoint in โˆฅโขJโข\sphere2โข2โขโˆฅ3โˆฅJsubscript\sphere22subscriptโˆฅ3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}\,\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2}}\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{โˆฅ}}_{3}โˆฅ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 โˆฅ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT. We define decodexsubscriptdecode๐‘ฅ\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{decode}}}_{x}decode start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT by truncation elimination and pattern matching on x๐‘ฅxitalic_x. The crucial step is defining decodeโˆฃโข๐—‡๐—ˆ๐—‹๐—๐—โขโˆฃ:โˆฅโขJโข\sphere2โข2โขโˆฅ3โ†’ฮฉโขโˆฅโข\sphereโข3โขโˆฅ4:subscriptdecodeโˆฃ๐—‡๐—ˆ๐—‹๐—๐—โˆฃโ†’โˆฅJsubscript\sphere22subscriptโˆฅ3ฮฉโˆฅ\sphere3subscriptโˆฅ4\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{decode}}}_{{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{north}$}}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}}:{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ% }}\,\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2}}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{3}\to{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,\sphere{3}\,{\color[rgb% ]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf% {โˆฅ}}_{4}}decode start_POSTSUBSCRIPT โˆฃ sansserif_north โˆฃ end_POSTSUBSCRIPT : โˆฅ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 โˆฅ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT โ†’ roman_ฮฉ โˆฅ 3 โˆฅ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT. On point constructors, it is given by

decodeโˆฃโข๐—‡๐—ˆ๐—‹๐—๐—โขโˆฃโข(๐—‚๐—‡๐—…โข(xโข,โขy))subscriptdecodeโˆฃ๐—‡๐—ˆ๐—‹๐—๐—โˆฃ๐—‚๐—‡๐—…๐‘ฅ,๐‘ฆ\displaystyle\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{decode}}}_{{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}% \,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{north}$}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}}% \,({{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inl}$}}}\,{(x\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,y)})decode start_POSTSUBSCRIPT โˆฃ sansserif_north โˆฃ end_POSTSUBSCRIPT ( sansserif_inl ( italic_x , italic_y ) ) =ฯƒโขxโ‹…ฯƒโขyabsentโ‹…๐œŽ๐‘ฅ๐œŽ๐‘ฆ\displaystyle={\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\sigma$}}\,x\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}\,y= italic_ฯƒ italic_x โ‹… italic_ฯƒ italic_y
decodeโˆฃโข๐—‡๐—ˆ๐—‹๐—๐—โขโˆฃโข(๐—‚๐—‡๐—‹โขz)subscriptdecodeโˆฃ๐—‡๐—ˆ๐—‹๐—๐—โˆฃ๐—‚๐—‡๐—‹๐‘ง\displaystyle\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{decode}}}_{{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}% \,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{north}$}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}}% \,({{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inr}$}}}\,{z})decode start_POSTSUBSCRIPT โˆฃ sansserif_north โˆฃ end_POSTSUBSCRIPT ( sansserif_inr italic_z ) =ฯƒโขzabsent๐œŽ๐‘ง\displaystyle={\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\sigma$}}\,z= italic_ฯƒ italic_z

which is easily verified to be coherent with the higher constructors. The case decodeโˆฃโข๐—Œ๐—ˆ๐—Ž๐—๐—โขโˆฃsubscriptdecodeโˆฃ๐—Œ๐—ˆ๐—Ž๐—๐—โˆฃ\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{decode}}}_{{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{south}$}}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}}decode start_POSTSUBSCRIPT โˆฃ sansserif_south โˆฃ end_POSTSUBSCRIPT is immediately induced by decodeโˆฃโข๐—‡๐—ˆ๐—‹๐—๐—โขโˆฃsubscriptdecodeโˆฃ๐—‡๐—ˆ๐—‹๐—๐—โˆฃ\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{decode}}}_{{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{north}$}}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}}decode start_POSTSUBSCRIPT โˆฃ sansserif_north โˆฃ end_POSTSUBSCRIPT, since northnorth\mathsf{north}sansserif_northโ€†โ‰กโ€†southsouth\mathsf{south}sansserif_south via meridmerid\mathsf{merid}sansserif_meridโ€…basebase\mathsf{base}sansserif_base. The case decodeโˆฃโข๐—†๐–พ๐—‹๐—‚๐–ฝโขaโขiโขโˆฃโขysubscriptdecodeโˆฃ๐—†๐–พ๐—‹๐—‚๐–ฝ๐‘Ž๐‘–โˆฃ๐‘ฆ\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{decode}}}_{{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{merid}$}}}\;{a}\,i\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}}\,ydecode start_POSTSUBSCRIPT โˆฃ sansserif_merid italic_a italic_i โˆฃ end_POSTSUBSCRIPT italic_y amounts to showing that

decodeโˆฃโข๐—‡๐—ˆ๐—‹๐—๐—โขโˆฃโข(faโˆ’1โขy)โ‰กdecodeโˆฃโข๐—‡๐—ˆ๐—‹๐—๐—โขโˆฃโขyโ‹…(ฯƒโขโˆฃโขaโขโˆฃ)โˆ’1subscriptdecodeโˆฃ๐—‡๐—ˆ๐—‹๐—๐—โˆฃsubscriptsuperscript๐‘“1๐‘Ž๐‘ฆโ‹…subscriptdecodeโˆฃ๐—‡๐—ˆ๐—‹๐—๐—โˆฃ๐‘ฆsuperscript๐œŽโˆฃ๐‘Žโˆฃ1\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{decode}}}_{{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{north}$}}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}}(f^{-1}_{a}\,y)\,\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\equiv$}}\,\,\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{decode}}}_{{{\color[% rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}% \textsf{$\mathsf{โˆฃ}$}}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{north}$}}}\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{โˆฃ}$}}}}\,y\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \sigma$}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,a\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}})% }^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$-1$}}}decode start_POSTSUBSCRIPT โˆฃ sansserif_north โˆฃ end_POSTSUBSCRIPT ( italic_f start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_a end_POSTSUBSCRIPT italic_y ) โ‰ก decode start_POSTSUBSCRIPT โˆฃ sansserif_north โˆฃ end_POSTSUBSCRIPT italic_y โ‹… ( italic_ฯƒ โˆฃ italic_a โˆฃ ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT

The proof is technical but is greatly aided byย 13. The fact that decodexโข(encodexโขp)โ‰กpsubscriptdecode๐‘ฅsubscriptencode๐‘ฅ๐‘๐‘\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{decode}}}_{x}(\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{encode}}}_{x}\,p)\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\equiv$}}\,pdecode start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT ( encode start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT italic_p ) โ‰ก italic_p for each p:๐—‡๐—ˆ๐—‹๐—๐—โ‰กx:๐‘๐—‡๐—ˆ๐—‹๐—๐—๐‘ฅp:{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{north}$}}}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,xitalic_p : sansserif_north โ‰ก italic_x holds by path induction. Finally, the fact that encode๐—‡๐—ˆ๐—‹๐—๐—โข(decode๐—‡๐—ˆ๐—‹๐—๐—โขy)โ‰กysubscriptencode๐—‡๐—ˆ๐—‹๐—๐—subscriptdecode๐—‡๐—ˆ๐—‹๐—๐—๐‘ฆ๐‘ฆ\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{encode}}}_{{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{north}$}}}}(\textnormal{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{decode}}}_{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{north}$}}}\,y){\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \equiv$}}\,yencode start_POSTSUBSCRIPT sansserif_north end_POSTSUBSCRIPT ( decode start_POSTSUBSCRIPT sansserif_north end_POSTSUBSCRIPT italic_y ) โ‰ก italic_y holds for each y:โˆฅโขJโข\sphere2โข2โขโˆฅ3:๐‘ฆโˆฅJsubscript\sphere22subscriptโˆฅ3y:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}\,\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2}}\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{โˆฅ}}_{3}italic_y : โˆฅ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 โˆฅ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT holds by some technical but simple path algebra. Hence decodeโˆฃโข๐—‡๐—ˆ๐—‹๐—๐—โขโˆฃ:ฮฉโขโˆฅโข\sphereโข3โขโˆฅ4โ†’โˆฅโขJโข\sphere2โข2โขโˆฅ3:subscriptdecodeโˆฃ๐—‡๐—ˆ๐—‹๐—๐—โˆฃโ†’ฮฉโˆฅ\sphere3subscriptโˆฅ4โˆฅJsubscript\sphere22subscriptโˆฅ3\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{decode}}}_{{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{north}$}}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}}:{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \Omega$}}\,{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{โˆฅ}}\,\sphere{3}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{4}}\to{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}\,\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2}}\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{โˆฅ}}_{3}decode start_POSTSUBSCRIPT โˆฃ sansserif_north โˆฃ end_POSTSUBSCRIPT : roman_ฮฉ โˆฅ 3 โˆฅ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT โ†’ โˆฅ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 โˆฅ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT is an equivalence.

We get 12 as an immediate corollary of 15 via the same sequence of isomorphisms as in the proof ofย 12.

4.3. Definition of the Brunerie number

Brunerieโ€™s goal is now to analyse ฯ€3โข(Jโข\sphere2โข2)subscript๐œ‹3Jsubscript\sphere22{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2% }})italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 ). The first result needed is the following: {defi}[Whitehead map] Given two pointed types A๐ดAitalic_A and B๐ตBitalic_B, there is a map: \ExecuteMetaData[agda/latex/background.tex]whitehead For our purposes, we only need the case when A=B=\sphereโข1๐ด๐ต\sphere1A=B=\sphere{1}italic_A = italic_B = 1 (although all of the following results appear in full generality in Brunerieโ€™s thesis). We get a composite map:

e:\sphereโข3โ†’โ‰ƒ\sphereโข1โข*โข\sphereโข1โ†’W\sphereโข2โˆจ\sphereโข2:esimilar-to-or-equalsโ†’\sphere3\sphere1*\sphere1Wโ†’\sphere2\sphere2{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{e}}:\sphere{3}\xrightarrow{\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\simeq$}}\,}{{% \sphere{1}}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{1}}}% \xrightarrow{\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{W}}\,}\sphere{2}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\vee$}}\,% \sphere{2}e : 3 start_ARROW start_OVERACCENT โ‰ƒ end_OVERACCENT โ†’ end_ARROW 1 * 1 start_ARROW start_OVERACCENT W end_OVERACCENT โ†’ end_ARROW 2 โˆจ 2

This induces, via pre-composition, a Whitehead product:

ฯ€2โข(\sphereโข2)ร—ฯ€2โข(\sphereโข2)โ†’[โˆ’,โˆ’]ฯ€3โข(\sphereโข2)โ†’subscript๐œ‹2\sphere2subscript๐œ‹2\sphere2subscript๐œ‹3\sphere2{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{2}(\sphere{2})\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\times$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{2}(\sphere{2})\xrightarrow{\,[-,-]\,}{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\pi$}}_{3}(\sphere{2})italic_ฯ€ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( 2 ) ร— italic_ฯ€ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( 2 ) start_ARROW start_OVERACCENT [ - , - ] end_OVERACCENT โ†’ end_ARROW italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 )

by

[โˆฃโขfโขโˆฃ,โˆฃโขgโขโˆฃ]:=โˆฃโขโˆ‡โˆ˜(fโˆจg)โˆ˜eโขโˆฃassignโˆฃ๐‘“โˆฃโˆฃ๐‘”โˆฃโˆฃโˆ‡๐‘“๐‘”eโˆฃ[{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,f\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}},% {{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,g\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}]% :={{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\nabla$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \circ$}}\,(f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\vee$}}\,g)\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\circ$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{e}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}[ โˆฃ italic_f โˆฃ , โˆฃ italic_g โˆฃ ] := โˆฃ โˆ‡ โˆ˜ ( italic_f โˆจ italic_g ) โˆ˜ e โˆฃ

Recall that we denote by i2subscript๐‘–2i_{2}italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT the generator of ฯ€2โข(\sphereโข2)subscript๐œ‹2\sphere2{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{2}(\sphere{2})italic_ฯ€ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( 2 ). Brunerie shows, in particular, the following about its relation to the Whitehead product (seeย [Bru16a, Proposition 3.4.4.] for the full statement).

Theorem 16.

The kernel of the suspension map ฯƒโˆ—:ฯ€3โข(\sphereโข2)โ†’ฯ€4โข(\sphereโข3):subscript๐œŽโ†’subscript๐œ‹3\sphere2subscript๐œ‹4\sphere3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}_{*}:{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})\to{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})italic_ฯƒ start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ†’ italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) is generated by [i2,i2]subscript๐‘–2subscript๐‘–2[i_{2},i_{2}][ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ].

The key technical component in the proof is the Blakers-Massey Theorem, first formalised in HoTT byย Favonia,ย Finster,ย Licataย &ย Lumsdaineย inย [HFLL16]:

Theorem 17 (Blakers-Massey).

Consider the diagram

A๐ด{A}italic_AP๐‘ƒ{P}italic_PC๐ถ{C}italic_CB๐ต{B}italic_BPushoutโขfโขgPushout๐‘“๐‘”{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{{Pushout}}}\,f\,g}}Pushout italic_f italic_ginlinl\scriptstyle\mathsf{inl}sansserif_inlโ€†inrinr\scriptstyle\mathsf{inr}sansserif_inrโ€†f๐‘“\scriptstyle{f}italic_fg๐‘”\scriptstyle{g}italic_gfโŠ”gsquare-union๐‘“๐‘”\scriptstyle{f\sqcup g}italic_f โŠ” italic_gโŒŸโŒŸ\scriptstyle{\lrcorner}โŒŸโŒŸโŒŸ\scriptstyle{\lrcorner}โŒŸ

where P๐‘ƒPitalic_P is the pullback along inlinl\mathsf{inl}sansserif_inlโ€† and inrinr\mathsf{inr}sansserif_inr, i.e.ย P=ฮฃ(b,c):Bร—Cโข(๐—‚๐—‡๐—…โขbโขโ‰กโข๐—‚๐—‡๐—‹โขc)๐‘ƒsubscriptฮฃ:๐‘๐‘๐ต๐ถ๐—‚๐—‡๐—…๐‘โ‰ก๐—‚๐—‡๐—‹๐‘P=\Sigma_{(b,c):B\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\times$}}\,C}({{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{inl}$}}}\,{b}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{inr}$}}% }\,{c}})italic_P = roman_ฮฃ start_POSTSUBSCRIPT ( italic_b , italic_c ) : italic_B ร— italic_C end_POSTSUBSCRIPT ( sansserif_inl italic_b โ‰ก sansserif_inr italic_c ), and fโŠ”gsquare-union๐‘“๐‘”f\sqcup gitalic_f โŠ” italic_g is defined by

(fโŠ”g)โขa=(fโขaโข,โขgโขaโข,โข๐—‰๐—Ž๐—Œ๐—โขa)square-union๐‘“๐‘”๐‘Ž๐‘“๐‘Ž,๐‘”๐‘Ž,๐—‰๐—Ž๐—Œ๐—๐‘Ž(f\sqcup g)\,a=(f\,a\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}\,g\,a\,{{\color[rgb]% {0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{,}$}}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{a})( italic_f โŠ” italic_g ) italic_a = ( italic_f italic_a , italic_g italic_a , sansserif_push italic_a )

If f๐‘“fitalic_f and g๐‘”gitalic_g are n๐‘›nitalic_n- respectively m๐‘šmitalic_m-connected, then fโŠ”gsquare-union๐‘“๐‘”f\sqcup gitalic_f โŠ” italic_g is (n+m)๐‘›๐‘š(n+m)( italic_n + italic_m )-connected.

16 is proved by considering the following diagram

\sphereโข3\sphere3{\sphere{3}}3P๐‘ƒ{P}italic_P\sphereโข2\sphere2{\sphere{2}}2๐Ÿ™1\mathbbm{1}blackboard_1J2โข\sphereโข2subscript๐ฝ2\sphere2{{J_{2}\sphere{2}}}italic_J start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT 2โˆ‡โˆ˜Wโˆ‡W\scriptstyle{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\scriptstyle\nabla$}}\circ\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{W% }}}โˆ‡ โˆ˜ WโŒŸโŒŸ\scriptstyle{\lrcorner}โŒŸโŒŸโŒŸ\scriptstyle{\lrcorner}โŒŸ

Verifying that the outer square is a pushout square is technical and we refer to Brunerieโ€™s proof for the details. Above, P๐‘ƒPitalic_P is simply the fibre of ๐—‚๐—‡๐—‹:\sphereโข2โ†’Jโข\sphere2โข2:๐—‚๐—‡๐—‹โ†’\sphere2Jsubscript\sphere22{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inr}$}}}\,{}:\sphere{2}\to\textnormal{{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}% }{}_{2}{\,\sphere{2}}sansserif_inr : 2 โ†’ J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2. The leftmost map is 2222-connected since \sphereโข3\sphere3\sphere{3}3 is 2222-connected and the top map is 00-connected since \sphereโข3\sphere3\sphere{3}3 and \sphereโข2\sphere2\sphere{2}2 are both 1111-connected. Consequently, by 17, we get that the map \sphereโข3โ†’Pโ†’\sphere3๐‘ƒ\sphere{3}\to P3 โ†’ italic_P is 2222-connected and thus induces a surjection after application of ฯ€3subscript๐œ‹3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT. This gives the diagram:

ฯ€3โข(P)subscript๐œ‹3๐‘ƒ{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(P)}}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( italic_P )ฯ€3โข(\sphereโข2)subscript๐œ‹3\sphere2{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})}}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 )ฯ€3โข(Jโข\sphere2โข2)subscript๐œ‹3Jsubscript\sphere22{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2% }})}}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 )ฯ€3โข(\sphereโข3)subscript๐œ‹3\sphere3{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{3})}}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 3 )ฯ€4โข(\sphereโข3)subscript๐œ‹4\sphere3{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 )โ‰…\scriptstyle\congโ‰…ฯƒโˆ—subscript๐œŽ\scriptstyle{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\scriptstyle\sigma$}}_{*}}italic_ฯƒ start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT

where the sequence on the top comes from the long exact sequence of homotopy groups associated to P๐‘ƒPitalic_P. The dashed map sends the generator i3:ฯ€3โข(\sphereโข3):subscript๐‘–3subscript๐œ‹3\sphere3i_{3}:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{3})italic_i start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 3 ) to [i2,i2]:ฯ€3โข(\sphereโข2):subscript๐‘–2subscript๐‘–2subscript๐œ‹3\sphere2[i_{2},i_{2}]:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})[ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ] : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) by definition.

16 motivates the following definition. Recall that we denote by ฯˆ๐œ“\psiitalic_ฯˆ the isomorphism ฯ€3โข(\sphereโข2)โ‰…โ„คsubscript๐œ‹3\sphere2โ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ‰… โ„ค. {defi}[Brunerie number] We define the Brunerie number ฮฒ:โ„ค:๐›ฝโ„ค{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}:{\color[rgb]{0,0,0.8046875}\definecolor[named]% {pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฮฒ : โ„ค by ฮฒ=ฯˆโข[i2,i2]๐›ฝ๐œ“subscript๐‘–2subscript๐‘–2{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}={\color[rgb]{0,0,0.8046875}\definecolor[named]% {pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\psi$}}[i_{2},i_{2}]italic_ฮฒ = italic_ฯˆ [ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ].

We may now prove the main result of [Bru16a, Chapterย 3].

Corollary 18.

ฯ€4โข(\sphereโข3)โ‰…โ„ค/ฮฒโ„คsubscript๐œ‹4\sphere3โ„คฮฒโ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}/{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\beta$}}{\color[rgb]{0,0,0.8046875% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) โ‰… โ„ค / italic_sansserif_ฮฒ italic_sansserif_โ„ค.

Proof 4.4.

We have a homomorphism ฯƒโˆ—โˆ˜ฯˆโˆ’1:โ„คโ†’ฯ€4โข(\sphereโข3):subscript๐œŽsuperscript๐œ“1โ†’โ„คsubscript๐œ‹4\sphere3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}_{*}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\circ$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \psi$}}^{-1}:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{โ„ค}}\to{\color[rgb]{0,0,0.8046875}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})italic_ฯƒ start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT โˆ˜ italic_ฯˆ start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT : โ„ค โ†’ italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ). This composition is surjective since ฯˆฯˆ\psiitalic_ฯˆ is an isomorphism and ฯƒโˆ—:ฯ€3โข(\sphereโข2)โ†’ฯ€4โข(\sphereโข3):subscript๐œŽโ†’subscript๐œ‹3\sphere2subscript๐œ‹4\sphere3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}_{*}:{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})\to{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})italic_ฯƒ start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ†’ italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) is surjective by 6. Since, by 16, the kernel of ฯƒโˆ—subscript๐œŽ{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}_{*}italic_ฯƒ start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT is generated by [i2,i2]subscript๐‘–2subscript๐‘–2[i_{2},i_{2}][ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ], the kernel of ฯƒโˆ—โˆ˜ฯˆโˆ’1subscript๐œŽsuperscript๐œ“1{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}_{*}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\circ$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \psi$}}^{-1}italic_ฯƒ start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT โˆ˜ italic_ฯˆ start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT is generated by ฯˆโข[i2,i2]๐œ“subscript๐‘–2subscript๐‘–2{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\psi$}}[i_{2},i_{2}]italic_ฯˆ [ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ], i.e. by ฮฒฮฒ\betaitalic_ฮฒ. The statement then follows from the first isomorphism theorem.

4.4. Formalisation of the definition of the Brunerie number

The formalisation of this part was straightforward. Arguably the most technical result, the Blakers-Massey theorem, was already available in the library thanks toย Kangย [Kan22b]. Most of the remaining results were essentially just diagram chases which, in a proof assistant, can be somewhat technical. Most work went into verifying that Jโข\sphere2โข2Jsubscript\sphere22\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{J}}}{}_{2}{\,\sphere{2}}J start_FLOATSUBSCRIPT 2 end_FLOATSUBSCRIPT 2 is the cofibre of โˆ‡โˆ˜Wโˆ‡W{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\nabla$}}\circ{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{W}}โˆ‡ โˆ˜ W, the proof of which followed Brunerieโ€™s closely.

In this section we found the only obvious mistake in Brunerieโ€™s thesis. On page 82, in his definition of the ๐—‰๐—Ž๐—Œ๐—๐—‰๐—Ž๐—Œ๐—\mathsf{push}sansserif_pushโ€†โ€‹-case for W, the path component in the middle was not inverted, making the term ill-typed. Naturally, this was of no mathematical significance and something Brunerie immediately would have noticed if he would have attempted to provide a computer formalisation of this construction.

5. Brunerieโ€™s proof that |ฮฒ|โขโ‰กโขโ€‰2๐›ฝโ‰ก2{\left|{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}}\right|}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{2}| italic_ฮฒ | โ‰ก 2

This section concerns the final three Chapters (4โ€“6) of Brunerieโ€™s thesis. The main goal here is proving that |ฮฒ|โขโ‰กโขโ€‰2๐›ฝโ‰ก2{\left|{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}}\right|}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{2}| italic_ฮฒ | โ‰ก 2.

We will not discuss Chapter 4 in much detail. Chapter 4 is devoted to smash products and, in particular, their symmetric monoidal structure. Brunerie used this in subsequent chapters to define and prove properties about the cup product, a graded multiplicative operation on cohomology groups which will be used to show that |ฮฒ|โขโ‰กโขโ€‰2๐›ฝโ‰ก2{\left|{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}}\right|}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{2}| italic_ฮฒ | โ‰ก 2. This chapter has turned out to be incredibly difficult to formalise due to the large number of higher coherences involved in the proofs [Bru18]. In fact, the results of this chapter were proved in detail and fully formalised only 8888 years after the publication of Brunerieโ€™s thesis by Ljungstrรถmย [Lju24]. We remark that despite the fact that these results have now been made available to us, they are not needed. While, with these results, Brunerieโ€™s construction of the cup product appears correct, his use of smash products still leads to some rather cumbersome diagram chases (with many coherences which still need verification.)

Luckily, it turns out that Chapter 4 can be avoided altogether and that this in fact makes some difficult proofs later on very direct. For this reason, the results in Chapterย 4 were omitted completely from our formalisation. The reason for this is that all results regarding smash products in Brunerieโ€™s thesis concern, in some way, pointed maps out of smash products. In this case, we may exploit the adjunction of maps out of smash products and bi-pointed maps:

(AโˆงBโ†’โ‹†C)โขโ‰ƒโข(Aโ†’โ‹†(Bโ†’โ‹†C))subscriptโ†’โ‹†๐ด๐ต๐ถโ‰ƒsubscriptโ†’โ‹†๐ดsubscriptโ†’โ‹†๐ต๐ถ{(A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\wedge$}}\,B\to_{\star}C)}\,\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ƒ% }}\,\,{(A\to_{\star}(B\to_{\star}C))}( italic_A โˆง italic_B โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_C ) โ‰ƒ ( italic_A โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT ( italic_B โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_C ) )

Here, Bโ†’โ‹†Csubscriptโ†’โ‹†๐ต๐ถB\to_{\star}Citalic_B โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_C is taken to be pointed by the constant map. As shown by Brunerie et al.ย [BLM22], it is arguably easier to define the cup product on the right-hand side of the adjunction, which effectively means that we never have to work with smash products when formalising cohomology theory. The usefulness of the approach by Brunerie et al.ย [BLM22] is not only witnessed by our workโ€”it has been used by Lamiaux et al.ย [LLM23] and Ljungstrรถmย &ย Mรถrtbergย [LM24] in the development of cohomology rings and is used to describe the cup product as an instance of the delooping machinery introduced by Wรคrnย [Wรคr23, Section 4.3]. We remark that the same techniques (although independent fromย [BLM22]) can be found in the work of Christensenย &ย Scoccolaย [CS20, Section 2.4] where it is utilised in a discussion of the magma structure on loop spaces.

5.1. Cohomology and the Hopf invariant

[Bru16a, Chapterย 5] introduces integral cohomology groups and rings, and gives a construction of the Mayer-Vietoris sequence. In more detail, Brunerie defines the integral Eilenberg-MacLane spaces by K0=โ„คsubscriptK0โ„ค\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{K}}}_{0}={\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}K start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT = โ„ค and Kn=โˆฅโข\sphereโขnโขโˆฅnsubscriptK๐‘›โˆฅ\sphere๐‘›subscriptโˆฅ๐‘›\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{K}}}_{n}={\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,\sphere{n}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ% }}_{n}K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT = โˆฅ italic_n โˆฅ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT for nโ‰ฅ1๐‘›1n\geq 1italic_n โ‰ฅ 1. This allows for a definition of the (integral) cohomology of X๐‘‹Xitalic_X:

Hnโข(X)=โˆฅโขXโ†’Knโขโˆฅ0superscriptH๐‘›๐‘‹โˆฅ๐‘‹โ†’subscriptK๐‘›subscriptโˆฅ0\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{H}}}^{n}\!\left({X}\right)={\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,X\to% \textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{K}}}_{n}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{0}H start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ( italic_X ) = โˆฅ italic_X โ†’ K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT โˆฅ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT

The fact that ฮฉโขKn+1โขโ‰ƒโขKnฮฉsubscriptK๐‘›1โ‰ƒsubscriptK๐‘›{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{n+1}}}\,\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{n}}roman_ฮฉ K start_POSTSUBSCRIPT italic_n + 1 end_POSTSUBSCRIPT โ‰ƒ K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT follows by a proof completely analogous to that ofย 7. Brunerie uses this equivalence to carry over the (commutative) H-space structure on ฮฉโขKn+1ฮฉsubscriptK๐‘›1{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{n+1}}roman_ฮฉ K start_POSTSUBSCRIPT italic_n + 1 end_POSTSUBSCRIPT to that of KnsubscriptK๐‘›\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{K}}}_{n}K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT. This provides a notion of addition +k:Knร—Knโ†’Kn:+kโ†’subscriptK๐‘›subscriptK๐‘›subscriptK๐‘›{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{+${}_{k}$}}:\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{n}\,{\color[rgb]% {0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% $\times$}}\,\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{n}\to\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{n}+ : K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ร— K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT โ†’ K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT which lifts to Hnโข(X)superscriptH๐‘›๐‘‹\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{H}}}^{n}\!\left({X}\right)H start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ( italic_X ) by post-composition, thereby endowing Hnโข(X)superscriptH๐‘›๐‘‹\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{H}}}^{n}\!\left({X}\right)H start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ( italic_X ) with a group structure.

Similarly, Brunerie gives a definition of a cup product โŒฃk:KnโˆงKmโ†’Kn+m{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile_{k}$}}:\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{n}\,{\color[rgb]% {0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% $\wedge$}}\,\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{m}\to\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{n+m}โŒฃ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT : K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT โˆง K start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT โ†’ K start_POSTSUBSCRIPT italic_n + italic_m end_POSTSUBSCRIPT which lifts to the usual cup product โŒฃ:Hn(X)ร—Hm(X)โ†’Hn+m(X){\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}:\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{n}\!\left({X}% \right)\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\times$}}\,\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{m}\!\left({X}% \right)\to\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{n+m}\!\left({X}\right)โŒฃ : H start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ( italic_X ) ร— H start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ( italic_X ) โ†’ H start_POSTSUPERSCRIPT italic_n + italic_m end_POSTSUPERSCRIPT ( italic_X ). This is shown to induce a graded commutative ring structure on Hโˆ—โข(X)superscriptH๐‘‹\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{H}}}^{*}\!\left({X}\right)H start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ( italic_X ) using results from Chapterย 4.

The synthetic construction of the Mayer-Vietoris sequence concerns the long exact sequence

H0โข(D)superscriptH0๐ท{{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{H}}}^{0}\!\left({D}\right)}}H start_POSTSUPERSCRIPT 0 end_POSTSUPERSCRIPT ( italic_D )H0โข(B)ร—H0โข(C)superscriptH0๐ตsuperscriptH0๐ถ{{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{H}}}^{0}\!\left({B}\right)\times\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{0}% \!\left({C}\right)}}H start_POSTSUPERSCRIPT 0 end_POSTSUPERSCRIPT ( italic_B ) ร— H start_POSTSUPERSCRIPT 0 end_POSTSUPERSCRIPT ( italic_C )H0โข(A)superscriptH0๐ด{{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{H}}}^{0}\!\left({A}\right)}}H start_POSTSUPERSCRIPT 0 end_POSTSUPERSCRIPT ( italic_A )โ€…โ€…โ€…H1โข(D)superscriptH1๐ท{{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{H}}}^{1}\!\left({D}\right)}}H start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT ( italic_D )โ€ฆโ€ฆ{\dots}โ€ฆ

where D๐ทDitalic_D denotes the pushout of a span Bโ†๐‘“Aโ†’๐‘”C๐‘“โ†๐ต๐ด๐‘”โ†’๐ถB\xleftarrow{\,f\,}A\xrightarrow{\,g\,}Citalic_B start_ARROW start_OVERACCENT italic_f end_OVERACCENT โ† end_ARROW italic_A start_ARROW start_OVERACCENT italic_g end_OVERACCENT โ†’ end_ARROW italic_C. A direct application gives us, for nโ‰ฅ1๐‘›1n\geq 1italic_n โ‰ฅ 1, that Hnโข(\sphereโขm)โ‰…โ„คsuperscriptH๐‘›\sphere๐‘šโ„ค{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{H}}}^{n}\!\left({\sphere{m}}\right)}\,\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \cong$}}\,\,{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{โ„ค}}}H start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ( italic_m ) โ‰… โ„ค if n=m๐‘›๐‘šn=mitalic_n = italic_m and Hnโข(\sphereโขm)โ‰…๐Ÿ™superscriptH๐‘›\sphere๐‘š1{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{H}}}^{n}\!\left({\sphere{m}}\right)}\,\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \cong$}}\,\,{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\mathbbm{1}$}}}H start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ( italic_m ) โ‰… blackboard_1 otherwise. This gives, by another application of the sequence, the following result:

Lemma 19.

For any f:\sphereโข3โ†’\sphereโข2:๐‘“โ†’\sphere3\sphere2f:\sphere{3}\to\sphere{2}italic_f : 3 โ†’ 2 we have

Hnโข(cofibโขf)โ‰…{โ„คnโˆˆ{0,2,4}๐Ÿ™otherwisesuperscriptH๐‘›cofib๐‘“casesโ„ค๐‘›0241otherwise\displaystyle\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{n}\!\left({{\textnormal{{\color[rgb]% {0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{cofib}}% }}\,{f}}\right)\,\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,\begin{cases}{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{โ„ค}}&n\in\{0,2,4\}\\ {\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\mathbbm{1}$}}&\text{otherwise}\end{cases}H start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ( cofib italic_f ) โ‰… { start_ROW start_CELL โ„ค end_CELL start_CELL italic_n โˆˆ { 0 , 2 , 4 } end_CELL end_ROW start_ROW start_CELL blackboard_1 end_CELL start_CELL otherwise end_CELL end_ROW

Let us briefly fix f:\sphereโข3โ†’\sphereโข2:๐‘“โ†’\sphere3\sphere2f:\sphere{3}\to\sphere{2}italic_f : 3 โ†’ 2. Denote by ฮณ2subscript๐›พ2\gamma_{2}italic_ฮณ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT and ฮณ4subscript๐›พ4\gamma_{4}italic_ฮณ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT the generators of H2โข(cofibโขf)superscriptH2cofib๐‘“\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{H}}}^{2}\!\left({{\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{cofib}}}}\,{f}}\right)H start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( cofib italic_f ) and H4โข(cofibโขf)superscriptH4cofib๐‘“\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{H}}}^{4}\!\left({{\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{cofib}}}}\,{f}}\right)H start_POSTSUPERSCRIPT 4 end_POSTSUPERSCRIPT ( cofib italic_f ) respectively given by the image of 1:โ„ค:1โ„ค1:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}1 : โ„ค under the isomorphism inย 19. These generators may be used to define an invariant on \sphereโข3โ†’\sphereโข2โ†’\sphere3\sphere2\sphere{3}\to\sphere{2}3 โ†’ 2 called the Hopf invariant. This is done as follows: {defi}[Hopf invariant] The Hopf invariant of f๐‘“fitalic_f is the unique integer HIโขf:โ„ค:HI๐‘“โ„ค\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{HI}}}\,f:{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}HI italic_f : โ„ค such that ฮณ2โŒฃฮณ2โขโ‰กโขHIโขfโ‹…ฮณ4โŒฃsubscript๐›พ2โ‹…subscript๐›พ2โ‰กHI๐‘“subscript๐›พ4{{\gamma_{2}}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{\gamma_{2}}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก% }}\,{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0,0.8046875}{HI}}}\,f}\,{\color[rgb]{0,0,0.8046875}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,\gamma_{4}italic_ฮณ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT โŒฃ italic_ฮณ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT โ‰ก HI italic_f โ‹… italic_ฮณ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT. We remark that the above definition is given for the more general class of maps \sphereโข2โขnโˆ’1โ†’\sphereโขnโ†’\sphere2๐‘›1\sphere๐‘›\sphere{2n-1}\to\sphere{n}2 italic_n - 1 โ†’ italic_n in Brunerieโ€™s thesis. For our purposes, the above special case suffices. In particular, we may see HI as a function ฯ€3โข(\sphereโข2)โ†’โ„คโ†’subscript๐œ‹3\sphere2โ„ค\pi_{3}(\sphere{2})\to{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ†’ โ„ค. The following turns out to be true:

Proposition 20.

HI is a homomorphism ฯ€3โข(\sphereโข2)โ†’โ„คโ†’subscript๐œ‹3\sphere2โ„ค\pi_{3}(\sphere{2})\to{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ†’ โ„ค.

Proof 5.1 (Proof sketch).

We first rephrase fโข+โขg:ฯ€3โข(\sphereโข2):๐‘“+๐‘”subscript๐œ‹3\sphere2f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{+}}\,g:\pi_{3}(\sphere{2})italic_f + italic_g : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) as a composition

\sphereโข3โ†’\sphereโข3โˆจ\sphereโข3โ†’fโˆจg\sphereโข2โˆจ\sphereโข2โ†’โˆ‡\sphereโข2absentโ†’\sphere3\sphere3\sphere3๐‘“๐‘”โ†’\sphere2\sphere2โˆ‡โ†’\sphere2\sphere{3}\xrightarrow{}\sphere{3}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\vee$}}\,\sphere{3}% \xrightarrow{\,f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\vee$}}\,g\,}\sphere{2}\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\vee$}}\,\sphere{2}\xrightarrow{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\nabla$}}}% \sphere{2}3 start_ARROW start_OVERACCENT end_OVERACCENT โ†’ end_ARROW 3 โˆจ 3 start_ARROW start_OVERACCENT italic_f โˆจ italic_g end_OVERACCENT โ†’ end_ARROW 2 โˆจ 2 start_ARROW overโˆ‡ โ†’ end_ARROW 2

By analysing the cohomology of cofibโข(โˆ‡โˆ˜(fโˆจg))cofibโˆ‡๐‘“๐‘”{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{cofib}}}}\,{({\color[rgb]{0,0,0.8046875}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\nabla$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \circ$}}\,(f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\vee$}}\,g))}cofib ( โˆ‡ โˆ˜ ( italic_f โˆจ italic_g ) ) and the action on generators of the obvious maps from cofibโข(โˆ‡โˆ˜(fโˆจg))cofibโˆ‡๐‘“๐‘”{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{cofib}}}}\,{({\color[rgb]{0,0,0.8046875}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\nabla$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \circ$}}\,(f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\vee$}}\,g))}cofib ( โˆ‡ โˆ˜ ( italic_f โˆจ italic_g ) ), cofibโขfcofib๐‘“{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{cofib}}}}\,{f}cofib italic_f and cofibโขgcofib๐‘”{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{cofib}}}}\,{g}cofib italic_g into cofibโข(fโข+โขg)cofib๐‘“+๐‘”{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{cofib}}}}\,{(f\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{+}}\,g)}cofib ( italic_f + italic_g ), one arrives at the result with some elementary algebra.

Finally, the Hopf invariant of our element of interest [i2,i2]subscript๐‘–2subscript๐‘–2[i_{2},i_{2}][ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ] is computed (up to a sign), using an argument similar to that of the proof ofย 20.

Proposition 21.

|HIโข[i2,i2]|โขโ‰กโขโ€‰2HIsubscript๐‘–2subscript๐‘–2โ‰ก2{\left|{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{HI}}}\,[i_{2},i_{2}]}\right|}\,{\color[rgb% ]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf% {โ‰ก}}\,{2}| HI [ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ] | โ‰ก 2

We are now almost done: if there is an element f:ฯ€3โข(\sphereโข2):๐‘“subscript๐œ‹3\sphere2f:\pi_{3}(\sphere{2})italic_f : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) such that HIโขfโขโ‰กโขโ€‰1HI๐‘“โ‰ก1{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{HI}}}\,f}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{1}HI italic_f โ‰ก 1, then HIโ€† is an isomorphism ฯ€3โข(\sphereโข2)โ‰…โ„คsubscript๐œ‹3\sphere2โ„ค{\pi_{3}(\sphere{2})}\,\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค% }}}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ‰… โ„ค. Since isomorphisms of this type are unique up to a sign, 21 tells us that also for the standard isomorphism ฯˆ:ฯ€3โข(\sphereโข2)โ‰…โ„ค:๐œ“subscript๐œ‹3\sphere2โ„ค{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\psi$}}:{\pi_{3}(\sphere{2})}\,\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \cong$}}\,\,{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{โ„ค}}}italic_ฯˆ : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ‰… โ„ค, we must have |ฯˆโข[i2,i2]|โขโ‰กโขโ€‰2๐œ“subscript๐‘–2subscript๐‘–2โ‰ก2{\left|{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\psi$}}[i_{2},i_{2}]}\right|}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก% }}\,{2}| italic_ฯˆ [ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ] | โ‰ก 2, i.e.ย |ฮฒ|โขโ‰กโขโ€‰2๐›ฝโ‰ก2{\left|{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}}\right|}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{2}| italic_ฮฒ | โ‰ก 2. Hence, we have so far shown the following:

Lemma 22.

If HIโขfโขโ‰กโขโ€‰1HI๐‘“โ‰ก1{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{HI}}}\,f}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{1}HI italic_f โ‰ก 1 for some f:ฯ€3โข(\sphereโข2):๐‘“subscript๐œ‹3\sphere2f:\pi_{3}(\sphere{2})italic_f : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ), then |ฮฒ|โขโ‰กโขโ€‰2๐›ฝโ‰ก2{\left|{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}}\right|}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{2}| italic_ฮฒ | โ‰ก 2.

The final chapter of Brunerieโ€™s thesis is devoted to proving the antecedent of 22.

5.2. Formalisation of cohomology and the Hopf invariant

This section was largely covered by Brunerie, Ljungstrรถm and Mรถrtberg inย [BLM22] and thus also available in ๐šŠ๐š๐š๐šŠ/๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐šŠ๐š๐š๐šŠ๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}agda/cubical}typewriter_agda / typewriter_cubical. We briefly summarise:

  • โ€ข

    +k:Knร—Knโ†’Kn{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$+_{k}$}}:\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{n}\times% \textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{K}}}_{n}\to\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{n}+ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT : K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ร— K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT โ†’ K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT was defined explicitly using a direct construction of the Wedge Connectivity for spheresโ€”a generalisation ofย 13. This construction is of great convenience to our formalisation due to the fact that e.g.ย โ‹†Kn+kโˆฃxโˆฃโ‰กโˆฃxโˆฃ\star_{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{n}}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$+_{k}$}}\,{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{โˆฃ}$}}}\,x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \equiv$}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,x\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}โ‹† start_POSTSUBSCRIPT K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_POSTSUBSCRIPT + start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT โˆฃ italic_x โˆฃ โ‰ก โˆฃ italic_x โˆฃ holds definitionally. In fact, all of the basic laws governing +ksubscript๐‘˜+_{k}+ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT are (trivially) provably path equal to refl at โ‹†Knsubscriptโ‹†subscriptK๐‘›\star_{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{n}}โ‹† start_POSTSUBSCRIPT K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_POSTSUBSCRIPT, which simplifies a lot of path algebra.

  • โ€ข

    The cup product is defined via the following lift

    \sphereโขn\sphere๐‘›{{\sphere{n}}}italic_n(Kmโ†’โ‹†Kn+m)subscriptโ†’โ‹†subscriptK๐‘šsubscriptK๐‘›๐‘š{{(\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{K}}}_{m}\to_{\star}\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{n+m})}}( K start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT K start_POSTSUBSCRIPT italic_n + italic_m end_POSTSUBSCRIPT )KnsubscriptK๐‘›{{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{K}}}_{n}}}K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPTโˆฃโˆฃ\scriptstyle\mathsf{โˆฃ}โˆฃโ€†__\scriptstyle\mathsf{\_\,}_โ€†โˆฃโˆฃ\scriptstyle\mathsf{โˆฃ}โˆฃโŒฃโŒฃ\scriptstyle\smileโŒฃ

    for nโ‰ฅ1๐‘›1n\geq 1italic_n โ‰ฅ 1, where the top map may be thought of as being inductively defined via the equivalence

    (\sphereโขn+1โ†’โ‹†(Kmโ†’โ‹†K(n+1)+m))subscriptโ†’โ‹†\sphere๐‘›1subscriptโ†’โ‹†subscriptK๐‘šsubscriptK๐‘›1๐‘š\displaystyle\phantom{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\simeq$}}\,}(\sphere{n+1}\to_{% \star}(\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{m}\to_{\star}\textnormal{{\color[rgb% ]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{% (n+1)+m}))( italic_n + 1 โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT ( K start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT K start_POSTSUBSCRIPT ( italic_n + 1 ) + italic_m end_POSTSUBSCRIPT ) )
    โ‰ƒ(\sphereโขnโ†’โ‹†(Kmโ†’โ‹†ฮฉโขK(n+1)+m))similar-to-or-equalsabsentsubscriptโ†’โ‹†\sphere๐‘›subscriptโ†’โ‹†subscriptK๐‘šฮฉsubscriptK๐‘›1๐‘š\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\simeq$}}\,(\sphere{n}\to_{\star}(\textnormal{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{K}}}_{m}\to_{\star}{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{\textnormal{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{K}}}_{(n+1)+m}}))โ‰ƒ ( italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT ( K start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT roman_ฮฉ K start_POSTSUBSCRIPT ( italic_n + 1 ) + italic_m end_POSTSUBSCRIPT ) )
    โ‰ƒ(\sphereโขnโ†’โ‹†(Kmโ†’โ‹†Kn+m))similar-to-or-equalsabsentsubscriptโ†’โ‹†\sphere๐‘›subscriptโ†’โ‹†subscriptK๐‘šsubscriptK๐‘›๐‘š\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\simeq$}}\,(\sphere{n}\to_{\star}(\textnormal{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{K}}}_{m}\to_{\star}\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{n+m}))โ‰ƒ ( italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT ( K start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT K start_POSTSUBSCRIPT italic_n + italic_m end_POSTSUBSCRIPT ) )

    The lift exists because the type of pointed functions Kmโ†’โ‹†Kn+msubscriptโ†’โ‹†subscriptK๐‘šsubscriptK๐‘›๐‘š\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{K}}}_{m}\to_{\star}\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{n+m}K start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT K start_POSTSUBSCRIPT italic_n + italic_m end_POSTSUBSCRIPT is an n๐‘›nitalic_n-type. This construction gives an inductively defined cup product which is remarkably easy to work with, as showcased in [LLM23] to compute cohomology rings of various classical spaces.

  • โ€ข

    The Mayer-Vietoris sequence was formalised by directly translating Brunerieโ€™s original proof.

Hence, what remained to be formalised in Chapter 5 was the Hopf invariant, 20 and 21. The formalisation of these propositions was straightforward and we were able to translate Brunerieโ€™s proofs in a direct manner. This is not surprising as the proofs are very algebraic.

For simplicity, we only formalised these propositions as they stand here and not their generalisations to higher spheres (i.e.ย as in [Bru16a, Propositionย 5.4.3ย &ย 5.4.4]). We remark, however, that the formalised proofs easily should be rephrasable for the general Hopf invariant of maps \sphereโข2โขnโˆ’1โ†’\sphereโขnโ†’\sphere2๐‘›1\sphere๐‘›\sphere{2n-1}\to\sphere{n}2 italic_n - 1 โ†’ italic_n.

5.3. The Gysin sequence

This section corresponds to [Bru16a, Chapterย 6]. In order to be able to apply 22, this chapter is devoted to proving that |HIโขhopf|โขโ‰กโขโ€‰1HIhopfโ‰ก1{\left|{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{HI}}}\,\,\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{hopf}}}}% \right|}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ‰ก}}\,{1}| HI hopf | โ‰ก 1, where, recall, hopf:\sphereโข3โ†’\sphereโข2:hopfโ†’\sphere3\sphere2\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{hopf}}}:\sphere{3}\to\sphere{2}hopf : 3 โ†’ 2 is the Hopf mapโ€”the generator of ฯ€3โข(\sphereโข2)subscript๐œ‹3\sphere2\pi_{3}(\sphere{2})italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) from 2. This amounts to analysing the cup product on the cohomology of cofibโ€†hopf. It is well-known that cofibโ€†hopf is a model of the complex projective plane โ„‚โขP2โ„‚superscript๐‘ƒ2\mathbb{C}P^{2}blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT (see e.g.ย [Hat02, Example 4.45]), so let us simply write โ„‚โขP2โ„‚superscript๐‘ƒ2\mathbb{C}P^{2}blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT from now on. We hence have โ„‚โขP2โ„‚superscript๐‘ƒ2\mathbb{C}P^{2}blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT defined as the following pushout:

\sphereโข3\sphere3{{\sphere{3}}}3\sphereโข2\sphere2{{\sphere{2}}}2๐Ÿ™1\mathbbm{1}blackboard_1โ„‚โขP2โ„‚superscript๐‘ƒ2\mathbb{C}P^{2}blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPThopfโŒŸโŒŸ\scriptstyle{\lrcorner}โŒŸ

In order to show that |HIโขhopf|โขโ‰กโขโ€‰1HIhopfโ‰ก1{\left|{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{HI}}}\,\,\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{hopf}}}}% \right|}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ‰ก}}\,{1}| HI hopf | โ‰ก 1, it suffices to show that โˆ’โŒฃฮณ2:H2(โ„‚โขP2)โ†’H4(โ„‚โขP2){-}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}\;{\gamma_{2}}:\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{2}% \!\left({{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}}\right)\to\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{4}% \!\left({{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}}\right)- โŒฃ italic_ฮณ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT : H start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) โ†’ H start_POSTSUPERSCRIPT 4 end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) is an isomorphism for ฮณ2:H2โข(โ„‚โขP2):subscript๐›พ2superscriptH2โ„‚superscript๐‘ƒ2\gamma_{2}:\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{2}\!\left({{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \mathbb{C}P^{2}$}}}\right)italic_ฮณ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT : H start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) a generator. Brunerie does this by constructing the Gysin sequence.

Proposition 23 (The Gysin sequence).

Let B๐ตBitalic_B be a pointed and 00-connected type and P:Bโ†’Type:๐‘ƒโ†’๐ตTypeP:B\to\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{Type}}}italic_P : italic_B โ†’ Type be a fibration with Pโ‹†Bโ‰ƒ\spherenโˆ’1P\,\star_{B}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\simeq$}}\,\sphere{n-1}italic_P โ‹† start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT โ‰ƒ italic_n - 1. Let E=ฮฃb:Bโข(Pโขb)๐ธsubscriptฮฃ:๐‘๐ต๐‘ƒ๐‘E=\Sigma_{b:B}(P\,b)italic_E = roman_ฮฃ start_POSTSUBSCRIPT italic_b : italic_B end_POSTSUBSCRIPT ( italic_P italic_b ) be the total space of P๐‘ƒPitalic_P. If there is a family of maps c:(b:B)โ†’(Susp(Pโขb)โ†’โ‹†Kn)c:(b:B)\to(\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,(P\,b)$}}\to_{\star}\textnormal{% {\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{K}}}_{n})italic_c : ( italic_b : italic_B ) โ†’ ( Susp ( italic_P italic_b ) โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) with cโ‹†Bsubscript๐‘subscriptโ‹†๐ตc_{\star_{B}}italic_c start_POSTSUBSCRIPT โ‹† start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT end_POSTSUBSCRIPT a generator of Hnโข(\sphereโขn)superscriptH๐‘›\sphere๐‘›\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{H}}}^{n}\!\left({\sphere{n}}\right)H start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ( italic_n ), then there is an element en:Hnโข(B):subscript๐‘’๐‘›superscriptH๐‘›๐ตe_{n}:\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{n}\!\left({B}\right)italic_e start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT : H start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ( italic_B ) and a long exact sequence

โ€ฆโ€ฆ{\dots}โ€ฆHiโˆ’1โข(B)superscriptH๐‘–1๐ต{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{H}}}^{i-1}\!\left({B}\right)}H start_POSTSUPERSCRIPT italic_i - 1 end_POSTSUPERSCRIPT ( italic_B )Hiโˆ’1โข(E)superscriptH๐‘–1๐ธ{{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{H}}}^{i-1}\!\left({E}\right)}}H start_POSTSUPERSCRIPT italic_i - 1 end_POSTSUPERSCRIPT ( italic_E )Hiโˆ’nโข(B)superscriptH๐‘–๐‘›๐ต{{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{H}}}^{i-n}\!\left({B}\right)}}H start_POSTSUPERSCRIPT italic_i - italic_n end_POSTSUPERSCRIPT ( italic_B )Hiโข(B)superscriptH๐‘–๐ต{{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{H}}}^{i}\!\left({B}\right)}}H start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ( italic_B )Hiโข(E)superscriptH๐‘–๐ธ{{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{H}}}^{i}\!\left({E}\right)}}H start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ( italic_E )โ€ฆโ€ฆ{\dots}โ€ฆโˆ’โŒฃen\scriptstyle{{-}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\scriptstyle\smile$}}\;{e_{n}}}- โŒฃ italic_e start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT

Moreover, c๐‘citalic_c (and also ensubscript๐‘’๐‘›e_{n}italic_e start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT) exists when B๐ตBitalic_B is 1111-connected.

In order to make use of this, we need the following result.

Proposition 24.

There is a fibration P:โ„‚โขP2โ†’Type:๐‘ƒโ†’โ„‚superscript๐‘ƒ2TypeP:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}\to\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Type}}}italic_P : blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT โ†’ Type with Pโ‹†โ„‚โขP2โ‰ƒ\sphere1P\,\star_{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}}{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\simeq$}}\,% \sphere{1}italic_P โ‹† start_POSTSUBSCRIPT blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_POSTSUBSCRIPT โ‰ƒ 1 and total space \sphereโข5\sphere5\sphere{5}5.

24 is a special case of the following result.

Proposition 25 (Iterated Hopf construction).

Given an associative H-space A๐ดAitalic_A, let hA:Aโข*โขAโ†’SuspA:subscriptโ„Ž๐ดโ†’๐ด*๐ดSuspAh_{A}:{A}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{A}\to\textnormal{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{Susp}}{$\,A$}}italic_h start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT : italic_A * italic_A โ†’ Susp italic_A denote the associated Hopf map. There is a fibration cofibโขhAโ†’Typeโ†’cofibsubscriptโ„Ž๐ดType{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{cofib}}}}\,{h_{A}}\to\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Type}}}cofib italic_h start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT โ†’ Type with fibre A๐ดAitalic_A and total space Aโข*โขAโข*โขA๐ด*๐ด*๐ด{A\,}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{{A\,}{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% \text{\textasteriskcentered}}}\,{A}}italic_A * italic_A * italic_A.

We consider the particular case when A=\sphereโข1๐ด\sphere1A=\sphere{1}italic_A = 1 in 25. In this case, the map h\sphereโข1:\sphereโข1โข*โข\sphereโข1โ†’\sphereโข2:subscriptโ„Ž\sphere1โ†’\sphere1*\sphere1\sphere2h_{\sphere{1}}:{\sphere{1}}{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{% \sphere{1}}\to\sphere{2}italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT : 1 * 1 โ†’ 2 corresponds to the usual Hopf map under the equivalence \sphereโข1โข*โข\sphereโข1โขโ‰ƒโข\sphereโข3\sphere1*\sphere1โ‰ƒ\sphere3{{\sphere{1}}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{1}}}\,\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{\sphere{3}}1 * 1 โ‰ƒ 3 and hence cofibโขh\sphereโข1โขโ‰ƒโขโ„‚โขP2cofibsubscriptโ„Ž\sphere1โ‰ƒโ„‚superscript๐‘ƒ2{{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{cofib}}}}\,{h_{\sphere{1}}}}\,\,{\color[rgb]{0,0,0.8046875% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}}cofib italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT โ‰ƒ blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT. The total space of this is \sphereโข1โข*โข\sphereโข1โข*โข\sphereโข1\sphere1*\sphere1*\sphere1{{\sphere{1}}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{1}}}{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{1}}1 * 1 * 1 which is equivalent to \sphereโข5\sphere5\sphere{5}5 by 2 and thus we have proved 24. The associated Gysin sequence gives us the main result of this section:

Proposition 26 (Hopf invariant of the Hopf map).

|HIโขhopf|โขโ‰กโขโ€‰1HIhopfโ‰ก1{\left|{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{HI}}}\,\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{hopf}}}}% \right|}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ‰ก}}\,{1}| HI hopf | โ‰ก 1

Proof 5.2.

Since โ„‚โขP2โ„‚superscriptP2\mathbb{C}P^{2}blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT is 1111-connected, 23 combined with 24 gives us an element e2:H2โข(โ„‚โขP2):subscript๐‘’2superscriptH2โ„‚superscript๐‘ƒ2e_{2}:\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{2}\!\left({{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \mathbb{C}P^{2}$}}}\right)italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT : H start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) and a sequence

Hiโˆ’1โข(\sphereโข5)โ†’Hiโˆ’2โข(โ„‚โขP2)โ†’โˆ’โŒฃe2Hiโข(โ„‚โขP2)โ†’Hiโข(\sphereโข5)\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{H}}}^{i-1}\!\left({\sphere{5}}\right)\to\textnormal{{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}% }^{i-2}\!\left({{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}}\right)\xrightarrow{\,{-}\;{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}\;{e_{2}}\,}\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{i}% \!\left({{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}}\right)\to\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{i}% \!\left({\sphere{5}}\right)H start_POSTSUPERSCRIPT italic_i - 1 end_POSTSUPERSCRIPT ( 5 ) โ†’ H start_POSTSUPERSCRIPT italic_i - 2 end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) start_ARROW start_OVERACCENT - โŒฃ italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_OVERACCENT โ†’ end_ARROW H start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) โ†’ H start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ( 5 )

When 1โ‰คiโ‰ค41๐‘–41\leq i\leq 41 โ‰ค italic_i โ‰ค 4, Hiโข(\sphereโข5)superscriptH๐‘–\sphere5\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{H}}}^{i}\!\left({\sphere{5}}\right)H start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ( 5 ) vanishes. Setting i=2๐‘–2i=2italic_i = 2, we get that e2subscript๐‘’2e_{2}italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT must be a generator of H2โข(โ„‚โขP2)superscriptH2โ„‚superscript๐‘ƒ2\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{H}}}^{2}\!\left({{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}}\right)H start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ), and thus equal to the generator ฮณ2:H2โข(โ„‚โขP2):subscript๐›พ2superscriptH2โ„‚superscript๐‘ƒ2\gamma_{2}:\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{2}\!\left({{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \mathbb{C}P^{2}$}}}\right)italic_ฮณ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT : H start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) up to a sign. Setting i=4๐‘–4i=4italic_i = 4, we get that โˆ’โŒฃe2{-}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}\;{e_{2}}- โŒฃ italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT must be an isomorphism of groups H2โข(โ„‚โขP2)โ‰…H4โข(โ„‚โขP2)superscriptH2โ„‚superscript๐‘ƒ2superscriptH4โ„‚superscript๐‘ƒ2{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{H}}}^{2}\!\left({{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}}\right)}% \,\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cong$}}\,\,{\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{4}\!\left({{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}}\right)}H start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) โ‰… H start_POSTSUPERSCRIPT 4 end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) and hence e2โŒฃe2โŒฃsubscript๐‘’2subscript๐‘’2{e_{2}}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}\;{e_{2}}italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT โŒฃ italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT is a generator. Consequently, so is ฮณ2โŒฃฮณ2โŒฃsubscript๐›พ2subscript๐›พ2{\gamma_{2}}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{\gamma_{2}}italic_ฮณ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT โŒฃ italic_ฮณ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, and thus |HIโขhopf|โขโ‰กโขโ€‰1HIhopfโ‰ก1{\left|{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{HI}}}\,\,\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{hopf}}}}% \right|}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ‰ก}}\,{1}| HI hopf | โ‰ก 1.

26 combined with 22 gives the desired path: |ฮฒ|โขโ‰กโขโ€‰2๐›ฝโ‰ก2{\left|{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}}\right|}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{2}| italic_ฮฒ | โ‰ก 2. This completes Brunerieโ€™s proof and 18 gives us the main result:

Theorem 27.

ฯ€4โข(\sphereโข3)โ‰…โ„ค/2โขโ„คsubscript๐œ‹4\sphere3โ„ค2โ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}/2{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) โ‰… โ„ค / 2 โ„ค

5.4. Formalisation of the Gysin sequence

Formalising the results from Chapterย 6 was more challenging, but was greatly aided by the alternative construction of the cup product discussed above. The first technical lemma, which is crucial for the construction of the Gysin sequence is:

Lemma 28.

Given x:Kn:๐‘ฅsubscriptK๐‘›x:\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{K}}}_{n}italic_x : K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT and y:Km:๐‘ฆsubscriptK๐‘šy:\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{K}}}_{m}italic_y : K start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT, we have

congโข(ฮปโขaโ†’aโŒฃky)โข(ฯƒnโขx)โ‰กฯƒn+mโข(xโŒฃky)congโ†’๐œ†๐‘Ž๐‘ŽsubscriptโŒฃ๐‘˜๐‘ฆsubscript๐œŽ๐‘›๐‘ฅsubscript๐œŽ๐‘›๐‘šsubscriptโŒฃ๐‘˜๐‘ฅ๐‘ฆ{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{cong}}\;{(\lambda\,a\to{a}\;{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile_{k}$}}% \;{y})}\;{({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{$\sigma$}}_{n}\,x)}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}_{n+m}({x}\;{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile_{k}$}}% \;{y})cong ( italic_ฮป italic_a โ†’ italic_a โŒฃ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT italic_y ) ( italic_ฯƒ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT italic_x ) โ‰ก italic_ฯƒ start_POSTSUBSCRIPT italic_n + italic_m end_POSTSUBSCRIPT ( italic_x โŒฃ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT italic_y )

In Brunerieโ€™s thesis, this lemma relies on a result which in turn requires the symmetric monoidal structure of the smash product (in particular, it uses the pentagon identity). With the alternative construction of the cup product, however, this result follows immediately from the definition of the cup product.

28 is used to show that the map

gi:Kiโ†’(\sphereโขnโ†’โ‹†Ki+n):superscript๐‘”๐‘–โ†’subscriptK๐‘–subscriptโ†’โ‹†\sphere๐‘›subscriptK๐‘–๐‘›\displaystyle g^{i}:\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]% {pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{i}\to(\sphere{n}\to_{\star}% \textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{K}}}_{i+n})italic_g start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT : K start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT โ†’ ( italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT K start_POSTSUBSCRIPT italic_i + italic_n end_POSTSUBSCRIPT )
giโขx=ฮปโขyโ†’xโŒฃkฮนโขysuperscript๐‘”๐‘–๐‘ฅ๐œ†๐‘ฆโ†’๐‘ฅsubscriptโŒฃ๐‘˜๐œ„๐‘ฆ\displaystyle g^{i}\,x=\lambda y\to{x}\;{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile_{k}$}}% \;{\iota{y}}italic_g start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT italic_x = italic_ฮป italic_y โ†’ italic_x โŒฃ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT italic_ฮน italic_y

is an equivalence, which is crucially used in the construction of the Gysin sequence. Above, ฮน:\sphereโขnโ†’Kn:๐œ„โ†’\sphere๐‘›subscriptK๐‘›\iota:\sphere{n}\to{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{K}}_{n}italic_ฮน : italic_n โ†’ K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT is a generator of Hnโข(\sphereโขn)superscriptH๐‘›\sphere๐‘›\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{H}}}^{n}\!\left({\sphere{n}}\right)H start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ( italic_n ). For reference, gisuperscript๐‘”๐‘–g^{i}italic_g start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT is the map gโ‹†Bisubscriptsuperscript๐‘”๐‘–subscriptโ‹†๐ตg^{i}_{\star_{B}}italic_g start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT โ‹† start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT end_POSTSUBSCRIPT in the proof of [Bru16a, Propositionย 6.1.2]. Brunerieโ€™s proof proceeds by induction on i๐‘–iitalic_i: the fact that g0superscript๐‘”0g^{0}italic_g start_POSTSUPERSCRIPT 0 end_POSTSUPERSCRIPT is an equivalence is easy; for the inductive step, it suffices to show that ฮฉโขgi+1:ฮฉโขKi+1โ†’ฮฉโข(\sphereโขnโ†’โ‹†K(i+1)+n):ฮฉsuperscript๐‘”๐‘–1โ†’ฮฉsubscriptK๐‘–1ฮฉsubscriptโ†’โ‹†\sphere๐‘›subscriptK๐‘–1๐‘›{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{g^{i+1}}:{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{% \textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{K}}}_{i+1}}}\to{{\color[rgb]{0,0,0.8046875}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{(\sphere{n}\to_{% \star}\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{(i+1)+n})}}roman_ฮฉ italic_g start_POSTSUPERSCRIPT italic_i + 1 end_POSTSUPERSCRIPT : roman_ฮฉ K start_POSTSUBSCRIPT italic_i + 1 end_POSTSUBSCRIPT โ†’ roman_ฮฉ ( italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT K start_POSTSUBSCRIPT ( italic_i + 1 ) + italic_n end_POSTSUBSCRIPT ) is an equivalence for reasons of connectedness. This is done by showing that the following diagram commutes

ฮฉโขKi+1ฮฉsubscriptK๐‘–1{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{i+1}}}}roman_ฮฉ K start_POSTSUBSCRIPT italic_i + 1 end_POSTSUBSCRIPTฮฉโข(\sphereโขnโ†’โ‹†K(i+1)+n)ฮฉsubscriptโ†’โ‹†\sphere๐‘›subscriptK๐‘–1๐‘›{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{(\sphere{n}\to_{\star}\textnormal{{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}% }_{(i+1)+n})}}}roman_ฮฉ ( italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT K start_POSTSUBSCRIPT ( italic_i + 1 ) + italic_n end_POSTSUBSCRIPT )KisubscriptK๐‘–{{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{K}}}_{i}}}K start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT(\sphereโขnโ†’โ‹†Ki+n)subscriptโ†’โ‹†\sphere๐‘›subscriptK๐‘–๐‘›{{(\sphere{n}\to_{\star}\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{i+n})}}( italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT K start_POSTSUBSCRIPT italic_i + italic_n end_POSTSUBSCRIPT )ฮฉโขgi+1ฮฉsuperscript๐‘”๐‘–1\scriptstyle{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\scriptstyle\Omega$}}\,{g^{i+1}}}roman_ฮฉ italic_g start_POSTSUPERSCRIPT italic_i + 1 end_POSTSUPERSCRIPTgisuperscript๐‘”๐‘–\scriptstyle{{g^{i}}}italic_g start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPTโ‰ƒsimilar-to-or-equals\scriptstyle\simeqโ‰ƒโ‰ƒsimilar-to-or-equals\scriptstyle\simeqโ‰ƒ

hence getting that ฮฉโขgi+1ฮฉsuperscript๐‘”๐‘–1{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{g^{i+1}}roman_ฮฉ italic_g start_POSTSUPERSCRIPT italic_i + 1 end_POSTSUPERSCRIPT is an equivalence from the induction hypothesis.

While the general idea of Brunerieโ€™s proof of this statement is correct, it was difficult to formalise directly. The primary reason for this is that Brunerie does not pay much attention to the fact that the objects of interest are not just functions, but pointed functions. In particular, his argument for the commutativity of the diagram above treats giโขxsuperscript๐‘”๐‘–๐‘ฅg^{i}\,xitalic_g start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT italic_x as a plain function rather than a pointed function. Fortunately for us, the whole proof is very direct with the alternative definition of the cup product. Formalising Brunerieโ€™s proof with pointedness of functions respected would have been hard, especially without machinery external to [Bru16a] (e.g.ย [BLM22, Lemma 14.]).

After these subtleties were dealt with, the formalisation of the Gysin sequence could proceed following Brunerieโ€™s proof closely. In our initial formalisation, we made a slight adjustment to the indexing of the Gysin sequence. This removed some bureaucracy but happened at the cost of generality.333A more general form of the Gysin sequence using Brunerieโ€™s indexing has later been added to ๐šŠ๐š๐š๐šŠ/๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐šŠ๐š๐š๐šŠ๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}agda/cubical}typewriter_agda / typewriter_cubical. This made verifying thatย 26 slightly less direct, because we no longer had access to the case

H1โข(\sphereโข5)โŸถH0โข(โ„‚โขP2)โ†’โˆ’โŒฃe2H2โข(โ„‚โขP2)โŸถH2โข(\sphereโข5)\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{H}}}^{1}\!\left({\sphere{5}}\right)\longrightarrow\textnormal% {{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{H}}}^{0}\!\left({{\color[rgb]{0,0,0.8046875}\definecolor[named]% {pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}}\right)% \xrightarrow{\,{-}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{e_{2}}\,}\textnormal{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{H}}}^{2}\!\left({{\color[rgb]{0,0,0.8046875}\definecolor[named]% {pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}}\right)% \longrightarrow\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{2}\!\left({\sphere{5}}\right)H start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT ( 5 ) โŸถ H start_POSTSUPERSCRIPT 0 end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) start_ARROW start_OVERACCENT - โŒฃ italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_OVERACCENT โ†’ end_ARROW H start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) โŸถ H start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( 5 )

which is used by Brunerie to show that the element e2:H2โข(โ„‚โขP2):subscript๐‘’2superscriptH2โ„‚superscript๐‘ƒ2e_{2}:\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{2}\!\left({{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \mathbb{C}P^{2}$}}}\right)italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT : H start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ), for which โˆ’โŒฃe2:H2(โ„‚โขP2)โ†’H4(โ„‚โขP2){-}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}\;{e_{2}}:\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{2}% \!\left({{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}}\right)\to\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{4}% \!\left({{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}}\right)- โŒฃ italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT : H start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) โ†’ H start_POSTSUPERSCRIPT 4 end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) is an isomorphism, is indeed a generator. However, in practice, this is not a big problem. In fact, it provides a nice example of a proof by computation. It is very direct to manually show that the map i:โ„‚โขP2โ†’K2:๐‘–โ†’โ„‚superscript๐‘ƒ2subscriptK2i:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}\to\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{K}}}_{2}italic_i : blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT โ†’ K start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT induced by iโข(๐—‚๐—‡๐—…โขx)=โˆฃโขxโขโˆฃ๐‘–๐—‚๐—‡๐—…๐‘ฅโˆฃ๐‘ฅโˆฃi({{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inl}$}}}\,{x})={{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}% \,x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}italic_i ( sansserif_inl italic_x ) = โˆฃ italic_x โˆฃ is equal to the underlying map of e2subscript๐‘’2e_{2}italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. The fact that i๐‘–iitalic_i generates H2โข(โ„‚โขP2)superscriptH2โ„‚superscript๐‘ƒ2\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{H}}}^{2}\!\left({{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}}\right)H start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) can then be verified by computation: applying the isomorphism H2โข(โ„‚โขP2)โ‰…โ„คsuperscriptH2โ„‚superscript๐‘ƒ2โ„ค{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{H}}}^{2}\!\left({{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\mathbb{C}P^{2}$}}}\right)}% \,\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cong$}}\,\,{{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}}H start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( blackboard_C italic_P start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) โ‰… โ„ค to โˆฃโขiโขโˆฃโˆฃ๐‘–โˆฃ{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,i\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}โˆฃ italic_i โˆฃ returns 1111 by normalisation in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda. We stress, for those skeptical of this method, that it also is very direct to provide a โ€œmanualโ€ formalisation of this fact.

The final step of the formalisation wasย 25, i.e.ย the iterated Hopf construction. Although technical, the formalisation could be carried out following Brunerie closely.

6. The simplified proof and normalisation of a Brunerie number

It turns out that not only Chapter 4, but also Chapters 5โ€“6 can be avoided. As conjectured by Brunerie, it would be possible to do this by simply normalising the Brunerie number. While we still cannot normalise his original definition of it, we can at least provide a computation of a substantially simplified Brunerie number. This is defined via a more tractable description of the isomorphism ฯ€3โข(\sphereโข2)โ‰…โ„คsubscript๐œ‹3\sphere2โ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ‰… โ„ค as a composition of simpler isomorphisms, relying on an alternative definition of ฯ€3subscript๐œ‹3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT in terms of \sphereโข1โข*โข\sphereโข1\sphere1*\sphere1{\sphere{1}}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{1}}1 * 1. The idea is then to trace [i2,i2]:ฯ€3โข(\sphereโข2):subscript๐‘–2subscript๐‘–2subscript๐œ‹3\sphere2[i_{2},i_{2}]:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})[ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ] : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) step by step through these isomorphisms. This gives a sequence of new Brunerie numbers and one of these normalises to โˆ’22-2- 2 in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda in a matter of seconds.

The trick to give a more tractable definition of ฯ€3โข(\sphereโข2)โ‰…โ„คsubscript๐œ‹3\sphere2โ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ‰… โ„ค is to redefine the third homotopy group of a type A๐ดAitalic_A as ฯ€3โˆ—โข(A)=โˆฅโข\sphereโข1โข*โข\sphereโข1โ†’โ‹†Aโขโˆฅ0superscriptsubscript๐œ‹3๐ดโˆฅ\sphere1*\sphere1subscriptโ†’โ‹†๐ดsubscriptโˆฅ0{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}^{*}(A)={\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,{\sphere{1% }}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{1}}\to_{\star}A% \,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}_{0}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ( italic_A ) = โˆฅ 1 * 1 โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_A โˆฅ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT. This reformulation of ฯ€3subscript๐œ‹3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT can be given an explicit group structure, such that pre-composition by \sphereโข1โข*โข\sphereโข1โขโ‰ƒโข\sphereโข3\sphere1*\sphere1โ‰ƒ\sphere3{{\sphere{1}}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{1}}}\,\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{\sphere{3}}1 * 1 โ‰ƒ 3 induces an isomorphism ฯ€3โข(A)โ‰…ฯ€3โˆ—โข(A)subscript๐œ‹3๐ดsuperscriptsubscript๐œ‹3๐ด{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(A)}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}^{*}(A)}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( italic_A ) โ‰… italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ( italic_A ). Let us first set up machinery we need (and a bit more).

6.1. Interlude: joins and smash products of spheres

We have seen that the equivalence \sphereโข3โขโ‰ƒโข\sphereโข1โข*โข\sphereโข1\sphere3โ‰ƒ\sphere1*\sphere1\sphere{3}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{โ‰ƒ}}\,{\sphere{1}}{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{\text{% \textasteriskcentered}}}\,{\sphere{1}}3 โ‰ƒ 1 * 1 played a crucial role in Brunerieโ€™s original proof. What is less clear, however, is what this equivalence actually looks like. It turns out that it is closely related to the multiplication \sphereโข1โˆง\sphereโข1โ†’\sphereโข2โ†’\sphere1\sphere1\sphere2\sphere{1}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{$\wedge$}}\,\sphere{1}\to\sphere{2}1 โˆง 1 โ†’ 2 and, as such, has a rather direct and algebraic description. Let us therefore briefly study this multiplication and describe its relation to the decomposition of spheres into joins. Although we only need low-dimensional special cases of these facts, we take the opportunity to tell the general story.

Remark.

In this subsection only, we will use the definition \sphereโขn:=SuspnโขBoolassign\sphere๐‘›SuspnBool\sphere{n}:=\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}${}^{n}$}{\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% Bool}}}italic_n := Susp Bool. In particular, this means that we redefine \sphereโข1:=Suspย Boolassign\sphere1Suspย Bool\sphere{1}:=\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{Bool}}$}}1 := Susp sansserif_Bool instead of using the ๐–ป๐–บ๐—Œ๐–พ/๐—…๐—ˆ๐—ˆ๐—‰๐–ป๐–บ๐—Œ๐–พ๐—…๐—ˆ๐—ˆ๐—‰{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{base}$}}}/{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{loop}$}}}sansserif_base / sansserif_loop construction. This is only done for ease of presentation and is not used in the formalisation.

Let us use the following (explicit) definition of the smash product AโˆงB๐ด๐ตA\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\wedge$}}\,Bitalic_A โˆง italic_B. \ExecuteMetaData[agda/latex/background.tex]smash This construction is well-known and can easily be seen to be (bi-)functorial (see e.g.ย [Lju24, Definition 6]), i.e.ย given pointed maps f:Aโ†’โ‹†C:๐‘“subscriptโ†’โ‹†๐ด๐ถf:A\to_{\star}Citalic_f : italic_A โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_C and g:Bโ†’โ‹†D:๐‘”subscriptโ†’โ‹†๐ต๐ทg:B\to_{\star}Ditalic_g : italic_B โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_D, there is a map fโˆงg:AโˆงBโ†’CโˆงD:๐‘“๐‘”โ†’๐ด๐ต๐ถ๐ทf\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\wedge$}}\,g:A\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\wedge$}}\,B\to C\,{\color% [rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\wedge$}}Ditalic_f โˆง italic_g : italic_A โˆง italic_B โ†’ italic_C โˆง italic_D with (fโˆงg)โขโŸจxโข,โขyโŸฉ:=โŸจfโขxโข,โขgโขyโŸฉassign๐‘“๐‘”delimited-โŸจโŸฉ๐‘ฅ,๐‘ฆdelimited-โŸจโŸฉ๐‘“๐‘ฅ,๐‘”๐‘ฆ(f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\wedge$}}\,g){{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{\langle}$}}}{{x}\,{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{,}$}}}\,{y}}{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{\rangle}$}}}:={{\color[rgb]% {0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{\langle}$}}}{{f\,x}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}\,{g\,y}}{{\color[rgb% ]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{\rangle}$}}}( italic_f โˆง italic_g ) โŸจ italic_x , italic_y โŸฉ := โŸจ italic_f italic_x , italic_g italic_y โŸฉ.

The first goal is to define a multiplication \sphereโขnโˆง\sphereโขmโ†’\sphereโขn+mโ†’\sphere๐‘›\sphere๐‘š\sphere๐‘›๐‘š\sphere{n}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{$\wedge$}}\,\sphere{m}\to\sphere{n+m}italic_n โˆง italic_m โ†’ italic_n + italic_m. To facilitate future proofs, we first introduce the following construction which lifts maps Aร—Bโ†’Cโ†’๐ด๐ต๐ถA\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\times$}}\,B\to Citalic_A ร— italic_B โ†’ italic_C to maps (SuspA)ร—Bโ†’SuspBโ†’SuspA๐ตSuspB(\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{Susp}}{$\,A$}})\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\times$}}\,B\to\textnormal{% {\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{Susp}}{$\,B$}}( Susp italic_A ) ร— italic_B โ†’ Susp italic_B: \ExecuteMetaData[agda/latex/background.tex]lift-left The function ^โขf^absent๐‘“{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\widehat{\phantom{-}}$}}{f}over^ start_ARG end_ARG italic_f is pointed in the left-argument by construction. It is pointed also in the right-argument if this is the case for f๐‘“fitalic_f. Hence, given any function g:AโˆงBโ†’C:๐‘”โ†’๐ด๐ต๐ถg:A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\wedge$}}\,B\to Citalic_g : italic_A โˆง italic_B โ†’ italic_C, we also get (with some abuse of notation) ^โขg:(SuspA)โˆงBโ†’SuspC:^absent๐‘”โ†’SuspA๐ตSuspC{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\widehat{\phantom{-}}$}}{g}:(\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$% \,A$}})\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\wedge$}}\,B\to\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,C$}}over^ start_ARG end_ARG italic_g : ( Susp italic_A ) โˆง italic_B โ†’ Susp italic_C.

Lemma 29.

For any pointed types A๐ดAitalic_A and B๐ตBitalic_B, the map ^โขidAโˆงB:(SuspA)โˆงBโ†’Susp(AโˆงB):^absentsubscriptid๐ด๐ตโ†’SuspA๐ตSusp(AโˆงB){\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\widehat{\phantom{-}}$}}{\,\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{id}}}}_{% A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\wedge$}}\,B}:(\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,A$}})\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\wedge$}}\,B\to\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,(A\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\wedge$}}\,B)$}}over^ start_ARG end_ARG id start_POSTSUBSCRIPT italic_A โˆง italic_B end_POSTSUBSCRIPT : ( Susp italic_A ) โˆง italic_B โ†’ Susp ( italic_A โˆง italic_B ) is an equivalence.

Proof 6.1.

The inverse of ^โขidAโˆงB^absentsubscriptid๐ด๐ต{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\widehat{\phantom{-}}$}}{\,\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{id}}}}_{% A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\wedge$}}\,B}over^ start_ARG end_ARG id start_POSTSUBSCRIPT italic_A โˆง italic_B end_POSTSUBSCRIPT is induced by the map Aร—Bโ†’ฮฉโข((SuspA)โˆงB)โ†’๐ด๐ตฮฉSuspA๐ตA\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\times$}}\,B\to{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{((\textnormal{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{Susp}}{$\,A$}})\,{\color[rgb]{0,0,0.8046875}\definecolor[named]% {pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\wedge$}}\,B})italic_A ร— italic_B โ†’ roman_ฮฉ ( ( Susp italic_A ) โˆง italic_B ) defined by mapping (a,b):Aร—B:๐‘Ž๐‘๐ด๐ต(a,b):A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\times$}}\,B( italic_a , italic_b ) : italic_A ร— italic_B to the composite loop given by:

โ‹†โˆงsubscriptโ‹†\mathsf{\star_{\wedge}}โ‹† start_POSTSUBSCRIPT โˆง end_POSTSUBSCRIPTโŸจ๐—‡๐—ˆ๐—‹๐—๐—,bโŸฉ๐—‡๐—ˆ๐—‹๐—๐—๐‘{{\langle{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{north}$}}},b\rangle}}โŸจ sansserif_north , italic_b โŸฉโŸจnorth,bโŸฉ{{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{\langle}$}}}{{{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{north}$% }}}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{,}$}}}\,{b}}{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{\rangle% }$}}}}}italic_sansserif_โŸจ italic_sansserif_north , italic_b โŸฉโ‹†โˆงsubscriptโ‹†\mathsf{\star_{\wedge}}โ‹† start_POSTSUBSCRIPT โˆง end_POSTSUBSCRIPTpushrโˆ’1superscriptsubscriptpushr1\scriptstyle{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\scriptstyle\mathsf{\textsf{push}_{\textnormal{{r}}% }}$}}}^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\scriptstyle-1$}}}}push start_POSTSUBSCRIPT r end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPTcongโŸจโˆ’,bโŸฉ(ฯƒa)\scriptstyle{\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{cong}}\;{{{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\scriptstyle\mathsf{\langle}% $}}}{{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\scriptstyle-$}}}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\scriptstyle% \mathsf{,}$}}}\,{b}}{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\scriptstyle\mathsf{\rangle}$}}}}\;% {({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\scriptstyle\sigma$}}\,a)}\,}cong italic_sansserif_โŸจ italic_sansserif_- , italic_b โŸฉ ( italic_ฯƒ italic_a )pushrsubscriptpushr\scriptstyle\mathsf{\textsf{push}_{\textnormal{{r}}}}push start_POSTSUBSCRIPT r end_POSTSUBSCRIPT

The fact that these maps cancel follows by some technical but elementary path algebra. For the details, we refer to the formalisation.

Lemma 30.

If f:AโˆงBโ†’C:๐‘“โ†’๐ด๐ต๐ถf:A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\wedge$}}\,B\to Citalic_f : italic_A โˆง italic_B โ†’ italic_C is an equivalence, then so is ^โขf:SuspAโˆงBโ†’Suspย โขA:^absent๐‘“โ†’SuspA๐ตSuspย ๐ด{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\widehat{\phantom{-}}$}}{f}:\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$% \,A$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\wedge$}}\,B\to\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,\,$}}Aover^ start_ARG end_ARG italic_f : Susp italic_A โˆง italic_B โ†’ Susp italic_A

Proof 6.2.

Using equivalence inductionย (see e.g.ย [Uni13, Corollaryย 5.8.5]), it is enough to prove the lemma for C:=AโˆงBassign๐ถ๐ด๐ตC:=A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\wedge$}}\,Bitalic_C := italic_A โˆง italic_B and f:=idAโˆงBassign๐‘“subscriptid๐ด๐ตf:=\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{id}}}_{A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\wedge$}}\,B}italic_f := id start_POSTSUBSCRIPT italic_A โˆง italic_B end_POSTSUBSCRIPT. In this case, the statement is precisely that ofย 29.

These lemmas allow us to define an equivalence โˆงn,m:\spherenโˆง\spheremโ‰ƒ\spheren+m{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\wedge$}}_{n,m}:\sphere{n}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\wedge$}}\,% \sphere{m}\simeq\sphere{n+m}โˆง start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT : italic_n โˆง italic_m โ‰ƒ italic_n + italic_m (we borrow this notation fromย [Bru16a, Proposition 4.2.2]). We will write โŒฃ:\spherenร—\spheremโ†’\spheren+m{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}:\sphere{n}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\times$}}\,% \sphere{m}\to\sphere{n+m}โŒฃ : italic_n ร— italic_m โ†’ italic_n + italic_m for the underlying function, i.e. xโŒฃy:=โˆงn,mโŸจxโข,โขyโŸฉโŒฃ๐‘ฅ๐‘ฆassignsubscript๐‘›๐‘šdelimited-โŸจโŸฉ๐‘ฅ,๐‘ฆ{x}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}\;{y}:={\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\wedge$}}_{n,m}{{\color[% rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}% \textsf{$\mathsf{\langle}$}}}{{x}\,{{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}\,{y}}{{\color% [rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}% \textsf{$\mathsf{\rangle}$}}}italic_x โŒฃ italic_y := โˆง start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT โŸจ italic_x , italic_y โŸฉ. The name โŒฃโŒฃ\smileโŒฃ is suggestive: modulo the quotient maps \sphereโˆ™โ†’Kโˆ™\sphere{\bullet}\to{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{K}}_{\bullet}โˆ™ โ†’ K start_POSTSUBSCRIPT โˆ™ end_POSTSUBSCRIPT, it is precisely the cup product; this justifies overloading the symbol. We define it by induction on n๐‘›nitalic_n. In the case n=0๐‘›0n=0italic_n = 0, we define it on canonical points โŸจxโข,โขyโŸฉdelimited-โŸจโŸฉ๐‘ฅ,๐‘ฆ{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{\langle}$}}}{{x}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,{y}}{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{\rangle}$}}}โŸจ italic_x , italic_y โŸฉ by case distinction on x๐‘ฅxitalic_x:

falseโŒฃyโŒฃfalse๐‘ฆ\displaystyle{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{\textsf{false}}$}}}}\;{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \smile$}}\;{y}false โŒฃ italic_y =yabsent๐‘ฆ\displaystyle=y= italic_y
trueโŒฃyโŒฃtrue๐‘ฆ\displaystyle{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{\textsf{true}}$}}}}\;{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \smile$}}\;{y}true โŒฃ italic_y =โ‹†\sphereโขmabsentsubscriptโ‹†\sphere๐‘š\displaystyle=\star_{\sphere{m}}= โ‹† start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT

This map induces a map on the full smash product \sphereโข0โˆง\sphereโขm\sphere0\sphere๐‘š\sphere{0}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{$\wedge$}}\,\sphere{m}0 โˆง italic_m [Bru16a, Sectionย 4.1]. In fact, it is an equivalence, and thereby โˆง0,msubscript0๐‘š{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\wedge$}}_{0,m}โˆง start_POSTSUBSCRIPT 0 , italic_m end_POSTSUBSCRIPT is defined. For n>0๐‘›0n>0italic_n > 0 we use the fact that \sphereโขn:=Susp\sphereโขnโˆ’1assign\sphere๐‘›Susp\sphereโขnโˆ’1\sphere{n}:=\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,\sphere{n-1}$}}italic_n := Susp italic_n - 1 and simply define define โˆงn,m:=^โˆงnโˆ’1,m{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\wedge$}}_{n,m}:={\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\widehat{% \phantom{-}}$}}{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0,0.8046875}\textsf{$\wedge$}}_{n-1,m}}โˆง start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT := sansserif_^ sansserif_โˆง start_POSTSUBSCRIPT italic_n - 1 , italic_m end_POSTSUBSCRIPT. By 29, this is an equivalence.

Let us try to transfer this construction from smash products to joins. To begin with, consider the following map, defined for any two pointed types A๐ดAitalic_A and B๐ตBitalic_B: \ExecuteMetaData[agda/latex/background.tex]pinch

Proposition 31.

For any two pointed types A๐ดAitalic_A and B๐ตBitalic_B, the map pinch is an equivalence.

Proof 6.3.

While we have, in our formalisation, explicitly constructed an inverse of pinch and proved directly that the two maps cancel, a recent (independent) result by Cagne et al.ย [CBKB24] allows us to give a more principled proof. We proceed by noting that for any pointed type C๐ถCitalic_C, we have

(Susp(AโˆงB)โ†’โ‹†C)โ‰ƒ(AโˆงBโ†’โ‹†ฮฉโขC)โ‰ƒ(Aโ†’โ‹†(Bโ†’โ‹†ฮฉโขC))โ‰ƒ(Aโข*โขBโ†’โ‹†C)similar-to-or-equalssubscriptโ†’โ‹†Susp(AโˆงB)๐ถsubscriptโ†’โ‹†๐ด๐ตฮฉ๐ถsimilar-to-or-equalssubscriptโ†’โ‹†๐ดsubscriptโ†’โ‹†๐ตฮฉ๐ถsimilar-to-or-equalssubscriptโ†’โ‹†๐ด*๐ต๐ถ(\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{Susp}}{$\,(A\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\wedge$}}\,B)$}}\to_{\star}% C)\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\simeq$}}\,({A\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\wedge$}}\,B}\to_{\star}{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{C})\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\simeq$}}\,(A% \to_{\star}(B\to_{\star}{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{C}))\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \simeq$}}\,({A\,}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{B}\to_{\star}C)( Susp ( italic_A โˆง italic_B ) โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_C ) โ‰ƒ ( italic_A โˆง italic_B โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT roman_ฮฉ italic_C ) โ‰ƒ ( italic_A โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT ( italic_B โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT roman_ฮฉ italic_C ) ) โ‰ƒ ( italic_A * italic_B โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_C )

where the first equivalence comes from the adjunction between Susp and ฮฉฮฉ\Omegaroman_ฮฉ and the second from the adjunction between smash products and doubly pointed maps. The third equivalence is [CBKB24, Lemma 6.1]. This shows that Susp(AโˆงB)๐ด๐ต\,(A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\wedge$}}\,B)( italic_A โˆง italic_B ) and Aโข*โขB๐ด*๐ต{A\,}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{B}italic_A * italic_B have the same elimination principle, which implies the desired statement.

Let Fn,m:\sphereโขnโข*โข\sphereโขmโ†’\sphereโขn+m+1:subscriptF๐‘›๐‘šโ†’\sphere๐‘›*\sphere๐‘š\sphere๐‘›๐‘š1{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}_{n,m}:{\sphere{n}}{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{\text{% \textasteriskcentered}}}\,{\sphere{m}}\to\sphere{n+m+1}F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT : italic_n * italic_m โ†’ italic_n + italic_m + 1 denote the following composition:

\spheren*\spheremโ†’pinchSusp(\sphereโขnโˆง\sphereโขm)โ†’Susp(โˆงn,m)Susp\sphereโขn+m=:\spheren+m+1{\sphere{n}}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{m}}% \xrightarrow{\,\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{pinch}}}\,}\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$% \,(\sphere{n}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\wedge$}}\,\sphere{m})$}}\xrightarrow{\,% \textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{Susp}}{$\,({\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\wedge$}}_{n,m})$}}\,}\textnormal{% {\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{Susp}}{$\,\sphere{n+m}$}}=:\sphere{n+m+1}italic_n * italic_m start_ARROW start_OVERACCENT pinch end_OVERACCENT โ†’ end_ARROW Susp ( italic_n โˆง italic_m ) start_ARROW start_OVERACCENT Susp ( โˆง start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT ) end_OVERACCENT โ†’ end_ARROW Susp italic_n + italic_m = : italic_n + italic_m + 1

Unfolding the definition of Fn,msubscriptF๐‘›๐‘š{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}_{n,m}F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT we see that it has an incredibly compact description: \ExecuteMetaData[agda/latex/background.tex]F Since Fn,msubscriptF๐‘›๐‘š{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}_{n,m}F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT is a composition of two equivalences, we immediately arrive at the following result.

Proposition 32.

Fn,msubscriptF๐‘›๐‘š{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}_{n,m}F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT is an equivalence

We have already seen that the special case \sphereโข1โข*โข\sphereโข1โ‰ƒ\sphereโข3similar-to-or-equals\sphere1*\sphere1\sphere3{\sphere{1}}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{1}}\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\simeq$}}\,\sphere{3}1 * 1 โ‰ƒ 3 plays an important role in Brunerieโ€™s proof. Now that we have moved from the rather opaque definition of this equivalence presented in Brunerieโ€™s thesis to the definition in terms of the very explicit function Fn,msubscriptF๐‘›๐‘š{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}_{n,m}F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT, we can hope to better understand its role in the definition of the Brunerie number. Since the only non-trivial component of the construction of Fn,msubscriptF๐‘›๐‘š{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}_{n,m}F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT is โŒฃโŒฃ\smileโŒฃ, we may hope that it inherits some of its properties. We study these now.

Let us first analyse the interaction of โŒฃโŒฃ\smileโŒฃ with inversion. Recall, given a pointed type A๐ดAitalic_A we can define inversion on SuspA๐ด\,Aitalic_A by: \ExecuteMetaData[agda/latex/background.tex]susp-inversion We get sphere inversion by letting โˆ’:\spherenโ†’\spheren-:\sphere{n}\to\sphere{n}- : italic_n โ†’ italic_n be boolean negation when n:=0assign๐‘›0n:=0italic_n := 0 and the suspension inversion defined above when n>1๐‘›1n>1italic_n > 1.444If we prefer to use the ๐–ป๐–บ๐—Œ๐–พ/๐—…๐—ˆ๐—ˆ๐—‰๐–ป๐–บ๐—Œ๐–พ๐—…๐—ˆ๐—ˆ๐—‰{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{base}$}}}/{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{loop}$}}}sansserif_base / sansserif_loop-construction of \sphereโข1\sphere1\sphere{1}1, we may define the inversion map simply by sending ๐—…๐—ˆ๐—ˆ๐—‰๐—…๐—ˆ๐—ˆ๐—‰\mathsf{loop}sansserif_loop to ๐—…๐—ˆ๐—ˆ๐—‰โˆ’1superscript๐—…๐—ˆ๐—ˆ๐—‰1{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{loop}$}}}^{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-1$}}}sansserif_loop start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT.

Proposition 33.

The multiplication โŒฃโŒฃ\smileโŒฃ is graded-commutative, i.e.ย for x:\sphereโขn:๐‘ฅ\sphere๐‘›x:\sphere{n}italic_x : italic_n and y:\sphereโขm:๐‘ฆ\sphere๐‘šy:\sphere{m}italic_y : italic_m, we have xโŒฃyโ‰กโˆ’nโขm(yโŒฃx)โŒฃ๐‘ฅ๐‘ฆsuperscript๐‘›๐‘šโŒฃ๐‘ฆ๐‘ฅ{x}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}\;{y}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% -$}}^{nm}({y}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{x})italic_x โŒฃ italic_y โ‰ก - start_POSTSUPERSCRIPT italic_n italic_m end_POSTSUPERSCRIPT ( italic_y โŒฃ italic_x ).

For the proof, we refer to [BLM22, Proposition 18] which is the corresponding statement for the cup product on Kn:=โˆฅโข\sphereโขnโขโˆฅnassignsubscriptK๐‘›โˆฅ\sphere๐‘›subscriptโˆฅ๐‘›{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{K}}_{n}:={\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,\sphere{n}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ% }}_{n}K start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT := โˆฅ italic_n โˆฅ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT and whose proof directly applies also in our setting. Associativity follows, just like in the proof of [BLM22, Proposition 17], by sphere induction:

Proposition 34.

The multiplication โŒฃโŒฃ\smileโŒฃ is associative.

Proof 6.4.

Let x:\sphereโขn:๐‘ฅ\sphere๐‘›x:\sphere{n}italic_x : italic_n, y:\sphereโขm:๐‘ฆ\sphere๐‘šy:\sphere{m}italic_y : italic_m and z:\sphereโขk:๐‘ง\sphere๐‘˜z:\sphere{k}italic_z : italic_k. We show that xโŒฃ(yโŒฃz)โ‰ก(xโŒฃy)โŒฃzโŒฃ๐‘ฅโŒฃ๐‘ฆ๐‘งโŒฃ๐‘ฅ๐‘ฆโŒฃ๐‘ง{x}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}\;{({y}\;{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{z}% )}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\equiv$}}\,{({x}\;{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{y}% )}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}\;{z}italic_x โŒฃ ( italic_y โŒฃ italic_z ) โ‰ก ( italic_x โŒฃ italic_y ) โŒฃ italic_z by induction on n๐‘›nitalic_n and x๐‘ฅxitalic_x. When n=0๐‘›0n=0italic_n = 0, the two equalities

falseโŒฃ(yโŒฃz)โ‰ก(falseโŒฃy)โŒฃzโŒฃfalseโŒฃ๐‘ฆ๐‘งโŒฃfalse๐‘ฆโŒฃ๐‘ง\displaystyle{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{\textsf{false}}$}}}}\;{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \smile$}}\;{({y}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{z})}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \equiv$}}\,{({{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{\textsf{false}}$}}}}\;{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \smile$}}\;{y})}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{z}false โŒฃ ( italic_y โŒฃ italic_z ) โ‰ก ( false โŒฃ italic_y ) โŒฃ italic_z
trueโŒฃ(yโŒฃz)โ‰ก(trueโŒฃy)โŒฃzโŒฃtrueโŒฃ๐‘ฆ๐‘งโŒฃtrue๐‘ฆโŒฃ๐‘ง\displaystyle{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{\textsf{true}}$}}}}\;{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \smile$}}\;{({y}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{z})}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \equiv$}}\,{({{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{\textsf{true}}$}}}}\;{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \smile$}}\;{y})}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{z}true โŒฃ ( italic_y โŒฃ italic_z ) โ‰ก ( true โŒฃ italic_y ) โŒฃ italic_z

hold definitionally. For the inductive step, we use suspension elimination on x:\sphereโขn+1:๐‘ฅ\sphere๐‘›1x:\sphere{n+1}italic_x : italic_n + 1. The two equalities

๐—‡๐—ˆ๐—‹๐—๐—โŒฃ(yโŒฃz)โ‰ก(๐—‡๐—ˆ๐—‹๐—๐—โŒฃy)โŒฃzโŒฃ๐—‡๐—ˆ๐—‹๐—๐—โŒฃ๐‘ฆ๐‘งโŒฃ๐—‡๐—ˆ๐—‹๐—๐—๐‘ฆโŒฃ๐‘ง\displaystyle{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{north}$}}}}\;{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{({% y}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}\;{z})}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{({% {{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{north}$}}}}\;{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{y}% )}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}\;{z}sansserif_north โŒฃ ( italic_y โŒฃ italic_z ) โ‰ก ( sansserif_north โŒฃ italic_y ) โŒฃ italic_z
๐—Œ๐—ˆ๐—Ž๐—๐—โŒฃ(yโŒฃz)โ‰ก(๐—Œ๐—ˆ๐—Ž๐—๐—โŒฃy)โŒฃzโŒฃ๐—Œ๐—ˆ๐—Ž๐—๐—โŒฃ๐‘ฆ๐‘งโŒฃ๐—Œ๐—ˆ๐—Ž๐—๐—๐‘ฆโŒฃ๐‘ง\displaystyle{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{south}$}}}}\;{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{({% y}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}\;{z})}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{({% {{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{south}$}}}}\;{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{y}% )}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}\;{z}sansserif_south โŒฃ ( italic_y โŒฃ italic_z ) โ‰ก ( sansserif_south โŒฃ italic_y ) โŒฃ italic_z

also hold definitionally. So, by inspection of the definition of โŒฃโŒฃ\smileโŒฃ, we need to show that

ฯƒ(xโŒฃy)โ‰กcong(โˆ’โŒฃz)(ฯƒ(xโŒฃy))\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\sigma$}}({x}\;{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{y}% )\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{({-}\;{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \smile$}}\;{z})}\;{({\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}{({x}\;{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \smile$}}\;{y})})}italic_ฯƒ ( italic_x โŒฃ italic_y ) โ‰ก cong ( - โŒฃ italic_z ) ( italic_ฯƒ ( italic_x โŒฃ italic_y ) )

Using the action of cong on path composition, we can unfold the right-hand side as follows:

cong(โˆ’โŒฃz)(ฯƒ(xโŒฃy))\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{cong}}\;{({-}\;{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{z}% )}\;{({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}{({x}\;{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{y})})}\,cong ( - โŒฃ italic_z ) ( italic_ฯƒ ( italic_x โŒฃ italic_y ) ) โ‰กcong(โˆ’โŒฃz)(๐—†๐–พ๐—‹๐—‚๐–ฝ(xโŒฃy))โ‹…cong(โˆ’โŒฃz)(๐—†๐–พ๐—‹๐—‚๐–ฝ๐—‡๐—ˆ๐—‹๐—๐—)โˆ’1\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{({-}\;{\color[rgb]% {0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% $\smile$}}\;{z})}\;{({{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{merid}$}}}\;{({x}\;{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\smile$}}\;{y})})}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% cong}}\;{({-}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{z})}\;{({{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{merid}$% }}}\;{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{north}$}}}})^{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-1$}}}}โ‰ก cong ( - โŒฃ italic_z ) ( sansserif_merid ( italic_x โŒฃ italic_y ) ) โ‹… cong ( - โŒฃ italic_z ) ( sansserif_merid sansserif_north ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT
:=ฯƒโข(xโŒฃy)โ‹…ฯƒโข(๐—‡๐—ˆ๐—‹๐—๐—โŒฃy)โˆ’1assignabsentโ‹…๐œŽโŒฃ๐‘ฅ๐‘ฆ๐œŽsuperscriptโŒฃ๐—‡๐—ˆ๐—‹๐—๐—๐‘ฆ1\displaystyle{:=}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}({x}\;{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \smile$}}\;{y})\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}({{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{north}$}}}}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{y})^{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% -1$}}}:= italic_ฯƒ ( italic_x โŒฃ italic_y ) โ‹… italic_ฯƒ ( sansserif_north โŒฃ italic_y ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT
โ‰กฯƒโข(xโŒฃy)absent๐œŽโŒฃ๐‘ฅ๐‘ฆ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}({x}\;{\color[rgb% ]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf% {$\smile$}}\;{y})โ‰ก italic_ฯƒ ( italic_x โŒฃ italic_y )

6.2. Homotopy groups in terms of joins

As we have seen in Brunerieโ€™s construction of the Hopf map, it is often easier to describe maps of type \sphereโขnโข*โข\sphereโขmโ†’Aโ†’\sphere๐‘›*\sphere๐‘š๐ด{\sphere{n}}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{m}}\to Aitalic_n * italic_m โ†’ italic_A than those of type \sphereโขn+m+1โ†’Aโ†’\sphere๐‘›๐‘š1๐ด\sphere{n+m+1}\to Aitalic_n + italic_m + 1 โ†’ italic_A. However, the definition of homotopy groups we have relied on so far uses the latter type. This forces us to translate back and forth whenever we want to use the definition in terms of joins. The key strategy behind our new calculation of the Brunerie number is to rephrase homotopy groups in terms of maps out of joins of spheres. {defi} Given a pointed type A๐ดAitalic_A, we define ฯ€n+m+1โˆ—โข(A):=โˆฅโข\sphereโขnโข*โข\sphereโขmโ†’โ‹†Aโขโˆฅ0assignsuperscriptsubscript๐œ‹๐‘›๐‘š1๐ดโˆฅ\sphere๐‘›*\sphere๐‘šsubscriptโ†’โ‹†๐ดsubscriptโˆฅ0{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n+m+1}^{*}(A):={\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}\,{\sphere{n% }}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{m}}\to_{\star}A% \,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}_{0}italic_ฯ€ start_POSTSUBSCRIPT italic_n + italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ( italic_A ) := โˆฅ italic_n * italic_m โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_A โˆฅ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT. Clearly, this is equivalent to the usual definition of ฯ€n+m+1โข(A)subscript๐œ‹๐‘›๐‘š1๐ด{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n+m+1}(A)italic_ฯ€ start_POSTSUBSCRIPT italic_n + italic_m + 1 end_POSTSUBSCRIPT ( italic_A ) via pre-composition by Fn,msubscriptF๐‘›๐‘š{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}_{n,m}F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT. However, ฯ€n+m+1โˆ—โข(A)superscriptsubscript๐œ‹๐‘›๐‘š1๐ด{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n+m+1}^{*}(A)italic_ฯ€ start_POSTSUBSCRIPT italic_n + italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ( italic_A ) can be endowed with an explicit group structure which Fn,msubscriptF๐‘›๐‘š{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}_{n,m}F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT turns out to respect. In order to construct the group structure on ฯ€n+m+1โˆ—โข(A)subscriptsuperscript๐œ‹๐‘›๐‘š1๐ด{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}^{*}_{n+m+1}(A)italic_ฯ€ start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_n + italic_m + 1 end_POSTSUBSCRIPT ( italic_A ), let us construct a map โ„“:Aร—Bโ†’ฮฉโข(Aโข*โขB):โ„“โ†’๐ด๐ตฮฉ๐ด*๐ต{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\ell$}}:A\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\times$}}\,B\to{\color[rgb]% {0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% $\Omega$}}\,{({A\,}{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{B})}roman_โ„“ : italic_A ร— italic_B โ†’ roman_ฮฉ ( italic_A * italic_B ) for all pointed types A๐ดAitalic_A and B๐ตBitalic_B. Recall, we take Aโข*โขB๐ด*๐ต{A\,}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{B}italic_A * italic_B to be pointed by ๐—‚๐—‡๐—…โ‹†A{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inl}$}}}\,{\star_{A}}sansserif_inl โ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT. We define โ„“โ„“\ellroman_โ„“ by:

โ„“(a,b):=๐—‰๐—Ž๐—Œ๐—(โ‹†A,โ‹†B)โ‹…๐—‰๐—Ž๐—Œ๐—(a,โ‹†B)โˆ’1โ‹…๐—‰๐—Ž๐—Œ๐—(a,b)โ‹…๐—‰๐—Ž๐—Œ๐—(โ‹†A,b)โˆ’1{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\ell$}}(a\,{{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}\,b):={{\color% [rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}% \textsf{$\mathsf{push}$}}}\,{(\star_{A}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,\star_{B})}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(a\,{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{,}$}}}\,\star_{B})}^{{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-1$}}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \cdot$}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(a\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,b)}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cdot$}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(\star_{A}\,{% {\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{,}$}}}\,b)}^{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-1$}}}roman_โ„“ ( italic_a , italic_b ) := sansserif_push ( โ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT , โ‹† start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT ) โ‹… sansserif_push ( italic_a , โ‹† start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โ‹… sansserif_push ( italic_a , italic_b ) โ‹… sansserif_push ( โ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT , italic_b ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT

Note that โ„“โ„“\ellroman_โ„“ is pointed in both arguments. Let us also define explicitly (once and for all) a pointed version of cong taking a pointed functions f:Aโ†’โ‹†B:๐‘“subscriptโ†’โ‹†๐ด๐ตf:A\to_{\star}Bitalic_f : italic_A โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_B to a pointed function congโ‹†โขf:ฮฉโขAโ†’โ‹†ฮฉโขB:subscriptcongโ‹†๐‘“subscriptโ†’โ‹†ฮฉ๐ดฮฉ๐ต{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\text{cong}_{\star}$}}\,f:{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}\,{A}% \to_{\star}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{$\Omega$}}\,{B}cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_f : roman_ฮฉ italic_A โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT roman_ฮฉ italic_B. We define it by

congโ‹†fp:=โ‹†fโˆ’1โ‹…congfpโ‹…โ‹†f{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\text{cong}_{\star}$}}\,{f}\,{p}:=\star_{f}^{{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$-1$}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{f}\;{p% }\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cdot$}}\,\star_{f}cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_f italic_p := โ‹† start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โ‹… cong italic_f italic_p โ‹… โ‹† start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT

where, recall, โ‹†f:fโ‹†Aโ‰กโ‹†B\star_{f}:f\,\star_{A}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,\star_{B}โ‹† start_POSTSUBSCRIPT italic_f end_POSTSUBSCRIPT : italic_f โ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT โ‰ก โ‹† start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT. In other words, congโ‹†subscriptcongโ‹†\text{cong}_{\star}cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT is the functorial action of ฮฉฮฉ\Omegaroman_ฮฉ.

We can now add two functions f๐‘“fitalic_f and g๐‘”gitalic_g of type Aโข*โขBโ†’โ‹†Csubscriptโ†’โ‹†๐ด*๐ต๐ถ{A\,}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{B}\to_{\star}Citalic_A * italic_B โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_C by \ExecuteMetaData[agda/latex/background.tex]joinMult We take this function to be pointed by refl. Note that, since โ„“โ„“\ellroman_โ„“ is pointed in both arguments, both cong(f+โˆ—g)(๐—‰๐—Ž๐—Œ๐—(a,โ‹†B)){\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{cong}}\;{(f\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$+^{*}$}}\,g)}\;{({{\color[% rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}% \textsf{$\mathsf{push}$}}}\,{(a\,{{\color[rgb]{0,0.546875,0}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}\,\star_{B})})}cong ( italic_f + start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT italic_g ) ( sansserif_push ( italic_a , โ‹† start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT ) ) and cong(f+โˆ—g)(๐—‰๐—Ž๐—Œ๐—(โ‹†A,b)){\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{cong}}\;{(f\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$+^{*}$}}\,g)}\;{({{\color[% rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}% \textsf{$\mathsf{push}$}}}\,{(\star_{A}\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,b)})}cong ( italic_f + start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT italic_g ) ( sansserif_push ( โ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT , italic_b ) ) vanish. Let us compare this with the addition on the usual definition homotopy groups. In general, we may add any two functions f๐‘“fitalic_f and g๐‘”gitalic_g of type SuspAโ†’โ‹†Bsubscriptโ†’โ‹†SuspA๐ต\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{Susp}}{$\,A$}}\to_{\star}BSusp italic_A โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_B by \ExecuteMetaData[agda/latex/background.tex]suspMult This is precisely the construction used to define the group structure on ฯ€nsubscript๐œ‹๐‘›{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n}italic_ฯ€ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT whenever n>0๐‘›0n>0italic_n > 0. Note that, by construction, we have cong(f+Suspg)(๐—†๐–พ๐—‹๐—‚๐–ฝโ‹†A)โ‰กrefl{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{cong}}\;{(f\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$+^{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{{% Susp}}}}$}}\,g)}\;{({{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{merid}$}}}\;{\star_{A}})}\,% {\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{refl}}cong ( italic_f + start_POSTSUPERSCRIPT Susp end_POSTSUPERSCRIPT italic_g ) ( sansserif_merid โ‹† start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT ) โ‰ก refl.

Proposition 35.

Given f,g:\sphereโขn+m+1โ†’โ‹†A:๐‘“๐‘”subscriptโ†’โ‹†\sphere๐‘›๐‘š1๐ดf,g:\sphere{n+m+1}\to_{\star}Aitalic_f , italic_g : italic_n + italic_m + 1 โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_A, we have

(f+Suspg)โˆ˜Fn,mโ‰ก(fโˆ˜Fn,m)+โˆ—(gโˆ˜Fn,m)superscriptSusp๐‘“๐‘”subscriptF๐‘›๐‘šsuperscript๐‘“subscriptF๐‘›๐‘š๐‘”subscriptF๐‘›๐‘š(f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$+^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{{Susp}}}}$}}\,g)\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \circ$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}_{n,m}\,{\color[rgb]{0,0,0.8046875}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,(f\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \circ$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}_{n,m}){\color[rgb]{0,0,0.8046875}\definecolor[named]% {pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$+^{*}$}}(g\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \circ$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}_{n,m})( italic_f + start_POSTSUPERSCRIPT Susp end_POSTSUPERSCRIPT italic_g ) โˆ˜ F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT โ‰ก ( italic_f โˆ˜ F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT ) + start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ( italic_g โˆ˜ F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT )
Proof 6.5.

The two functions agree on inlinl\mathsf{inl}sansserif_inl and inrinr\mathsf{inr}sansserif_inr by refl. Let us consider the action on ๐—‰๐—Ž๐—Œ๐—โข(xโข,โขy)๐—‰๐—Ž๐—Œ๐—๐‘ฅ,๐‘ฆ{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{push}$}}}(x\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,y)sansserif_push ( italic_x , italic_y ). We have

congโข((f+Suspg)โˆ˜Fn,m)โข(๐—‰๐—Ž๐—Œ๐—โข(xโข,โขy))congsuperscriptSusp๐‘“๐‘”subscriptF๐‘›๐‘š๐—‰๐—Ž๐—Œ๐—๐‘ฅ,๐‘ฆ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{cong}}\;{((f\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$+^{{\color[rgb% ]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf% {{Susp}}}}$}}\,g)\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\circ$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{{% F}}}_{n,m})}\;{({{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(x\,{{\color[rgb]{0,0.546875,0% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,y)})}\,cong ( ( italic_f + start_POSTSUPERSCRIPT Susp end_POSTSUPERSCRIPT italic_g ) โˆ˜ F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT ) ( sansserif_push ( italic_x , italic_y ) ) :=congโข(f+Suspg)โข(ฯƒโข(xโŒฃy))assignabsentcongsuperscriptSusp๐‘“๐‘”๐œŽโŒฃ๐‘ฅ๐‘ฆ\displaystyle{:=}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{(f\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% +^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{{Susp}}}}$}}\,g)}\;{({\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}({x}% \;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}\;{y}))}:= cong ( italic_f + start_POSTSUPERSCRIPT Susp end_POSTSUPERSCRIPT italic_g ) ( italic_ฯƒ ( italic_x โŒฃ italic_y ) )
โ‰กcongโข(f+Suspg)โข(๐—†๐–พ๐—‹๐—‚๐–ฝโข(xโŒฃy))absentcongsuperscriptSusp๐‘“๐‘”๐—†๐–พ๐—‹๐—‚๐–ฝโŒฃ๐‘ฅ๐‘ฆ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{(f\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% +^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{{Susp}}}}$}}\,g)}\;{({{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{merid}$% }}}\;{({x}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{$\smile$}}\;{y})})}โ‰ก cong ( italic_f + start_POSTSUPERSCRIPT Susp end_POSTSUPERSCRIPT italic_g ) ( sansserif_merid ( italic_x โŒฃ italic_y ) )
โ‹…congโข(f+Suspg)โข(๐—†๐–พ๐—‹๐—‚๐–ฝโข๐—‡๐—ˆ๐—‹๐—๐—)โˆ’1โ‹…absentcongsuperscriptSusp๐‘“๐‘”superscript๐—†๐–พ๐—‹๐—‚๐–ฝ๐—‡๐—ˆ๐—‹๐—๐—1\displaystyle\phantom{.}{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% cong}}\;{(f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$+^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{{Susp}}}}$}}\,g)}\;{({{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{merid}$}}}\;{{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{north}$}}}})}^{{\color[rgb]% {0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% $-1$}}}โ‹… cong ( italic_f + start_POSTSUPERSCRIPT Susp end_POSTSUPERSCRIPT italic_g ) ( sansserif_merid sansserif_north ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT
โ‰กcongโข(f+Suspg)โข(๐—†๐–พ๐—‹๐—‚๐–ฝโข(xโŒฃy))absentcongsuperscriptSusp๐‘“๐‘”๐—†๐–พ๐—‹๐—‚๐–ฝโŒฃ๐‘ฅ๐‘ฆ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{(f\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% +^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{{Susp}}}}$}}\,g)}\;{({{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{merid}$% }}}\;{({x}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{$\smile$}}\;{y})})}โ‰ก cong ( italic_f + start_POSTSUPERSCRIPT Susp end_POSTSUPERSCRIPT italic_g ) ( sansserif_merid ( italic_x โŒฃ italic_y ) )

which, by definition, unfolds to

congโ‹†โขfโข(ฯƒโข(xโŒฃy))โ‹…congโ‹†โขgโข(ฯƒโข(xโŒฃy))โ‹…subscriptcongโ‹†๐‘“๐œŽโŒฃ๐‘ฅ๐‘ฆsubscriptcongโ‹†๐‘”๐œŽโŒฃ๐‘ฅ๐‘ฆ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\text{cong}_{\star}$}}\,{f}\,{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \sigma$}}({x}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{y}))}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\text{cong}_{\star}$}}\,{g}\,{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \sigma$}}({x}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{y}))}cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_f ( italic_ฯƒ ( italic_x โŒฃ italic_y ) ) โ‹… cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_g ( italic_ฯƒ ( italic_x โŒฃ italic_y ) ) (1)

On the other hand, congโข((fโˆ˜Fn,m)+โˆ—(gโˆ˜Fn,m))โข(๐—‰๐—Ž๐—Œ๐—โข(xโข,โขy))congsuperscript๐‘“subscriptF๐‘›๐‘š๐‘”subscriptF๐‘›๐‘š๐—‰๐—Ž๐—Œ๐—๐‘ฅ,๐‘ฆ{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{cong}}\;{((f\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\circ$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F% }}_{n,m}){\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$+^{*}$}}(g\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\circ$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F% }}_{n,m}))}\;{({{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(x\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,y)})}cong ( ( italic_f โˆ˜ F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT ) + start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ( italic_g โˆ˜ F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT ) ) ( sansserif_push ( italic_x , italic_y ) ) unfolds to

congโ‹†โขfโข(congโขFn,mโข(โ„“โข(xโข,โขy)))โ‹…congโ‹†โขgโข(congโขFn,mโข(โ„“โข(xโข,โขy)))โ‹…subscriptcongโ‹†๐‘“congsubscriptF๐‘›๐‘šโ„“๐‘ฅ,๐‘ฆsubscriptcongโ‹†๐‘”congsubscriptF๐‘›๐‘šโ„“๐‘ฅ,๐‘ฆ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\text{cong}_{\star}$}}\,{f}\,{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% cong}}\;{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}_{n,m}}\;{({\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\ell$}}(x\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{,}$}}}\,y))})}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \text{cong}_{\star}$}}\,{g}\,{({\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{0,0,0.8046875% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F}}_{n,m}}\;{(% {\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\ell$}}(x\,{{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}\,y))})}cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_f ( cong F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT ( roman_โ„“ ( italic_x , italic_y ) ) ) โ‹… cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_g ( cong F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT ( roman_โ„“ ( italic_x , italic_y ) ) ) (2)

Hence, comparing (1) and (2), we see that it is enough to show that

congโขFn,mโข(โ„“โข(xโข,โขy))โ‰กฯƒโข(xโŒฃy)congsubscriptF๐‘›๐‘šโ„“๐‘ฅ,๐‘ฆ๐œŽโŒฃ๐‘ฅ๐‘ฆ{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F}}_{n,m}}\;{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \ell$}}(x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0.546875,0}\textsf{$\mathsf{,}$}}}\,y))}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}(x\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\,y)cong F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT ( roman_โ„“ ( italic_x , italic_y ) ) โ‰ก italic_ฯƒ ( italic_x โŒฃ italic_y )

Unfolding โ„“โ„“\ellroman_โ„“, we get

congโขFn,mโข(โ„“โข(xโข,โขy))congsubscriptF๐‘›๐‘šโ„“๐‘ฅ,๐‘ฆ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F}}_{n,m}}\;{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \ell$}}(x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0.546875,0}\textsf{$\mathsf{,}$}}}\,y))}\,cong F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT ( roman_โ„“ ( italic_x , italic_y ) ) โ‰กฯƒ(โ‹†\sphereโขnโŒฃโ‹†\sphereโขm)โ‹…ฯƒ(xโŒฃโ‹†\sphereโขm)โˆ’1โ‹…ฯƒ(xโŒฃy)โ‹…ฯƒ(โ‹†\sphereโขnโŒฃy)โˆ’1\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}({\star_{\sphere{% n}}}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}\;{\star_{\sphere{m}}})\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \cdot$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}({x}\;{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{\star_{\sphere{% m}}})^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$-1$}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \sigma$}}({x}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{y})\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}({\star_{\sphere{n}}}\;{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \smile$}}\;{y})^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0,0.8046875}\textsf{$-1$}}}โ‰ก italic_ฯƒ ( โ‹† start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT โŒฃ โ‹† start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) โ‹… italic_ฯƒ ( italic_x โŒฃ โ‹† start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โ‹… italic_ฯƒ ( italic_x โŒฃ italic_y ) โ‹… italic_ฯƒ ( โ‹† start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT โŒฃ italic_y ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT
โ‰กฯƒโข๐—‡๐—ˆ๐—‹๐—๐—โ‹…ฯƒโข๐—‡๐—ˆ๐—‹๐—๐—โˆ’1โ‹…ฯƒโข(xโŒฃy)โ‹…ฯƒโข๐—‡๐—ˆ๐—‹๐—๐—โˆ’1absentโ‹…โ‹…โ‹…๐œŽ๐—‡๐—ˆ๐—‹๐—๐—๐œŽsuperscript๐—‡๐—ˆ๐—‹๐—๐—1๐œŽโŒฃ๐‘ฅ๐‘ฆ๐œŽsuperscript๐—‡๐—ˆ๐—‹๐—๐—1\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{north}$}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \sigma$}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0.546875,0}\textsf{$\mathsf{north}$}}}^{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-1$}}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}({x}\;{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \smile$}}\;{y})\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}\,{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{north}$}}}^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-1$}}}โ‰ก italic_ฯƒ sansserif_north โ‹… italic_ฯƒ sansserif_north start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โ‹… italic_ฯƒ ( italic_x โŒฃ italic_y ) โ‹… italic_ฯƒ sansserif_north start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT
โ‰กฯƒโข(xโŒฃy)absent๐œŽโŒฃ๐‘ฅ๐‘ฆ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}({x}\;{\color[rgb% ]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf% {$\smile$}}\;{y})โ‰ก italic_ฯƒ ( italic_x โŒฃ italic_y )
Proposition 36.

For any pointed type A๐ดAitalic_A, the set ฯ€n+m+1โˆ—โข(A)superscriptsubscript๐œ‹๐‘›๐‘š1๐ด{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n+m+1}^{*}(A)italic_ฯ€ start_POSTSUBSCRIPT italic_n + italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ( italic_A ) is a group with group structure induced by +โˆ—superscript+^{*}+ start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT. Furthermore, pre-composition (Fn,m)โˆ—:ฯ€n+m+1โข(A)โ†’ฯ€n+m+1โˆ—โข(A):superscriptsubscriptF๐‘›๐‘šโ†’subscript๐œ‹๐‘›๐‘š1๐ดsuperscriptsubscript๐œ‹๐‘›๐‘š1๐ด({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}_{n,m})^{*}:{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}_{n+m+1}(A)\to{\color% [rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\pi$}}_{n+m+1}^{*}(A)( F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT : italic_ฯ€ start_POSTSUBSCRIPT italic_n + italic_m + 1 end_POSTSUBSCRIPT ( italic_A ) โ†’ italic_ฯ€ start_POSTSUBSCRIPT italic_n + italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ( italic_A ) is an isomorphism.

Proof 6.6.

We know that (Fn,m)โˆ—superscriptsubscriptF๐‘›๐‘š({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}_{n,m})^{*}( F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT is an equivalence of types. By 35 and the Structure Identity Principleย [Uni13, Section 9.8], it induces a path

(ฯ€n+m+1โข(A),+Susp)โ‰ก(ฯ€n+m+1โˆ—โข(A),+โˆ—)subscript๐œ‹๐‘›๐‘š1๐ดsuperscriptSuspsubscriptsuperscript๐œ‹๐‘›๐‘š1๐ดsuperscript({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n+m+1}(A),{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$+^{{\color[rgb% ]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf% {{Susp}}}}$}})\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,({\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}^{*}_{n+% m+1}(A),{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$+^{*}$}})( italic_ฯ€ start_POSTSUBSCRIPT italic_n + italic_m + 1 end_POSTSUBSCRIPT ( italic_A ) , + start_POSTSUPERSCRIPT Susp end_POSTSUPERSCRIPT ) โ‰ก ( italic_ฯ€ start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_n + italic_m + 1 end_POSTSUBSCRIPT ( italic_A ) , + start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT )

of raw monoids (i.e.ย elements of type ฮฃA:Typeโข(Aร—Aโ†’A)subscriptฮฃ:๐ดTypeโ†’๐ด๐ด๐ด\Sigma_{A:\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{Type}}}}(A\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\times$}}\,A% \to A)roman_ฮฃ start_POSTSUBSCRIPT italic_A : Type end_POSTSUBSCRIPT ( italic_A ร— italic_A โ†’ italic_A )). Since the the left-hand side of this equality can be extended to form a group, so can the right-hand side. This is precisely what we set out to show.

The following result follows in exactly the same manner.

Proposition 37.

ฯ€n+m+1โˆ—superscriptsubscript๐œ‹๐‘›๐‘š1{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n+m+1}^{*}italic_ฯ€ start_POSTSUBSCRIPT italic_n + italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT is functorial with its action on maps being defined by post-composition.

6.3. The new synthetic proof that ฯ€4โข(\sphereโข3)โ‰…โ„ค/2โขโ„คsubscript๐œ‹4\sphere3โ„ค2โ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}}/2{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) โ‰… โ„ค / 2 โ„ค

Let us now return to the new proof. We will use โŒฃโŒฃ\smileโŒฃ from above in dimensions \sphereโข1ร—\sphereโข1โ†’\sphereโข2โ†’\sphere1\sphere1\sphere2\sphere{1}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{$\times$}}\,\sphere{1}\to\sphere{2}1 ร— 1 โ†’ 2. We remark that, byย 33, it is anti-commutative in these dimensions. In order to make the following constructions somewhat more direct, let us return to the ๐–ป๐–บ๐—Œ๐–พ/๐—…๐—ˆ๐—ˆ๐—‰๐–ป๐–บ๐—Œ๐–พ๐—…๐—ˆ๐—ˆ๐—‰{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{base}$}}}/{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{loop}$}}}sansserif_base / sansserif_loop definition of \sphereโข1\sphere1\sphere{1}1. Under the equivalence, Suspย Boolโ‰ƒ\sphereโข1similar-to-or-equalsSuspย Bool\sphere1\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{Susp}}{$\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{Bool}}$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \simeq$}}\,\sphere{1}Susp sansserif_Bool โ‰ƒ 1, the multiplication is described by \ExecuteMetaData[agda/latex/background.tex]circprod In addition to anti-commutativity and associativity, we have the following distributivity-like fact about โŒฃโŒฃ\smileโŒฃ:

Lemma 38.

For x,y:\sphereโข1:๐‘ฅ๐‘ฆ\sphere1x,y:\sphere{1}italic_x , italic_y : 1, we have xโŒฃ(xโข+โขy)โ‰กxโŒฃyโŒฃ๐‘ฅ๐‘ฅ+๐‘ฆ๐‘ฅโŒฃ๐‘ฆ{x}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\smile$}}\;{(x\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{+}}\,y)}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \equiv$}}\,{{x}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{y}}italic_x โŒฃ ( italic_x + italic_y ) โ‰ก italic_x โŒฃ italic_y

Proof 6.7.

We proceed by \sphereโข1\sphere1\sphere{1}1-induction on x๐‘ฅxitalic_x. The equality ๐–ป๐–บ๐—Œ๐–พโŒฃ(๐–ป๐–บ๐—Œ๐–พโข+โขy)โ‰ก๐–ป๐–บ๐—Œ๐–พโŒฃyโŒฃ๐–ป๐–บ๐—Œ๐–พ๐–ป๐–บ๐—Œ๐–พ+๐‘ฆ๐–ป๐–บ๐—Œ๐–พโŒฃ๐‘ฆ{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{base}$}}}}\;{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{({% {\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{base}$}}}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{+}}\,y)}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\equiv$}}\,{{{{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{base}$}}}}\;{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\smile$}}\;{y}}sansserif_base โŒฃ ( sansserif_base + italic_y ) โ‰ก sansserif_base โŒฃ italic_y holds by refl, so we are left to verify the equality

congโข(xโ†ฆxโŒฃ(xโข+โขy))โข๐—…๐—ˆ๐—ˆ๐—‰โ‰กฯƒโขycongmaps-to๐‘ฅ๐‘ฅโŒฃ๐‘ฅ+๐‘ฆ๐—…๐—ˆ๐—ˆ๐—‰๐œŽ๐‘ฆ{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{cong}}\;{(x\mapsto{x}\;{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{(x% \,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{+}}\,y)})}\;{{{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{loop}$}}}}\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}\,ycong ( italic_x โ†ฆ italic_x โŒฃ ( italic_x + italic_y ) ) sansserif_loop โ‰ก italic_ฯƒ italic_y

Simplifying the left-hand side using functoriality of binary congย [LM24, Definition 1], we get

congโข(xโ†ฆxโŒฃ(xโข+โขy))โข๐—…๐—ˆ๐—ˆ๐—‰congmaps-to๐‘ฅ๐‘ฅโŒฃ๐‘ฅ+๐‘ฆ๐—…๐—ˆ๐—ˆ๐—‰\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{cong}}\;{(x\mapsto{x}\;{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{(x% \,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{+}}\,y)})}\;{{{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{loop}$}}}}\,cong ( italic_x โ†ฆ italic_x โŒฃ ( italic_x + italic_y ) ) sansserif_loop โ‰กcongโข(xโ†ฆ๐—‡๐—ˆ๐—‹๐—๐—โŒฃ(xโข+โขy))โข๐—…๐—ˆ๐—ˆ๐—‰absentcongmaps-to๐‘ฅ๐—‡๐—ˆ๐—‹๐—๐—โŒฃ๐‘ฅ+๐‘ฆ๐—…๐—ˆ๐—ˆ๐—‰\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{(x\mapsto{{{\color% [rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}% \textsf{$\mathsf{north}$}}}}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{(x\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{+% }}\,y)})}\;{{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0.546875,0}\textsf{$\mathsf{loop}$}}}}โ‰ก cong ( italic_x โ†ฆ sansserif_north โŒฃ ( italic_x + italic_y ) ) sansserif_loop
โ‹…congโข(xโ†ฆxโŒฃ(๐—‡๐—ˆ๐—‹๐—๐—โข+โขy))โข๐—…๐—ˆ๐—ˆ๐—‰โ‹…absentcongmaps-to๐‘ฅ๐‘ฅโŒฃ๐—‡๐—ˆ๐—‹๐—๐—+๐‘ฆ๐—…๐—ˆ๐—ˆ๐—‰\displaystyle\phantom{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\!\!}{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \cdot$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{cong}}\;{(x\mapsto{x}\;{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{({% {\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{north}$}}}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{+}}\,y)})}\;{{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{loop}$}}}}โ‹… cong ( italic_x โ†ฆ italic_x โŒฃ ( sansserif_north + italic_y ) ) sansserif_loop
:=reflโ‹…ฯƒโขyโ‰กฯƒโขyassignabsentโ‹…refl๐œŽ๐‘ฆ๐œŽ๐‘ฆ\displaystyle:=\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0,0.8046875}\textsf{refl}}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \sigma$}}\,y\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}\,y:= refl โ‹… italic_ฯƒ italic_y โ‰ก italic_ฯƒ italic_y

We now redefine ฯ€3โข(\sphereโข2)โ‰…โ„คsubscript๐œ‹3\sphere2โ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}{(\sphere{2})}}\,\,{\color[rgb]{0,0,0.8046875% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{% {\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ‰… โ„ค via the following decomposition, primarily defined in terms of post- and pre-composition with F1,1:\sphereโข1โข*โข\sphereโข1โ‰…\sphereโข3:subscriptF11\sphere1*\sphere1\sphere3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}_{1,1}:{\sphere{1}}{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{\text{% \textasteriskcentered}}}\,{\sphere{1}}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,% \sphere{3}F start_POSTSUBSCRIPT 1 , 1 end_POSTSUBSCRIPT : 1 * 1 โ‰… 3 and its inverse. In what follows, let us simply write F:=F1,1assignFsubscriptF11{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}:={\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F}}_{1,1}F := F start_POSTSUBSCRIPT 1 , 1 end_POSTSUBSCRIPT and ฯ€3โˆ—โข(A):=ฯ€1+1+1โˆ—โข(A):=โˆฅโข\sphereโข1โข*โข\sphereโข1โ†’โ‹†Aโขโˆฅ0assignsuperscriptsubscript๐œ‹3๐ดsuperscriptsubscript๐œ‹111๐ดassignโˆฅ\sphere1*\sphere1subscriptโ†’โ‹†๐ดsubscriptโˆฅ0{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}^{*}(A):={\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}_{1+1+1}% ^{*}(A):={\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โˆฅ}}\,{\sphere{1}}{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered% }}}\,{\sphere{1}}\to_{\star}A\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โˆฅ}}_{0}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ( italic_A ) := italic_ฯ€ start_POSTSUBSCRIPT 1 + 1 + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ( italic_A ) := โˆฅ 1 * 1 โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_A โˆฅ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT. We also remind the reader of the map h:\sphereโข1โข*โข\sphereโข1โ†’\sphereโข2:hโ†’\sphere1*\sphere1\sphere2{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{h}}:{\sphere{1}}{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered}% }}\,{\sphere{1}}\to\sphere{2}h : 1 * 1 โ†’ 2 from 2 for which hโˆ—subscripth{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{h}}_{*}h start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT is an isomorphismโ€“this follows fromย 8. {defi} Let ฮธ:ฯ€3โข(\sphereโข2)โ‰…โ„ค:๐œƒsubscript๐œ‹3\sphere2โ„ค\theta:{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}{(\sphere{2})}}\,\,{\color[rgb]{0,0,0.8046875% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{% {\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}}italic_ฮธ : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ‰… โ„ค be defined by the following sequence of isomorphisms

ฯ€3โข(\sphereโข2)subscript๐œ‹3\sphere2{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 )ฯ€3โˆ—โข(\sphereโข2)subscriptsuperscript๐œ‹3\sphere2{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}^{*}_{3}(\sphere{2})}italic_ฯ€ start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 )ฯ€3โˆ—โข(\sphereโข1โข*โข\sphereโข1)subscriptsuperscript๐œ‹3\sphere1*\sphere1{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}^{*}_{3}({\sphere{1}}{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{\text{% \textasteriskcentered}}}\,{\sphere{1}})}italic_ฯ€ start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 1 * 1 )ฯ€3โˆ—โข(\sphereโข3)subscriptsuperscript๐œ‹3\sphere3{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}^{*}_{3}(\sphere{3})}italic_ฯ€ start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 3 )ฯ€3โข(\sphereโข3)subscript๐œ‹3\sphere3{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{3})}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 3 )โ„คFโˆ—superscriptF\scriptstyle{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{F}}}^{*}}F start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT(hโˆ—)โˆ’1superscriptsubscripth1\scriptstyle{(\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{h}}}_{*})^{-1}}( h start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPTFโˆ—subscriptF\scriptstyle{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{F}}}_{*}}F start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT(Fโˆ’1)โˆ—superscriptsuperscriptF1\scriptstyle{(\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{F}}}^{-1})^{*}}( F start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPTฮพ๐œ‰\scriptstyle{\xi}italic_ฮพ

where the last map can be chosen to be any reasonable description of the isomorphism ฮพ:ฯ€3โข(\sphereโข3)โ‰…โ„ค:๐œ‰subscript๐œ‹3\sphere3โ„ค\xi:{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{3})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}}italic_ฮพ : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 3 ) โ‰… โ„ค sending i3subscript๐‘–3i_{3}italic_i start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT to 1111.

The goal is to trace the image of [i2,i2]:ฯ€3โข(\sphereโข2):subscript๐‘–2subscript๐‘–2subscript๐œ‹3\sphere2[i_{2},i_{2}]:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})[ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ] : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) under ฮธ๐œƒ\thetaitalic_ฮธ. Let us define the following three underlying functions of elements ฮท1:ฯ€3โˆ—โข(\sphereโข2):subscript๐œ‚1subscriptsuperscript๐œ‹3\sphere2{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\eta$}}_{1}:{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}^{*}_{3}(\sphere{2})italic_ฮท start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT : italic_ฯ€ start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ), ฮท2:ฯ€3โˆ—โข(\sphereโข1โข*โข\sphereโข1):subscript๐œ‚2subscriptsuperscript๐œ‹3\sphere1*\sphere1{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\eta$}}_{2}:{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}^{*}_{3}({\sphere{1}}% {\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{1}})italic_ฮท start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT : italic_ฯ€ start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 1 * 1 ) and ฮท3:ฯ€3โˆ—โข(\sphereโข3):subscript๐œ‚3subscriptsuperscript๐œ‹3\sphere3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\eta$}}_{3}:{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}^{*}_{3}(\sphere{3})italic_ฮท start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT : italic_ฯ€ start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 3 ): \ExecuteMetaData[agda/latex/background.tex]eta1 \ExecuteMetaData[agda/latex/background.tex]eta2 \ExecuteMetaData[agda/latex/background.tex]eta3

The claim is now that the image of [i2,i2]subscript๐‘–2subscript๐‘–2[i_{2},i_{2}][ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ] under the chain of isomorphisms can be described as follows:

[i2,i2]subscript๐‘–2subscript๐‘–2{[i_{2},i_{2}]}[ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ]ฮท1subscript๐œ‚1{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\eta$}}_{1}}italic_ฮท start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPTฮท2subscript๐œ‚2{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\eta$}}_{2}}italic_ฮท start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPTฮท3subscript๐œ‚3{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\eta$}}_{3}}italic_ฮท start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT(โˆ’2)โขi32subscript๐‘–3{(-2)i_{3}}( - 2 ) italic_i start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPTยฑ2plus-or-minus2{\pm 2}ยฑ 2Fโˆ—superscriptF\scriptstyle{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{F}}^{*}}F start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT(hโˆ—)โˆ’1superscriptsubscripth1\scriptstyle{({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{h}}_{*})^{-1}}( h start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPTFโˆ—subscriptF\scriptstyle{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{F}}_{*}}F start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT(Fโˆ’1)โˆ—superscriptsuperscriptF1\scriptstyle{({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{F}}^{-1})^{*}}( F start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPTฮพ๐œ‰\scriptstyle{\xi}italic_ฮพ
Lemma 39.

Fโˆ—โข[i2,i2]โขโ‰กโขฮท1superscriptFsubscript๐‘–2subscript๐‘–2โ‰กsubscript๐œ‚1{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}^{*}\,[i_{2},i_{2}]}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\eta$}}_{1}}F start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT [ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ] โ‰ก italic_ฮท start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT

Proof 6.8.

The definition of ฮท1subscript๐œ‚1{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\eta$}}_{1}italic_ฮท start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT matches that of โˆฃโขโˆ‡โˆ˜Wโขโˆฃ:ฯ€3โˆ—โข(\sphereโข2):โˆฃโˆ‡Wโˆฃsuperscriptsubscript๐œ‹3\sphere2{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\nabla$}}\circ{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{W% }}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}:{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}_{3}^{*}(\sphere{2})โˆฃ โˆ‡ โˆ˜ W โˆฃ : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ( 2 ), and so the statement holds by construction of the Whitehead product.

Lemma 40.

(hโˆ—)โˆ’1โขฮท1โขโ‰กโขฮท2superscriptsubscripth1subscript๐œ‚1โ‰กsubscript๐œ‚2{({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{h}}_{*})^{-1}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\eta$}}_{1}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก% }}\,{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\eta$}}_{2}}( h start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT italic_ฮท start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT โ‰ก italic_ฮท start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT

Proof 6.9.

Applying hโˆ—subscripth{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{h}}_{*}h start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT on both sides gives the equation ฮท1โขโ‰กโขhโˆ—โขฮท2subscript๐œ‚1โ‰กsubscripthsubscript๐œ‚2{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\eta$}}_{1}}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก}}\,{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{h% }}_{*}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\eta$}}_{2}}italic_ฮท start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT โ‰ก h start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT italic_ฮท start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. Thus, we are done if we can show that ฮท1-funโขaโ‰กhโข(ฮท2-funโขa)ฮท1-fun๐‘Žhฮท2-fun๐‘Ž\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{$\eta_{1}$-fun}}}\,a\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{h% }}\,(\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0,0.8046875}{$\eta_{2}$-fun}}}\,a)italic_ฮท start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT sansserif_-fun italic_a โ‰ก h ( italic_ฮท start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT sansserif_-fun italic_a ) for a:\sphereโข1โข*โข\sphereโข1:๐‘Ž\sphere1*\sphere1a:{\sphere{1}}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{1}}italic_a : 1 * 1. We do it by induction on a๐‘Žaitalic_a. When a๐‘Žaitalic_a is ๐—‚๐—‡๐—…โขx๐—‚๐—‡๐—…๐‘ฅ{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inl}$}}}\,{x}sansserif_inl italic_x or ๐—‚๐—‡๐—‹โขy๐—‚๐—‡๐—‹๐‘ฆ{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inr}$}}}\,{y}sansserif_inr italic_y, the equality holds by refl. Thus, it remains to show that

congโขฮท1-funโข(๐—‰๐—Ž๐—Œ๐—โข(xโข,โขy))โ‰กcongโข(hโˆ˜ฮท2-fun)โข(๐—‰๐—Ž๐—Œ๐—โข(xโข,โขy))congฮท1-fun๐—‰๐—Ž๐—Œ๐—๐‘ฅ,๐‘ฆconghฮท2-fun๐—‰๐—Ž๐—Œ๐—๐‘ฅ,๐‘ฆ{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{cong}}\;{\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{$\eta_{1}$-fun}}}}\;{(% {{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(x\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,y)})}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{h% }}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\circ$}}\,\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{$\eta_{2}$-fun}}})}\;{% ({{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(x\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,y)})}cong italic_ฮท start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT sansserif_-fun ( sansserif_push ( italic_x , italic_y ) ) โ‰ก cong ( h โˆ˜ italic_ฮท start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT sansserif_-fun ) ( sansserif_push ( italic_x , italic_y ) )

We show the identity by unfolding the right-hand side:

congโข(hโˆ˜ฮท2-fun)โข(๐—‰๐—Ž๐—Œ๐—โข(xโข,โขy))conghฮท2-fun๐—‰๐—Ž๐—Œ๐—๐‘ฅ,๐‘ฆ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{cong}}\;{({\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{h}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \circ$}}\,\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{$\eta_{2}$-fun}}})}\;{({{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{push}$}}}\,{(x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}\,y)})}\,cong ( h โˆ˜ italic_ฮท start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT sansserif_-fun ) ( sansserif_push ( italic_x , italic_y ) ) :=congโขhโข(๐—‰๐—Ž๐—Œ๐—โข(yโˆ’xโข,โˆ’x)โˆ’1โ‹…๐—‰๐—Ž๐—Œ๐—โข(yโˆ’xโข,โขy))assignabsentconghโ‹…๐—‰๐—Ž๐—Œ๐—superscript๐‘ฆ๐‘ฅ,๐‘ฅ1๐—‰๐—Ž๐—Œ๐—๐‘ฆ๐‘ฅ,๐‘ฆ\displaystyle{:=}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{0,0,0.8046875% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{h}}}\;{({{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{push}$}}}\,{(y\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-$}}\,x\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{,}$}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0,0.8046875}\textsf{$-$}}\,x)}^{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-1$}}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cdot$}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(y\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$-$}}\,x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}\,y)})}:= cong h ( sansserif_push ( italic_y - italic_x , - italic_x ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โ‹… sansserif_push ( italic_y - italic_x , italic_y ) )
โ‰กcongโขhโข(๐—‰๐—Ž๐—Œ๐—โข(yโˆ’xโข,โˆ’x))โˆ’1โ‹…congโขhโข(๐—‰๐—Ž๐—Œ๐—โข(yโˆ’xโข,โขy))absentโ‹…conghsuperscript๐—‰๐—Ž๐—Œ๐—๐‘ฆ๐‘ฅ,๐‘ฅ1congh๐—‰๐—Ž๐—Œ๐—๐‘ฆ๐‘ฅ,๐‘ฆ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{h% }}}\;{({{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(y\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-$}}\,x\,{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{,}$}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-$}}\,x)})^{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% -1$}}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{h% }}}\;{({{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(y\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-$}}\,x\,{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{,}$}}}\,y)})}โ‰ก cong h ( sansserif_push ( italic_y - italic_x , - italic_x ) ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โ‹… cong h ( sansserif_push ( italic_y - italic_x , italic_y ) )
:=ฯƒโข((โˆ’x)โˆ’(yโˆ’x))โˆ’1โ‹…ฯƒโข(yโˆ’(yโˆ’x))assignabsentโ‹…๐œŽsuperscript๐‘ฅ๐‘ฆ๐‘ฅ1๐œŽ๐‘ฆ๐‘ฆ๐‘ฅ\displaystyle{:=}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}(({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% -$}}\,x)\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$-$}}\,(y\,{\color[rgb]{0,0,0.8046875}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-$}}\,x))^{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% -1$}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}(y\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% -$}}\,(y\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$-$}}\,x)):= italic_ฯƒ ( ( - italic_x ) - ( italic_y - italic_x ) ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โ‹… italic_ฯƒ ( italic_y - ( italic_y - italic_x ) )
โ‰กฯƒโข(โˆ’y)โˆ’1โ‹…ฯƒโขxabsentโ‹…๐œŽsuperscript๐‘ฆ1๐œŽ๐‘ฅ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% -$}}\,y)^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$-1$}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \sigma$}}\,xโ‰ก italic_ฯƒ ( - italic_y ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โ‹… italic_ฯƒ italic_x
โ‰กฯƒโขyโ‹…ฯƒโขxabsentโ‹…๐œŽ๐‘ฆ๐œŽ๐‘ฅ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}\,y\,{\color[rgb]% {0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% $\cdot$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{$\sigma$}}\,xโ‰ก italic_ฯƒ italic_y โ‹… italic_ฯƒ italic_x
=:congฮท1-fun(๐—‰๐—Ž๐—Œ๐—(x,y))\displaystyle{=:}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{$\eta_{1% }$-fun}}}}\;{({{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(x\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,y)})}= : cong italic_ฮท start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT sansserif_-fun ( sansserif_push ( italic_x , italic_y ) )
Lemma 41.

Fโˆ—โขฮท2โขโ‰กโขฮท3subscriptFsubscript๐œ‚2โ‰กsubscript๐œ‚3{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}_{*}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\eta$}}_{2}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก% }}\,{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\eta$}}_{3}}F start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT italic_ฮท start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT โ‰ก italic_ฮท start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT

Proof 6.10.

The identity follows if we can show that Fโข(ฮท2-funโขa)โ‰กฮท3-funโขaFฮท2-fun๐‘Žฮท3-fun๐‘Ž{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}(\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{$\eta_{2}$-fun}}}\,a)\,{\color[rgb]% {0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% $\equiv$}}\,\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{$\eta_{3}$-fun}}}\,aF ( italic_ฮท start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT sansserif_-fun italic_a ) โ‰ก italic_ฮท start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT sansserif_-fun italic_a for a:\sphereโข1โข*โข\sphereโข1:๐‘Ž\sphere1*\sphere1a:{\sphere{1}}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{1}}italic_a : 1 * 1. Again, the identity holds by refl when a๐‘Žaitalic_a is ๐—‚๐—‡๐—…โขx๐—‚๐—‡๐—…๐‘ฅ{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inl}$}}}\,{x}sansserif_inl italic_x or ๐—‚๐—‡๐—‹โขy๐—‚๐—‡๐—‹๐‘ฆ{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inr}$}}}\,{y}sansserif_inr italic_y. So it remains to show that

congโข(Fโˆ˜ฮท2-fun)โข(๐—‰๐—Ž๐—Œ๐—โข(xโข,โขy))โ‰กcongโขฮท3-funโข(๐—‰๐—Ž๐—Œ๐—โข(xโข,โขy))congFฮท2-fun๐—‰๐—Ž๐—Œ๐—๐‘ฅ,๐‘ฆcongฮท3-fun๐—‰๐—Ž๐—Œ๐—๐‘ฅ,๐‘ฆ{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{cong}}\;{({\color[rgb]{0,0,0.8046875}\definecolor[named]% {pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F}}\,\circ\,\textnormal{{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{$% \eta_{2}$-fun}}})}\;{({{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(x\,{{\color[% rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}% \textsf{$\mathsf{,}$}}}\,y)})}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]% {pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% cong}}\;{\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{$\eta_{3}$-fun}}}}\;{({{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{push}$}}}\,{(x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}\,y)})}cong ( F โˆ˜ italic_ฮท start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT sansserif_-fun ) ( sansserif_push ( italic_x , italic_y ) ) โ‰ก cong italic_ฮท start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT sansserif_-fun ( sansserif_push ( italic_x , italic_y ) )

Just like in the proof ofย 41, we show this simply by unfolding the definitions of the, in this case, left-hand side. We get:

congโข(Fโˆ˜ฮท2-fun)โข(๐—‰๐—Ž๐—Œ๐—โข(xโข,โขy))congFฮท2-fun๐—‰๐—Ž๐—Œ๐—๐‘ฅ,๐‘ฆ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{cong}}\;{({\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \circ$}}\,\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{$\eta_{2}$-fun}}})}\;{({{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{push}$}}}\,{(x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}\,y)})}\,cong ( F โˆ˜ italic_ฮท start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT sansserif_-fun ) ( sansserif_push ( italic_x , italic_y ) ) :=congโขFโข(๐—‰๐—Ž๐—Œ๐—โข(yโˆ’xโข,โˆ’x)โˆ’1โ‹…๐—‰๐—Ž๐—Œ๐—โข(yโˆ’xโข,โขy))assignabsentcongFโ‹…๐—‰๐—Ž๐—Œ๐—superscript๐‘ฆ๐‘ฅ,๐‘ฅ1๐—‰๐—Ž๐—Œ๐—๐‘ฆ๐‘ฅ,๐‘ฆ\displaystyle{:=}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{0,0,0.8046875% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F}}}\;{({{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{push}$}}}\,{(y\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-$}}\,x\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{,}$}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0,0.8046875}\textsf{$-$}}\,x)}^{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-1$}}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cdot$}}\,{{\color[rgb]{0,0.546875,0}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(y\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$-$}}\,x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}\,y)})}:= cong F ( sansserif_push ( italic_y - italic_x , - italic_x ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โ‹… sansserif_push ( italic_y - italic_x , italic_y ) )
โ‰กcongโขFโข(๐—‰๐—Ž๐—Œ๐—โข(yโˆ’xโข,โˆ’x))โˆ’1โ‹…congโขFโข(๐—‰๐—Ž๐—Œ๐—โข(yโˆ’xโข,โขy))absentโ‹…congFsuperscript๐—‰๐—Ž๐—Œ๐—๐‘ฆ๐‘ฅ,๐‘ฅ1congF๐—‰๐—Ž๐—Œ๐—๐‘ฆ๐‘ฅ,๐‘ฆ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F% }}}\;{({{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(y\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-$}}\,x\,{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{,}$}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-$}}\,x)})^{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% -1$}}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F% }}}\;{({{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(y\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-$}}\,x\,{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{,}$}}}\,y)})}โ‰ก cong F ( sansserif_push ( italic_y - italic_x , - italic_x ) ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โ‹… cong F ( sansserif_push ( italic_y - italic_x , italic_y ) )
:=ฯƒโข((yโˆ’x)โŒฃ(โˆ’x))โˆ’1โ‹…ฯƒโข((yโˆ’x)โŒฃy)assignabsentโ‹…๐œŽsuperscriptโŒฃ๐‘ฆ๐‘ฅ๐‘ฅ1๐œŽโŒฃ๐‘ฆ๐‘ฅ๐‘ฆ\displaystyle{:=}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}({(y\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% -$}}\,x)}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{$\smile$}}\;{({\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-$}}\,x)})^{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% -1$}}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}({(y\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% -$}}\,x)}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{$\smile$}}\;{y}):= italic_ฯƒ ( ( italic_y - italic_x ) โŒฃ ( - italic_x ) ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โ‹… italic_ฯƒ ( ( italic_y - italic_x ) โŒฃ italic_y )
โ‰กฯƒโข((โˆ’x)โŒฃ((โˆ’x)+y))โ‹…ฯƒโข(yโŒฃ(yโˆ’x))โˆ’1absentโ‹…๐œŽโŒฃ๐‘ฅ๐‘ฅ๐‘ฆ๐œŽsuperscriptโŒฃ๐‘ฆ๐‘ฆ๐‘ฅ1\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}({({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% -$}}\,x)}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{$\smile$}}\;{(({\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-$}}\,x)\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% +$}}\,y)})\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}({y}\;{\color[rgb]% {0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% $\smile$}}\;{(y\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0,0.8046875}\textsf{$-$}}\,x)})^{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-1$}}}โ‰ก italic_ฯƒ ( ( - italic_x ) โŒฃ ( ( - italic_x ) + italic_y ) ) โ‹… italic_ฯƒ ( italic_y โŒฃ ( italic_y - italic_x ) ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT
โ‰กฯƒโข((โˆ’x)โŒฃy)โ‹…ฯƒโข(yโŒฃ(โˆ’x))โˆ’1absentโ‹…๐œŽโŒฃ๐‘ฅ๐‘ฆ๐œŽsuperscriptโŒฃ๐‘ฆ๐‘ฅ1\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}({({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% -$}}\,x)}\;{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{$\smile$}}\;{y})\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}({y}\;{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% -$}}\,x)})^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{$-1$}}}โ‰ก italic_ฯƒ ( ( - italic_x ) โŒฃ italic_y ) โ‹… italic_ฯƒ ( italic_y โŒฃ ( - italic_x ) ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT
โ‰กฯƒโข(xโŒฃy)โˆ’1โ‹…ฯƒโข(yโŒฃ(โˆ’x))โˆ’1absentโ‹…๐œŽsuperscriptโŒฃ๐‘ฅ๐‘ฆ1๐œŽsuperscriptโŒฃ๐‘ฆ๐‘ฅ1\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}({x}\;{\color[rgb% ]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf% {$\smile$}}\;{y})^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-1$}}}\,{\color[rgb]{0,0,0.8046875% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}({y}\;{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% -$}}\,x)})^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{$-1$}}}โ‰ก italic_ฯƒ ( italic_x โŒฃ italic_y ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โ‹… italic_ฯƒ ( italic_y โŒฃ ( - italic_x ) ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT
โ‰กฯƒโข(xโŒฃy)โˆ’1โ‹…ฯƒโข(xโŒฃy)โˆ’1absentโ‹…๐œŽsuperscriptโŒฃ๐‘ฅ๐‘ฆ1๐œŽsuperscriptโŒฃ๐‘ฅ๐‘ฆ1\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}({x}\;{\color[rgb% ]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf% {$\smile$}}\;{y})^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$-1$}}}\,{\color[rgb]{0,0,0.8046875% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}({x}\;{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\smile$}}\;{y})^{{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$-1$}}}โ‰ก italic_ฯƒ ( italic_x โŒฃ italic_y ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โ‹… italic_ฯƒ ( italic_x โŒฃ italic_y ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT
=:congฮท3-fun(๐—‰๐—Ž๐—Œ๐—(x,y))\displaystyle{=:}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{$\eta_{3% }$-fun}}}}\;{({{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(x\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,y)})}= : cong italic_ฮท start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT sansserif_-fun ( sansserif_push ( italic_x , italic_y ) )

where the fourth and seventh equalities come from anti-commutativity and the fifth equality from 38. The fact that ฯƒฯƒ\sigmaitalic_ฯƒ commutes with inversion is used throughout.

Theorem 42.

ฯ€4โข(\sphereโข3)โ‰…โ„ค/2โขโ„คsubscript๐œ‹4\sphere3โ„ค2โ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}}/2{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) โ‰… โ„ค / 2 โ„ค

Proof 6.11.

By uniqueness (up to a sign) of isomorphisms ฯ€3โข(\sphereโข2)โ‰…โ„คsubscript๐œ‹3\sphere2โ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ‰… โ„ค, it suffices, according to 18, to show that the image of [i2,i2]subscript๐‘–2subscript๐‘–2[i_{2},i_{2}][ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ] under ฮธ๐œƒ\thetaitalic_ฮธ is ยฑ2plus-or-minus2\pm 2ยฑ 2. That is:

(ฮพโˆ˜(Fโˆ’1)โˆ—โˆ˜Fโˆ—โˆ˜(hโˆ—)โˆ’1โˆ˜Fโˆ—)โข[i2,i2]โขโ‰กยฑ2plus-or-minus๐œ‰superscriptsuperscriptF1subscriptFsuperscriptsubscripth1superscriptFsubscript๐‘–2subscript๐‘–2โ‰ก2{(\xi\circ({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{F}}^{-1})^{*}\circ{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F}}_{*}\circ({% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{h}}_{*})^{-1}\circ{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F}}^{*})[i_{2},% i_{2}]}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ‰ก}}\,{\pm 2}( italic_ฮพ โˆ˜ ( F start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT โˆ˜ F start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT โˆ˜ ( h start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โˆ˜ F start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ) [ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ] โ‰ก ยฑ 2

Byย 39, 40 and 41, it suffices to show that

(ฮพโˆ˜(Fโˆ’1)โˆ—)โขฮท3โขโ‰กยฑ2plus-or-minus๐œ‰superscriptsuperscriptF1subscript๐œ‚3โ‰ก2{(\xi\circ({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{F}}^{-1})^{*})\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\eta$}}_{3}}\,{\color[rgb]% {0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% โ‰ก}}\,{\pm 2}( italic_ฮพ โˆ˜ ( F start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ) italic_ฮท start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT โ‰ก ยฑ 2

One can easily show that Fโˆ’1โขฮท3โขโ‰กโข(โˆ’2)โขi3superscriptF1subscript๐œ‚3โ‰ก2subscript๐‘–3{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{F}}^{-1}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]% {pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\eta$}}_{3}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ก% }}\,{(-2)\,i_{3}}F start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT italic_ฮท start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT โ‰ก ( - 2 ) italic_i start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT, and hence

(ฮพโˆ˜(Fโˆ’1)โˆ—)โขฮท3โขโ‰กโข(โˆ’2)โข(ฮพโขi3)โ‰กโˆ’2๐œ‰superscriptsuperscriptF1subscript๐œ‚3โ‰ก2๐œ‰subscript๐‘–32{(\xi\circ({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{F}}^{-1})^{*})\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\eta$}}_{3}}\,{\color[rgb]% {0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% โ‰ก}}\,{(-2)\,(\xi\,i_{3})}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,-2( italic_ฮพ โˆ˜ ( F start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ) italic_ฮท start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT โ‰ก ( - 2 ) ( italic_ฮพ italic_i start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) โ‰ก - 2

In addition to providing a much shorter proof of ฯ€4โข(\sphereโข3)โ‰…โ„ค/2โขโ„คsubscript๐œ‹4\sphere3โ„ค2โ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}}/2{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) โ‰… โ„ค / 2 โ„ค, this gives us a sequence of new Brunerie numbers, ฮฒ1,ฮฒ2,ฮฒ3:โ„ค:subscript๐›ฝ1subscript๐›ฝ2subscript๐›ฝ3โ„ค{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}_{1},{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\beta$}}_{2},{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \beta$}}_{3}:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฮฒ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_ฮฒ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_ฮฒ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT : โ„ค, of decreasing complexity:

ฮฒ1subscript๐›ฝ1\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\beta$}}_{1}italic_ฮฒ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT =(ฮพโˆ˜(Fโˆ’1)โˆ—โˆ˜Fโˆ—โˆ˜(hโˆ—)โˆ’1)โขฮท1absent๐œ‰superscriptsuperscriptF1subscriptFsuperscriptsubscripth1subscript๐œ‚1\displaystyle=(\xi\circ({\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F}}^{-1})^{*}\circ{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F% }}_{*}\circ({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}\textsf{h}}_{*})^{-1})\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\eta$}}_{1}= ( italic_ฮพ โˆ˜ ( F start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT โˆ˜ F start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT โˆ˜ ( h start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ) italic_ฮท start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT
ฮฒ2subscript๐›ฝ2\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\beta$}}_{2}italic_ฮฒ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT =(ฮพโˆ˜(Fโˆ’1)โˆ—โˆ˜Fโˆ—)โขฮท2absent๐œ‰superscriptsuperscriptF1subscriptFsubscript๐œ‚2\displaystyle=(\xi\circ({\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F}}^{-1})^{*}\circ{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F% }}_{*})\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\eta$}}_{2}= ( italic_ฮพ โˆ˜ ( F start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT โˆ˜ F start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT ) italic_ฮท start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT
ฮฒ3subscript๐›ฝ3\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\beta$}}_{3}italic_ฮฒ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT =(ฮพโˆ˜(Fโˆ’1)โˆ—)โขฮท3absent๐œ‰superscriptsuperscriptF1subscript๐œ‚3\displaystyle=(\xi\circ({\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F}}^{-1})^{*})\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \eta$}}_{3}= ( italic_ฮพ โˆ˜ ( F start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ) italic_ฮท start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT

This gives new hope for Brunerieโ€™s conjecture about a proof by normalisation. This may be captured as follows:

Theorem 43 (New Brunerie numbers).

If either of ฮฒ1,ฮฒ2,ฮฒ3:โ„ค:subscript๐›ฝ1subscript๐›ฝ2subscript๐›ฝ3โ„ค{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}_{1},{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\beta$}}_{2},{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \beta$}}_{3}:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฮฒ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_ฮฒ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_ฮฒ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT : โ„ค normalises to ยฑ2plus-or-minus2\pm 2ยฑ 2, then ฯ€4โข(\sphereโข3)โ‰…โ„ค/2โขโ„คsubscript๐œ‹4\sphere3โ„ค2โ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}}/2{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) โ‰… โ„ค / 2 โ„ค.

Ideally, we could normalise ฮฒ1subscript๐›ฝ1{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}_{1}italic_ฮฒ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. This, however, turns out to be difficult, as it does not bypass the main hurdle of computing the inverse of the isomorphism ฯ€3โˆ—โข(\sphereโข2)โ‰…ฯ€3โˆ—โข(\sphereโข1โข*โข\sphereโข1)subscriptsuperscript๐œ‹3\sphere2superscriptsubscript๐œ‹3\sphere1*\sphere1{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}^{*}_{3}(\sphere{2})}\,\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \cong$}}\,\,{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\pi$}}_{3}^{*}({\sphere{1}}{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% \text{\textasteriskcentered}}}\,{\sphere{1}})}italic_ฯ€ start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ‰… italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ( 1 * 1 ) induced by the Hopf map, which has a rather indirect construction coming from the LES of homotopy groups associated to the Hopf fibration. This problem does not apply to ฮฒ2subscript๐›ฝ2{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}_{2}italic_ฮฒ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, for which the computation does not rely on the problematic inverse. Unfortunately, also ฮฒ2subscript๐›ฝ2{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}_{2}italic_ฮฒ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT fails to normalise in reasonable time in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda. This is surprising, as the only maps playing a fundamental role here are two applications of the equivalence \sphereโข1โข*โข\sphereโข1โขโ‰ƒโข\sphereโข3\sphere1*\sphere1โ‰ƒ\sphere3{{\sphere{1}}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{1}}}\,\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{\sphere{3}}1 * 1 โ‰ƒ 3, which is not too involved, and one application of ฮพ๐œ‰\xiitalic_ฮพ which may be compactly described via

ฯ€3โข(\sphereโข3)โ†’โˆฃโข_โขโˆฃโˆ—H3โข(\sphereโข3)โ†’โ‰…โ„คโˆฃ_subscriptโˆฃโ†’subscript๐œ‹3\sphere3superscriptH3\sphere3โ†’โ„ค{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}{(\sphere{3})}\xrightarrow{{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{โˆฃ}$}}}\,\!{{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{\_}$}}}\!\,{{\color[rgb]{% 0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$% \mathsf{โˆฃ}$}}}_{*}}\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{H}}}^{3}\!\left({\sphere{3}}\right)% \xrightarrow{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\cong$}}}{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 3 ) start_ARROW start_OVERACCENT โˆฃ _ โˆฃ start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT end_OVERACCENT โ†’ end_ARROW H start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT ( 3 ) start_ARROW overโ‰… โ†’ end_ARROW โ„ค

and computes relatively well if the last isomorphism is constructed as inย [BLM22].555As noted inย [Lju20], the Freudenthal suspension theorem should be avoided here as it has a tendency to lead to very slow computations. This is another way in which we deviate from Brunerieโ€™s ฮฒ๐›ฝ\betaitalic_ฮฒ. We have hence, at the time of writing, not been able to normalise even ฮฒ2subscript๐›ฝ2{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}_{2}italic_ฮฒ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, despite many optimisations of the functions involved. We are, however, able to normalise ฮฒ3subscript๐›ฝ3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}_{3}italic_ฮฒ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT after some minor modifications to ฮท3subscript๐œ‚3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\eta$}}_{3}italic_ฮท start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and the map ฯ€3โˆ—โข(\sphereโข3)โ†’โ„คโ†’superscriptsubscript๐œ‹3\sphere3โ„ค{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}^{*}(\sphere{3})\to{\color[rgb]{0,0,0.8046875% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT โˆ— end_POSTSUPERSCRIPT ( 3 ) โ†’ โ„ค. This optimised version of ฮฒ3subscript๐›ฝ3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}_{3}italic_ฮฒ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT, normalises to โˆ’22-2- 2 in ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda in just under 4444 seconds, thereby giving us an at least partially computer-assisted proof of ฯ€4โข(\sphereโข3)โ‰…โ„ค/2โขโ„คsubscript๐œ‹4\sphere3โ„ค2โ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}}/2{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) โ‰… โ„ค / 2 โ„ค.

We emphasise again that ฮฒ2subscript๐›ฝ2{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}_{2}italic_ฮฒ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT is a vastly simplified version of ฮฒ๐›ฝ\betaitalic_ฮฒ since the isomorphism ฯ€3โข(\sphereโข2)โ‰…ฯ€3โข(\sphereโข3)subscript๐œ‹3\sphere2subscript๐œ‹3\sphere3{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{3})}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ‰… italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 3 ) never has to be computed. Hence, it is rather surprising that computations break down already at this stage. This tells us that ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda has a long way to go before any direct computation of the original ฮฒ๐›ฝ\betaitalic_ฮฒ is feasible. We hope that this could be useful for benchmarking in future optimisations of ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda and related systems.

Finally, we address the elephant in the room: why is there a minus sign popping up? In other words, have we really chosen the, in some way, canonical isomorphism? The isomorphism ฯ€3โข(\sphereโข3)โ‰…โ„คsubscript๐œ‹3\sphere3โ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{3})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}}italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 3 ) โ‰… โ„ค maps, as expected, i3subscript๐‘–3i_{3}italic_i start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT to 1111, so it can hardly be the culprit. Neither can the equivalence F:\sphereโข1โข*โข\sphereโข1โขโ‰ƒโข\sphereโข3:F\sphere1*\sphere1โ‰ƒ\sphere3\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{F}}}:{{\sphere{1}}{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered}% }}\,{\sphere{1}}}\,\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ‰ƒ}}\,\,{\sphere{3}}F : 1 * 1 โ‰ƒ 3, since it is applied equally in the constructions of hopf and of [i2,i2]subscript๐‘–2subscript๐‘–2[i_{2},i_{2}][ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ]. We could, however, have defined the ๐—‰๐—Ž๐—Œ๐—๐—‰๐—Ž๐—Œ๐—\mathsf{push}sansserif_pushโ€†โ€‹-case for h by \ExecuteMetaData[agda/latex/background.tex]alt-hopf in which case ฮธ๐œƒ\thetaitalic_ฮธ would have sent [i2,i2]subscript๐‘–2subscript๐‘–2[i_{2},i_{2}][ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ] to 2222 and hopf to 1111 (note that this is only possible since altering h would alter the definition of ฮธ๐œƒ\thetaitalic_ฮธ). The construction of h that we have given is, however, precisely the one which fell out by unfolding our formalisation Brunerieโ€™s construction of the corresponding map. If this indeed is what Brunerie intended, we may also conclude that the original Brunerie number ฮฒ๐›ฝ\betaitalic_ฮฒ is equal to โˆ’22-2- 2. We stress that this merely is a fun fact and of no mathematical importance to Brunerieโ€™s proof or our formalisation.

6.4. A stand-alone proof of Brunerieโ€™s theorem?

We saw above that the new proof of ฮฒโ‰กยฑ2๐›ฝplus-or-minus2{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,\pm 2italic_ฮฒ โ‰ก ยฑ 2 together with 18 implies Brunerieโ€™s theorem. However, what conclusions can we draw concerning the cardinality of ฯ€4โข(\sphereโข3)subscript๐œ‹4\sphere3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) in the absence of 18? In other words, how self-contained is the new proof? While the fact that ฮฒโ‰กยฑ2๐›ฝplus-or-minus2{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named% ]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,\pm 2italic_ฮฒ โ‰ก ยฑ 2 does not automatically imply that ฯ€4โข(\sphereโข3)โ‰…โ„ค/2โขโ„คsubscript๐œ‹4\sphere3โ„ค2โ„ค{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}/2{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) โ‰… โ„ค / 2 โ„ค, it does provide all ingredients necessary for a stand-alone proof of the following fact:

Theorem 44.

If ฯ€4โข(\sphereโข3)โ‰ƒฬธ๐Ÿ™not-similar-to-or-equalssubscript๐œ‹4\sphere31{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\not\simeq$}}% \,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\mathbbm{1}$}}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) โ‰ƒฬธ blackboard_1, then ฯ€4โข(\sphereโข3)โ‰…โ„ค/2โขโ„คsubscript๐œ‹4\sphere3โ„ค2โ„ค{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}/2{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) โ‰… โ„ค / 2 โ„ค.

Before we prove 44, we need to analyse the action of suspension on Whitehead products and, in particular, on [i2,i2]:ฯ€3โข(\sphereโข2):subscript๐‘–2subscript๐‘–2subscript๐œ‹3\sphere2[i_{2},i_{2}]:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})[ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ] : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ). In what follows, let A,B๐ด๐ตA,Bitalic_A , italic_B and C๐ถCitalic_C be pointed types and let us fix two pointed functions f:SuspAโ†’โ‹†C:๐‘“subscriptโ†’โ‹†SuspA๐ถf:\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{Susp}}{$\,A$}}\to_{\star}Citalic_f : Susp italic_A โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_C and g:SuspBโ†’โ‹†C:๐‘”subscriptโ†’โ‹†SuspB๐ถg:\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}{Susp}}{$\,B$}}\to_{\star}Citalic_g : Susp italic_B โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_C. The Whitehead product of f๐‘“fitalic_f and g๐‘”gitalic_g can be understood as the composition

Aโข*โขBโ†’WSuspAโˆจSuspBโ†’fโˆจgCโˆจCโ†’โˆ‡CWโ†’๐ด*๐ตSuspASuspB๐‘“๐‘”โ†’๐ถ๐ถโˆ‡โ†’๐ถ{A\,}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{B}\xrightarrow{\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{W}}\,}\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,A$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\vee$}}\,\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,B$}}% \xrightarrow{f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0,0.8046875}\textsf{$\vee$}}\,g}C\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\vee$}}\,C% \xrightarrow{\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\nabla$}}\,}Citalic_A * italic_B start_ARROW start_OVERACCENT W end_OVERACCENT โ†’ end_ARROW Susp italic_A โˆจ Susp italic_B start_ARROW start_OVERACCENT italic_f โˆจ italic_g end_OVERACCENT โ†’ end_ARROW italic_C โˆจ italic_C start_ARROW start_OVERACCENT โˆ‡ end_OVERACCENT โ†’ end_ARROW italic_C

We remark that this construction has been independently studied by Cagne et al.ย [CBKB24, Definition 6.3] who call it the โ€˜generalised Whitehead productโ€™. After a bit of massaging, this function can be given a very simple description: \ExecuteMetaData[agda/latex/background.tex]wh We remark that this composition gives ฮท1subscript๐œ‚1\eta_{1}italic_ฮท start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT-fun when A=B=\sphereโข1๐ด๐ต\sphere1A=B=\sphere{1}italic_A = italic_B = 1, C=\sphereโข2๐ถ\sphere2C=\sphere{2}italic_C = 2 and f=g=id\sphereโข2๐‘“๐‘”subscriptid\sphere2f=g=\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0,0.8046875}{id}}}_{\sphere{2}}italic_f = italic_g = id start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT.

Our aim is to show that fโ‹…wgsubscriptโ‹…๐‘ค๐‘“๐‘”f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cdot_{w}$}}\,gitalic_f โ‹… start_POSTSUBSCRIPT italic_w end_POSTSUBSCRIPT italic_g vanishes under suspension. To this end, let us consider a function very similar to fโ‹…wgsubscriptโ‹…๐‘ค๐‘“๐‘”f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cdot_{w}$}}\,gitalic_f โ‹… start_POSTSUBSCRIPT italic_w end_POSTSUBSCRIPT italic_g: \ExecuteMetaData[agda/latex/background.tex]gamma Despite the similarity of fโ‹…wgsubscriptโ‹…๐‘ค๐‘“๐‘”f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cdot_{w}$}}\,gitalic_f โ‹… start_POSTSUBSCRIPT italic_w end_POSTSUBSCRIPT italic_g and ฮณ๐›พ\gammaitalic_ฮณ, the latter turns out to be trivial.

Lemma 45.

ฮณ๐›พ\gammaitalic_ฮณ is constant.

Proof 6.12.

We show that ฮณโขaโ‰กโ‹†C๐›พ๐‘Žsubscriptโ‹†๐ถ{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\gamma$}}\,a\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,\star_{C}italic_ฮณ italic_a โ‰ก โ‹† start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPT for all a:\sphereโข1โข*โข\sphereโข1:๐‘Ž\sphere1*\sphere1a:{\sphere{1}}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{\sphere{1}}italic_a : 1 * 1 by induction on a๐‘Žaitalic_a. When a๐‘Žaitalic_a is ๐—‚๐—‡๐—…โขx๐—‚๐—‡๐—…๐‘ฅ{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inl}$}}}\,{x}sansserif_inl italic_x, the left-hand side reduces to โ‹†Csubscriptโ‹†๐ถ\star_{C}โ‹† start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPT, so we need to provide a path โ‹†Cโฃโ‰กโฃโ‹†Csubscriptโ‹†๐ถsubscriptโ‹†๐ถ\star_{C}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{$\equiv$}}\,\star_{C}โ‹† start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPT โ‰ก โ‹† start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPT. Instead of choosing the obvious path refl, we provide congโ‹†f(ฯƒx):โ‹†Cโ‰กโ‹†C{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\text{cong}_{\star}$}}\,{f}\,{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \sigma$}}\,x)}:\star_{C}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,\star_{C}cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_f ( italic_ฯƒ italic_x ) : โ‹† start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPT โ‰ก โ‹† start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPT. When a๐‘Žaitalic_a is ๐—‚๐—‡๐—‹โขy๐—‚๐—‡๐—‹๐‘ฆ{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inr}$}}}\,{y}sansserif_inr italic_y, we have the same goal. This time, we provide the path congโ‹†โขgโข(ฯƒโขy)โˆ’1subscriptcongโ‹†๐‘”superscript๐œŽ๐‘ฆ1{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\text{cong}_{\star}$}}\,{g}\,{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \sigma$}}\,y)}^{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0,0.8046875}\textsf{$-1$}}}cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_g ( italic_ฯƒ italic_y ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT. For the final step, i.e.ย the action of ฮณฮณ\gammaitalic_ฮณ on ๐—‰๐—Ž๐—Œ๐—โข(xโข,โขy)๐—‰๐—Ž๐—Œ๐—๐‘ฅ,๐‘ฆ{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(x\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,y)}sansserif_push ( italic_x , italic_y ), we need to provide a filler of the following square of paths:

โ‹†Csubscriptโ‹†๐ถ{\star_{C}}โ‹† start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPTโ‹†Csubscriptโ‹†๐ถ{\star_{C}}โ‹† start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPTโ‹†Csubscriptโ‹†๐ถ{\star_{C}}โ‹† start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPTโ‹†Csubscriptโ‹†๐ถ{\star_{C}}โ‹† start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPTreflcongโ‹†โขfโข(ฯƒโขx)subscriptcongโ‹†๐‘“๐œŽ๐‘ฅ\scriptstyle{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\scriptstyle\text{cong}_{\star}$}}\,{f}\,{({\color% [rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\scriptstyle\sigma$}}\,x)}}cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_f ( italic_ฯƒ italic_x )congโ‹†โขfโข(ฯƒโขx)โ‹…congโ‹†โขgโข(ฯƒโขy)โ‹…subscriptcongโ‹†๐‘“๐œŽ๐‘ฅsubscriptcongโ‹†๐‘”๐œŽ๐‘ฆ\scriptstyle{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\scriptstyle\text{cong}_{\star}$}}\,{f}\,{({\color% [rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\scriptstyle\sigma$}}\,x)}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\scriptstyle\cdot$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\scriptstyle\text{cong}_{\star}$}}\,{g}\,{({\color[rgb]% {0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% $\scriptstyle\sigma$}}\,y)}}cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_f ( italic_ฯƒ italic_x ) โ‹… cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_g ( italic_ฯƒ italic_y )(congโ‹†โขgโข(ฯƒโขy))โˆ’1superscriptsubscriptcongโ‹†๐‘”๐œŽ๐‘ฆ1\scriptstyle{({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\scriptstyle\text{cong}_{\star}$}}\,{g}\,{({\color% [rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\scriptstyle\sigma$}}\,y)})^{{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\scriptstyle-1$}}}}( cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_g ( italic_ฯƒ italic_y ) ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT

Squares of this shape always have a filler by definition of path composition, and thus the statement holds.

Now, although fโ‹…wgsubscriptโ‹…๐‘ค๐‘“๐‘”f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cdot_{w}$}}\,gitalic_f โ‹… start_POSTSUBSCRIPT italic_w end_POSTSUBSCRIPT italic_g and ฮณ๐›พ\gammaitalic_ฮณ may look similar, it it is now, in light ofย 45, clear that they are not the same. This happens because the actions of the functions on ๐—‰๐—Ž๐—Œ๐—โข(xโข,โขy)๐—‰๐—Ž๐—Œ๐—๐‘ฅ,๐‘ฆ{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(x\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,y)}sansserif_push ( italic_x , italic_y ) only are the same up to commutation of pathsโ€”something which is not always legal in the possibly non-commutative loop space ฮฉโขCฮฉ๐ถ{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{C}roman_ฮฉ italic_C. Nevertheless, after suspending the function, the situation is different:

Lemma 46.

The pointed functions Susp(fโ‹…wg),Suspย ฮณ:Susp(Aโข*โขB)โ†’โ‹†SuspC:Susp(fโ‹…wg)Suspย ฮณsubscriptโ†’โ‹†Susp(Aโข*โขB)SuspC\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{Susp}}{$\,(f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot_{w}$}}\,g)$}},\textnormal{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{Susp}}{$\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\gamma$}}$}}:\textnormal{{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{% Susp}}{$\,({A\,}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{B})$}}\to_{\star}% \textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{Susp}}{$\,C$}}Susp ( italic_f โ‹… start_POSTSUBSCRIPT italic_w end_POSTSUBSCRIPT italic_g ) , Susp sansserif_ฮณ : Susp ( italic_A * italic_B ) โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT Susp italic_C are equal.

Proof 6.13.

Under the adjunction SuspโŠฃฮฉdoes-not-proveSuspฮฉ{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{Susp}}\dashv{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\Omega$}}Susp โŠฃ roman_ฮฉ, it is enough to show that for every a:Aโข*โขB:๐‘Ž๐ด*๐ตa:{A\,}{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{B}italic_a : italic_A * italic_B, we have an equality of loops in ฮฉโข(SuspC)ฮฉSuspC{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}\,{(\textnormal{{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,C$}})}}roman_ฮฉ ( Susp italic_C ):

ฯƒโข((fโ‹…wg)โขa)โขโ‰กฯƒโข(ฮณโขa)๐œŽsubscriptโ‹…๐‘ค๐‘“๐‘”๐‘Žโ‰กฯƒ๐›พ๐‘Ž{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}((f\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot_{w}$}}\,g)\,a)\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\equiv$}}{\color[rgb]{0,0,0.8046875}\definecolor[named]% {pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \gamma$}}\,a)italic_ฯƒ ( ( italic_f โ‹… start_POSTSUBSCRIPT italic_w end_POSTSUBSCRIPT italic_g ) italic_a ) italic_sansserif_โ‰ก italic_sansserif_ฯƒ ( italic_ฮณ italic_a )

We proceed by induction on a๐‘Žaitalic_a. When a๐‘Žaitalic_a is ๐—‚๐—‡๐—…โขx๐—‚๐—‡๐—…๐‘ฅ{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inl}$}}}\,{x}sansserif_inl italic_x or ๐—‚๐—‡๐—‹โขy๐—‚๐—‡๐—‹๐‘ฆ{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{inr}$}}}\,{y}sansserif_inr italic_y, the equality holds by refl. Thus, it remains to show that

congโขฯƒโข(congโข(fโ‹…wg)โข(๐—‰๐—Ž๐—Œ๐—โข(xโข,โขy)))โ‰กcongโขฯƒโข(congโขฮณโข(๐—‰๐—Ž๐—Œ๐—โข(xโข,โขy)))cong๐œŽcongsubscriptโ‹…๐‘ค๐‘“๐‘”๐—‰๐—Ž๐—Œ๐—๐‘ฅ,๐‘ฆcong๐œŽcong๐›พ๐—‰๐—Ž๐—Œ๐—๐‘ฅ,๐‘ฆ{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}}\;{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% cong}}\;{(f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\cdot_{w}$}}\,g)}\;{({{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}% }}\,{(x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{,}$}}}\,y)})})}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}}\;{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% cong}}\;{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\gamma$}}}\;{({{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(x\,{{% \color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0% }\textsf{$\mathsf{,}$}}}\,y)})})}cong italic_ฯƒ ( cong ( italic_f โ‹… start_POSTSUBSCRIPT italic_w end_POSTSUBSCRIPT italic_g ) ( sansserif_push ( italic_x , italic_y ) ) ) โ‰ก cong italic_ฯƒ ( cong italic_ฮณ ( sansserif_push ( italic_x , italic_y ) ) )

As before, this is a simple exercise in unfolding the definitions of each respective function:

congโขฯƒโข(congโข(fโ‹…wg)โข(๐—‰๐—Ž๐—Œ๐—โข(xโข,โขy)))cong๐œŽcongsubscriptโ‹…๐‘ค๐‘“๐‘”๐—‰๐—Ž๐—Œ๐—๐‘ฅ,๐‘ฆ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}}\;{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% cong}}\;{(f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\cdot_{w}$}}\,g)}\;{({{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}% }}\,{(x\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{,}$}}}\,y)})})}\,cong italic_ฯƒ ( cong ( italic_f โ‹… start_POSTSUBSCRIPT italic_w end_POSTSUBSCRIPT italic_g ) ( sansserif_push ( italic_x , italic_y ) ) ) :=congโขฯƒโข(congโ‹†โขgโข(ฯƒโขy)โ‹…congโ‹†โขfโข(ฯƒโขx))assignabsentcong๐œŽโ‹…subscriptcongโ‹†๐‘”๐œŽ๐‘ฆsubscriptcongโ‹†๐‘“๐œŽ๐‘ฅ\displaystyle{:=}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{0,0,0.8046875% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}}\;{% ({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\text{cong}_{\star}$}}\,{g}\,{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \sigma$}}\,y)}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\text{cong}_{\star}$}}\,{f% }\,{({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}\,x)})}:= cong italic_ฯƒ ( cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_g ( italic_ฯƒ italic_y ) โ‹… cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_f ( italic_ฯƒ italic_x ) )
โ‰กcongโขฯƒโข(congโ‹†โขgโข(ฯƒโขy))โ‹…congโขฯƒโข(congโ‹†โขfโข(ฯƒโขx))absentโ‹…cong๐œŽsubscriptcongโ‹†๐‘”๐œŽ๐‘ฆcong๐œŽsubscriptcongโ‹†๐‘“๐œŽ๐‘ฅ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \sigma$}}}\;{({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\text{cong}_{\star}$}}\,{g}\,{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \sigma$}}\,y)})}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% cong}}\;{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}}\;{({\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\text{cong}_{\star}$}}\,{f}% \,{({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}\,x)})}โ‰ก cong italic_ฯƒ ( cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_g ( italic_ฯƒ italic_y ) ) โ‹… cong italic_ฯƒ ( cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_f ( italic_ฯƒ italic_x ) )
โ‰กcongโขฯƒโข(congโ‹†โขfโข(ฯƒโขx))โ‹…congโขฯƒโข(congโ‹†โขgโข(ฯƒโขy))absentโ‹…cong๐œŽsubscriptcongโ‹†๐‘“๐œŽ๐‘ฅcong๐œŽsubscriptcongโ‹†๐‘”๐œŽ๐‘ฆ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \sigma$}}}\;{({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\text{cong}_{\star}$}}\,{f}\,{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \sigma$}}\,x)})}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{% cong}}\;{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}}\;{({\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\text{cong}_{\star}$}}\,{g}% \,{({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}\,y)})}โ‰ก cong italic_ฯƒ ( cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_f ( italic_ฯƒ italic_x ) ) โ‹… cong italic_ฯƒ ( cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_g ( italic_ฯƒ italic_y ) ) (EH)
โ‰กcongโขฯƒโข(congโ‹†โขfโข(ฯƒโขx)โ‹…congโ‹†โขgโข(ฯƒโขy))absentcong๐œŽโ‹…subscriptcongโ‹†๐‘“๐œŽ๐‘ฅsubscriptcongโ‹†๐‘”๐œŽ๐‘ฆ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \sigma$}}}\;{({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\text{cong}_{\star}$}}\,{f}\,{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \sigma$}}\,x)}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}% {rgb}{0,0,0.8046875}\textsf{$\cdot$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\text{cong}_{\star}$}}\,{g% }\,{({\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}\,y)})}โ‰ก cong italic_ฯƒ ( cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_f ( italic_ฯƒ italic_x ) โ‹… cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_g ( italic_ฯƒ italic_y ) )
โ‰กcongโขฮณโข(๐—‰๐—Ž๐—Œ๐—โข(xโข,โขy))absentcong๐›พ๐—‰๐—Ž๐—Œ๐—๐‘ฅ,๐‘ฆ\displaystyle{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor% [named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \gamma$}}}\;{({{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{push}$}}}\,{(x\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{,}$}}}% \,y)})}โ‰ก cong italic_ฮณ ( sansserif_push ( italic_x , italic_y ) )

where the step labelled (EH) is an application of the Eckmann-Hilton argument which says that path composition in ฮฉ2โขAsuperscriptฮฉ2๐ด{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}^{2}\,{A}roman_ฮฉ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_A is commutative for any pointed type A๐ดAitalic_Aย [Uni13, Theorem 2.1.6]. In particular, since we may interpret congโขฯƒโข(congโ‹†โขfโข(ฯƒโขx))cong๐œŽsubscriptcongโ‹†๐‘“๐œŽ๐‘ฅ{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}}\;{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \text{cong}_{\star}$}}\,{f}\,{({\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}\,x)})}cong italic_ฯƒ ( cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_f ( italic_ฯƒ italic_x ) ) and congโขฯƒโข(congโ‹†โขgโข(ฯƒโขy))cong๐œŽsubscriptcongโ‹†๐‘”๐œŽ๐‘ฆ{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{cong}}\;{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}}\;{({\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \text{cong}_{\star}$}}\,{g}\,{({\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\sigma$}}\,y)})}cong italic_ฯƒ ( cong start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_g ( italic_ฯƒ italic_y ) ) as loops in ฮฉ2โข(SuspC)superscriptฮฉ2SuspC{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\Omega$}}^{2}\,{(\textnormal{{\color[rgb]{0,0,0.8046875% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,C$}})}roman_ฮฉ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( Susp italic_C ), the identity holds.

Proposition 47.

The pointed function Susp(fโ‹…wg):Susp(Aโข*โขB)โ†’โ‹†SuspC:Susp(fโ‹…wg)subscriptโ†’โ‹†Susp(Aโข*โขB)SuspC\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{Susp}}{$\,(f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot_{w}$}}\,g)$}}:\textnormal{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}{Susp}}{$\,({A\,}{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{\text{\textasteriskcentered}}}\,{B}% )$}}\to_{\star}\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,C$}}Susp ( italic_f โ‹… start_POSTSUBSCRIPT italic_w end_POSTSUBSCRIPT italic_g ) : Susp ( italic_A * italic_B ) โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT Susp italic_C is constant.

Proof 6.14.

Since ฮณฮณ\gammaitalic_ฮณ is constant and constant functions are preserved by suspension, 45 gives us the desired equality of (pointed) functions:

Susp(fโ‹…wg)โ‰กSuspย ฮณโ‰กconstCSusp(fโ‹…wg)Suspย ฮณsubscriptconst๐ถ\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{Susp}}{$\,(f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cdot_{w}$}}\,g)$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \equiv$}}\,\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\gamma$}}$}}\,% {\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{const}}_{C}Susp ( italic_f โ‹… start_POSTSUBSCRIPT italic_w end_POSTSUBSCRIPT italic_g ) โ‰ก Susp sansserif_ฮณ โ‰ก const start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPT

As we have seen before, setting A=\sphereโขn๐ด\sphere๐‘›A=\sphere{n}italic_A = italic_n and B=\sphereโขm๐ต\sphere๐‘šB=\sphere{m}italic_B = italic_m in the definition of fโ‹…wgsubscriptโ‹…๐‘ค๐‘“๐‘”f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cdot_{w}$}}\,gitalic_f โ‹… start_POSTSUBSCRIPT italic_w end_POSTSUBSCRIPT italic_g, so that f:\sphereโขn+1โ†’โ‹†C:๐‘“subscriptโ†’โ‹†\sphere๐‘›1๐ถf:\sphere{n+1}\to_{\star}Citalic_f : italic_n + 1 โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_C and g:\sphereโขm+1โ†’โ‹†C:๐‘”subscriptโ†’โ‹†\sphere๐‘š1๐ถg:\sphere{m+1}\to_{\star}Citalic_g : italic_m + 1 โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_C we obtain the usual Whitehead product. [โˆฃโขfโขโˆฃ,โˆฃโขgโขโˆฃ]:ฯ€n+m+1โข(C):โˆฃ๐‘“โˆฃโˆฃ๐‘”โˆฃsubscript๐œ‹๐‘›๐‘š1๐ถ[{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,f\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}},% {{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,g\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}]% :{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n+m+1}(C)[ โˆฃ italic_f โˆฃ , โˆฃ italic_g โˆฃ ] : italic_ฯ€ start_POSTSUBSCRIPT italic_n + italic_m + 1 end_POSTSUBSCRIPT ( italic_C ), that is

[โˆฃโขfโขโˆฃ,โˆฃโขgโขโˆฃ]โ‰กโˆฃโข(fโ‹…wg)โˆ˜Fn,mโˆ’1โขโˆฃโˆฃ๐‘“โˆฃโˆฃ๐‘”โˆฃโˆฃsubscriptโ‹…๐‘ค๐‘“๐‘”superscriptsubscriptF๐‘›๐‘š1โˆฃ[{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,f\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}},% {{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,g\,{{\color[rgb]{0,0.546875,0}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}]% \,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\equiv$}}\,{{\color[rgb]{0,0.546875,0}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,(f\,{\color[% rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\cdot_{w}$}}\,g)\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\circ$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F% }}_{n,m}^{-1}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}[ โˆฃ italic_f โˆฃ , โˆฃ italic_g โˆฃ ] โ‰ก โˆฃ ( italic_f โ‹… start_POSTSUBSCRIPT italic_w end_POSTSUBSCRIPT italic_g ) โˆ˜ F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โˆฃ

Let us translate 47 to a result concerning these maps.

Proposition 48.

For f:\sphereโขnโ†’โ‹†C:๐‘“subscriptโ†’โ‹†\sphere๐‘›๐ถf:\sphere{n}\to_{\star}Citalic_f : italic_n โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_C and g:\sphereโขmโ†’โ‹†C:๐‘”subscriptโ†’โ‹†\sphere๐‘š๐ถg:\sphere{m}\to_{\star}Citalic_g : italic_m โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_C, their Whitehead product (fโ‹…wg)โˆ˜Fn,mโˆ’1subscriptโ‹…๐‘ค๐‘“๐‘”superscriptsubscriptF๐‘›๐‘š1(f\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\cdot_{w}$}}\,g)\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\circ$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{{F}}}_{n,m}^{-1}( italic_f โ‹… start_POSTSUBSCRIPT italic_w end_POSTSUBSCRIPT italic_g ) โˆ˜ F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT vanishes under suspension, i.e.

Susp(โˆฃโข(fโ‹…wg)โˆ˜Fn,mโˆ’1โขโˆฃ)โ‰กconstCSusp(โˆฃโข(fโ‹…wg)โˆ˜Fn,mโˆ’1โขโˆฃ)subscriptconst๐ถ\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb% }{0,0,0.8046875}{Susp}}{$\,({{\color[rgb]{0,0.546875,0}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}}\,(f\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \cdot_{w}$}}\,g)\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\circ$}}\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{F% }}_{n,m}^{-1}\,{{\color[rgb]{0,0.546875,0}\definecolor[named]{pgfstrokecolor}{% rgb}{0,0.546875,0}\textsf{$\mathsf{โˆฃ}$}}})$}}\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{{const}}}_{C}Susp ( โˆฃ ( italic_f โ‹… start_POSTSUBSCRIPT italic_w end_POSTSUBSCRIPT italic_g ) โˆ˜ F start_POSTSUBSCRIPT italic_n , italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT โˆฃ ) โ‰ก const start_POSTSUBSCRIPT italic_C end_POSTSUBSCRIPT
Proof 6.15.

The result follows immediately from the fact that the action of suspension Susp:(Xโ†’โ‹†Y)โ†’(SuspXโ†’โ‹†SuspY):Suspโ†’subscriptโ†’โ‹†๐‘‹๐‘Œsubscriptโ†’โ‹†SuspXSuspY{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{Susp}}:(X\to_{\star}Y)\to(\textnormal{{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$% \,X$}}\to_{\star}\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,Y$}})Susp : ( italic_X โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT italic_Y ) โ†’ ( Susp italic_X โ†’ start_POSTSUBSCRIPT โ‹† end_POSTSUBSCRIPT Susp italic_Y ) is functorial and from 47.

We get the following classically well-known theorem as an immediate corollary:

Theorem 49.

For any x:ฯ€n+1โข(C):๐‘ฅsubscript๐œ‹๐‘›1๐ถx:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n+1}(C)italic_x : italic_ฯ€ start_POSTSUBSCRIPT italic_n + 1 end_POSTSUBSCRIPT ( italic_C ) and y:ฯ€m+1โข(C):๐‘ฆsubscript๐œ‹๐‘š1๐ถy:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{m+1}(C)italic_y : italic_ฯ€ start_POSTSUBSCRIPT italic_m + 1 end_POSTSUBSCRIPT ( italic_C ), the Whitehead product [x,y]:ฯ€n+m+1โข(C):๐‘ฅ๐‘ฆsubscript๐œ‹๐‘›๐‘š1๐ถ[x,y]:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{n+m+1}(C)[ italic_x , italic_y ] : italic_ฯ€ start_POSTSUBSCRIPT italic_n + italic_m + 1 end_POSTSUBSCRIPT ( italic_C ) lies in the kernel of the suspension map ฯƒโˆ—:ฯ€n+m+1โข(C)โ†’ฯ€n+m+2โข(SuspC):subscript๐œŽโ†’subscript๐œ‹๐‘›๐‘š1๐ถsubscript๐œ‹๐‘›๐‘š2SuspC{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}_{*}:{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}_{n+m+1}(C)\to{\color% [rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}% \textsf{$\pi$}}_{n+m+2}(\textnormal{{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}{Susp}}{$\,C$}})italic_ฯƒ start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT : italic_ฯ€ start_POSTSUBSCRIPT italic_n + italic_m + 1 end_POSTSUBSCRIPT ( italic_C ) โ†’ italic_ฯ€ start_POSTSUBSCRIPT italic_n + italic_m + 2 end_POSTSUBSCRIPT ( Susp italic_C )

We now have all that we need in order to proveย 44.

Proof 6.16 (Proof of 44).

By the Freudenthal suspension theorem, we know that ฯƒโˆ—:ฯ€3โข(\sphereโข2)โ†’ฯ€4โข(\sphereโข3):subscript๐œŽโ†’subscript๐œ‹3\sphere2subscript๐œ‹4\sphere3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}_{*}:{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})\to{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})italic_ฯƒ start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT : italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) โ†’ italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) is surjective. Furthermore, we know that the domain of this function is isomorphic to โ„ค via ฮธ๐œƒ\thetaitalic_ฮธ from subsectionย 6.3 and thus we have a surjection ฯƒโˆ—โˆ˜ฮธโˆ’1:โ„คโ†’ฯ€4โข(\sphereโข3):subscript๐œŽsuperscript๐œƒ1โ†’โ„คsubscript๐œ‹4\sphere3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}_{*}\,{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\circ$}}\,\theta^{-1}:{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}\to{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})italic_ฯƒ start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT โˆ˜ italic_ฮธ start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT : โ„ค โ†’ italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ). We know from the new direct calculation of the Brunerie number that ฮธโˆ’1โข(โˆ’2)โ‰ก[i2,i2]superscript๐œƒ12subscript๐‘–2subscript๐‘–2\theta^{-1}(-2)\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor% }{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,[i_{2},i_{2}]italic_ฮธ start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( - 2 ) โ‰ก [ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ] and thus we have

ฯƒโˆ—โข(ฮธโˆ’1โข(โˆ’2))โ‰กฯƒโˆ—โข[i2,i2]โ‰กโ€‰0ฯ€4โข(\sphereโข3)subscript๐œŽsuperscript๐œƒ12subscript๐œŽsubscript๐‘–2subscript๐‘–2subscriptโ€‰0subscript๐œ‹4\sphere3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\sigma$}}_{*}(\theta^{-1}(-2))\,{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$% \equiv$}}\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}% {0,0,0.8046875}\textsf{$\sigma$}}_{*}[i_{2},i_{2}]\,{\color[rgb]{0,0,0.8046875% }\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,0_% {{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})}italic_ฯƒ start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT ( italic_ฮธ start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( - 2 ) ) โ‰ก italic_ฯƒ start_POSTSUBSCRIPT โˆ— end_POSTSUBSCRIPT [ italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_i start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ] โ‰ก 0 start_POSTSUBSCRIPT italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) end_POSTSUBSCRIPT

where the second equality comes from 49. Hence, we have shown that there exists a surjection from โ„ค onto ฯ€4โข(\sphereโข3)subscript๐œ‹4\sphere3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) with โˆ’22-2- 2 in its kernel. This implies the theorem.

Now, with 44 in mind, we seem to be very close to having produced a remarkably short proof of Brunerieโ€™s theorem. All that remains is showing that ฯ€4โข(\sphereโข3)subscript๐œ‹4\sphere3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) is not trivial. This, however, turns out not to be entirely straightforward. One possible proof uses the so called Steenrod Squares. This is a cohomology operation which was originally defined in HoTT by Brunerieย [Bru16b] and whose theory was recently made available in HoTT by Ljungstrรถmย andย Wรคrnย [LW24]. Such an approach, however, can hardly be said to simplify Brunerieโ€™s original proof, as the Steenrod Squares are rather advanced constructions. A solution to this problem which would truly be impressive would be a direct construction of two elements x,y:ฯ€4โข(\sphereโข3):๐‘ฅ๐‘ฆsubscript๐œ‹4\sphere3x,y:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})italic_x , italic_y : italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) and a proof that xโ‰ขynot-equivalent-to๐‘ฅ๐‘ฆx\,{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\not\equiv$}}\,yitalic_x โ‰ข italic_y. While this appears to be difficult to do by hand, we can, since we are working constructively, reformulate this problem as a computational challenge.

Challenge.

Construct a function f:ฯ€4โข(\sphereโข3)โ†’Bool:๐‘“โ†’subscript๐œ‹4\sphere3Boolf:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})\to{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{{Bool}}}italic_f : italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) โ†’ Bool and an element e:ฯ€4โข(\sphereโข3):๐‘’subscript๐œ‹4\sphere3e:{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})italic_e : italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) such that

  • โ€ข

    fโขโ€‰0ฯ€4โข(\sphereโข3)๐‘“subscriptโ€‰0subscript๐œ‹4\sphere3f\,0_{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})}italic_f 0 start_POSTSUBSCRIPT italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) end_POSTSUBSCRIPT computes to true and

  • โ€ข

    fโขe๐‘“๐‘’f\,eitalic_f italic_e computes to false.

In fact, such a computation was successfully run by Jackย [Jac23] in ๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐š๐š๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐š๐š\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}cubicaltt}typewriter_cubicaltt [CCHM]. Unfortunately, ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda has not yet been able to perform the computation.

7. Conclusion

In this paper, we have presented three formalisations of ฯ€4โข(\sphereโข3)โ‰…โ„ค/2โขโ„คsubscript๐œ‹4\sphere3โ„ค2โ„ค{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})}\,\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\cong$}}\,\,{{% \color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}}/2{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) โ‰… โ„ค / 2 โ„ค in the ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda system. For the different proofs that |ฮฒ|โ‰กโ€‰2๐›ฝ2\left|{{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}}\right|\,{\color[rgb]{0,0,0.8046875}% \definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\equiv$}}\,2| italic_ฮฒ | โ‰ก 2, the line count is roughly as follows:

  1. (1)

    Brunerieโ€™s original proof [โˆผ9,000similar-toabsent9000\sim 9,000โˆผ 9 , 000 LOC]

  2. (2)

    A direct calculation of ฮฒ๐›ฝ\betaitalic_ฮฒ [โˆผ600similar-toabsent600\sim 600โˆผ 600 LOC]

  3. (3)

    A computer-assisted reformulation of (2) [โˆผ400similar-toabsent400\sim 400โˆผ 400 LOC]

As always, the number of lines of code (LOC) should be taken with a grain of salt. First, the 9,00090009,0009 , 000 LOC in the first formalisation exclude over 8,00080008,0008 , 000 LOC fromย [Kan22b, Cav20, BLM22] which we have imported as libraries. In addition, these numbers also exclude many elementary results used in the formalisation, including โˆผ9000similar-toabsent9000\sim 9000โˆผ 9000 LOC for Chapters 1โ€“3. We also stress that the line count for formalisations (2) and (3) only concern the part of the proof discussed inย sectionย 6.

Formalisation (1), which constituted the bulk of this paper, was a formalisation of Brunerieโ€™s pen-and-paper proof, taking some convenient shortcuts when possible. The problem of formalising Brunerieโ€™s proof has been a widely discussed open problem in HoTT/UF, and we hope that our efforts here provide a satisfactory solution to it. Formalisations (2) and (3) were of a simplified calculation of the Brunerie number, ฮฒ๐›ฝ\betaitalic_ฮฒ. The very similar proofs (2) and (3) differ in that (3) uses ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda to carry out part of the computation of the new Brunerie number automatically. Perhaps equally important, we have seen that (3) provides us with new Brunerie numbers ฮฒ1,ฮฒ2:โ„ค:subscript๐›ฝ1subscript๐›ฝ2โ„ค{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\beta$}}_{1},{\color[rgb]{0,0,0.8046875}\definecolor[% named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{$\beta$}}_{2}:{\color[rgb]{% 0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}italic_ฮฒ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_ฮฒ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT : โ„ค which are far simpler than the original one, but still do not normalise in a reasonable amount of time. Our hope is that these can prove useful in future optimisations of ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda and related systems, as they could help shed some light on where the normalisation of the original Brunerie number breaks down.

We remark that proofs (1) and (2) could be done in Book HoTT and do not use any cubical machinery in a fundamental way, making them interpretable in any suitably structured (โˆž,1)1(\infty,1)( โˆž , 1 )-topos [Shu19]. We hence claim that, in our formalisations, we do not crucially rely on computations using univalence and HITs to prove anything that we could not have proved by hand in Book HoTT. Nevertheless, the ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda system has been very helpful in the formalisation, primarily due to its native support for HITs and definitional computation rules for higher constructors. Formalisation (3), however, is only valid in a system with computational support for univalence as it crucially relies on normalisation of proof terms involving univalence. It would be interesting to run this in other cubical systems, like ๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐š๐š๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐š๐š\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}cubicaltt}typewriter_cubicaltt [CCHM], ๐š›๐šŽ๐šโข๐š๐š๐š›๐šŽ๐š๐š๐š\mathtt{{\color[rgb]{0.91015625,0.2734375,0.265625}\definecolor[named]{% pgfstrokecolor}{rgb}{0.91015625,0.2734375,0.265625}red}tt}typewriter_red typewriter_tt [Redb], cooltt [Reda], etc.

In addition to the above, we have also taken the opportunity to include some important constructions and results concerning joins of spheres and Whitehead products. In particular, we have given a very explicit definition of the decomposition of spheres into joins of spheres, given a new construction of homotopy groups in terms of maps out of joins of spheres and shown that Whitehead products vanish under suspension. The vanishing of Whitehead products allowed us to extend (2) to a stand-alone proof of the fact that ฯ€4โข(\sphereโข3)subscript๐œ‹4\sphere3{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{4}(\sphere{3})italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( 3 ) is either trivial or isomorphic to โ„ค/2โขโ„คโ„ค2โ„ค{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{โ„ค}}/2{\color[rgb]{0,0,0.8046875}\definecolor[named]{% pgfstrokecolor}{rgb}{0,0,0.8046875}\textsf{โ„ค}}โ„ค / 2 โ„ค. Interestingly, another direct proof using an entirely different approach of this very fact was recently announced by Bakerย [Bak24]. Bakerโ€™s argument is concerned with showing that a certain path constructed via the Eckmann-Hilton argument generates ฯ€3โข(\sphereโข2)subscript๐œ‹3\sphere2{\color[rgb]{0,0,0.8046875}\definecolor[named]{pgfstrokecolor}{rgb}{% 0,0,0.8046875}\textsf{$\pi$}}_{3}(\sphere{2})italic_ฯ€ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( 2 ) and then concludes that two times this generator must vanish under suspension due to the so called syllepsisย [SK22]. We leave it to future work to investigate if anything interesting can be said about the relation between Bakerโ€™s proof and ours.

We also remark that our formalisation of Brunerieโ€™s proof does not cover all results of Brunerieโ€™s thesis in full generality. For instance, we have not developed his proof concerning Whitehead products in full generality. We leave this generalisation for future work. This would tie in nicely with another possible direction of future research, namely that of investigating whether the approach outlined in sectionย 6 can be used to compute other Whitehead products. In addition, describing their graded quasi-Lie algebra structure is work in progress.

Acknowledgement

First and foremost we would like to thank Guillaume Brunerie for his excellent thesis, the conjecture about the computability of ฮฒ๐›ฝ\betaitalic_ฮฒ, and for the many discussions about this over the years. We would also like to thank Thierry Coquand and Simon Huber for the first attempt to compute the number together with Guillaume using ๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}cubical}typewriter_cubical in December 2014 and everyone else who has tried to compute the number and contributed ideas to this since. The ๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐™ฒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Cubical}typewriter_Cubical ๐™ฐ๐š๐š๐šŠ๐™ฐ๐š๐š๐šŠ\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}Agda}typewriter_Agda formalisation relies on many contributions to ๐šŠ๐š๐š๐šŠ/๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•๐šŠ๐š๐š๐šŠ๐šŒ๐šž๐š‹๐š’๐šŒ๐šŠ๐š•\mathtt{\color[rgb]{.25,.25,.25}\definecolor[named]{pgfstrokecolor}{rgb}{% .25,.25,.25}\pgfsys@color@gray@stroke{.25}\pgfsys@color@gray@fill{.25}agda/cubical}typewriter_agda / typewriter_cubical by more people than we can mention, but we are especially grateful to Evan Cavallo for the Freudenthal suspension theorem as well as many cool cubical tricks and to Rongji Kang for the Blakers-Massey theorem.

References

  • [Agd24] The Agda Development Team. The Agda Programming Language, 2024. URL: http://wiki.portal.chalmers.se/agda/.
  • [AW09] Steve Awodey and Michaelย A. Warren. Homotopy theoretic models of identity types. Mathematical Proceedings of the Cambridge Philosophical Society, 146(1):45โ€“55, January 2009. doi:10.1017/S0305004108001783.
  • [Bak24] Raymond Baker. Eckmann-Hilton and the Hopf Fibration. Extended abstract at Workshop on Homotopy Type Theory / Univalent Foundations (HoTT/UF24, 2024. URL: https://hott-uf.github.io/2024/abstracts/HoTTUF_2024_paper_24.pdf.
  • [BHF18] Ulrik Buchholtz and Kuen-Bang Houย Favonia. Cellular Cohomology in Homotopy Type Theory. In Proceedings of the 33rd Annual ACM/IEEE Symposium on Logic in Computer Science, LICS โ€™18, pages 521โ€“529, New York, NY, USA, 2018. Association for Computing Machinery. doi:10.1145/3209108.3209188.
  • [BLM22] Guillaume Brunerie, Axel Ljungstrรถm, and Anders Mรถrtberg. Synthetic Integral Cohomology in Cubical Agda. In Florin Manea and Alex Simpson, editors, 30th EACSL Annual Conference on Computer Science Logic (CSL 2022), volume 216 of Leibniz International Proceedings in Informatics (LIPIcs), pages 11:1โ€“11:19, Dagstuhl, Germany, 2022. Schloss Dagstuhl โ€“ Leibniz-Zentrum fรผr Informatik. URL: https://drops.dagstuhl.de/opus/volltexte/2022/15731, doi:10.4230/LIPIcs.CSL.2022.11.
  • [Bru16a] Guillaume Brunerie. On the homotopy groups of spheres in homotopy type theory. PhD thesis, Universitรฉ Nice Sophia Antipolis, 2016. URL: http://arxiv.org/abs/1606.05916.
  • [Bru16b] Guillaume Brunerie. The steenrod squares in homotopy type theory. Abstract at 23rd International Conference on Types for Proofs and Programs (TYPES 2017), 2016. URL: https://types2017.elte.hu/proc.pdf#page=45.
  • [Bru18] Guillaume Brunerie. Computer-generated proofs for the monoidal structure of the smash product. Homotopy Type Theory Electronic Seminar Talks, November 2018. URL: https://www.uwo.ca/math/faculty/kapulkin/seminars/hottest.html.
  • [Bru19] Guillaume Brunerie. The James Construction and ฯ€๐œ‹\piitalic_ฯ€44{}_{\mbox{4}}start_FLOATSUBSCRIPT 4 end_FLOATSUBSCRIPT(S33{}^{\mbox{3}}start_FLOATSUPERSCRIPT 3 end_FLOATSUPERSCRIPT) in Homotopy Type Theory. Journal of Automated Reasoning, 63:255โ€“284, 2019.
  • [Cav20] Evan Cavallo. Formalisation of the Freudenthal Suspension Theorem, 2020. URL: https://github.com/agda/cubical/blob/master/Cubical/Homotopy/Freudenthal.agda.
  • [CBKB24] Pierre Cagne, Ulrik Buchholtz, Nicolai Kraus, and Marc Bezem. On symmetries of spheres in univalent foundations, 2024. arXiv:2401.15037.
  • [CCHM] Cyril Cohen, Thierry Coquand, Simon Huber, and Anders Mรถrtberg. cubicaltt: Cubical Type Theory. Implementation available at https://github.com/mortberg/cubicaltt.
  • [CCHM18] Cyril Cohen, Thierry Coquand, Simon Huber, and Anders Mรถrtberg. Cubical Type Theory: A Constructive Interpretation of the Univalence Axiom. In Tarmo Uustalu, editor, 21st International Conference on Types for Proofs and Programs (TYPES 2015), volumeย 69 of Leibniz International Proceedings in Informatics (LIPIcs), pages 5:1โ€“5:34, Dagstuhl, Germany, 2018. Schloss Dagstuhlโ€“Leibniz-Zentrum fuer Informatik. doi:10.4230/LIPIcs.TYPES.2015.5.
  • [CH19] Evan Cavallo and Robert Harper. Higher Inductive Types in Cubical Computational Type Theory. Proceedings of the ACM on Programming Languages, 3(POPL):1:1โ€“1:27, January 2019. doi:10.1145/3290314.
  • [CHM18] Thierry Coquand, Simon Huber, and Anders Mรถrtberg. On Higher Inductive Types in Cubical Type Theory. In Proceedings of the 33rd Annual ACM/IEEE Symposium on Logic in Computer Science, LICS โ€™18, pages 255โ€“264. ACM, 2018. doi:10.1145/3209108.3209197.
  • [CS20] J.ย Daniel Christensen and Luis Scoccola. The Hurewicz theorem in Homotopy Type Theory, 2020. Preprint. URL: https://arxiv.org/abs/2007.05833, arXiv:2007.05833.
  • [Hat02] Allen Hatcher. Algebraic Topology. Cambridge University Press, 2002. URL: https://pi.math.cornell.edu/~hatcher/AT/AT.pdf.
  • [HFLL16] Kuen-Bang Hou (Favonia), Eric Finster, Danielย R. Licata, and Peterย LeFanu Lumsdaine. A Mechanization of the Blakers-Massey Connectivity Theorem in Homotopy Type Theory. In Proceedings of the 31st Annual ACM/IEEE Symposium on Logic in Computer Science, LICS โ€™16, pages 565โ€“574, New York, NY, USA, 2016. ACM. doi:10.1145/2933575.2934545.
  • [Jac23] Tom Jack. ฯ€4โข๐•Š3โ‰…ฬธ1subscript๐œ‹4superscript๐•Š31\pi_{4}\mathbbm{S}^{3}\not\cong 1italic_ฯ€ start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT blackboard_S start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT โ‰…ฬธ 1 and another Brunerie number in CCHM. Extended abstract at The Second International Conference on Homotopy Type Theory (HoTT 2023), 2023. URL: https://hott.github.io/HoTT-2023/abstracts/HoTT-2023_abstract_21.pdf.
  • [Jam55] I.ย M. James. Reduced product spaces. Annals of Mathematics, 62(1):170 โ€“ 197, 1955.
  • [Kan22a] Rongji Kang. Formalisation of the James Construction, 2022. URL: https://github.com/agda/cubical/tree/master/Cubical/HITs/James.
  • [Kan22b] Rongji Kang. Formalisation of the James Construction, 2022. URL: https://github.com/agda/cubical/tree/master/Cubical/HITs/James.
  • [Lic14] Danielย R. Licata. Another proof that univalence implies function extensionality, 2014. Blog post at https://homotopytypetheory.org/2014/02/17/another-proof-that-univalence-implies-function-extensionality/.
  • [Lju20] Axel Ljungstrรถm. Computing Cohomology in Cubical Agda. Masterโ€™s thesis, Stockholm University, 2020.
  • [Lju22] Axel Ljungstrรถm. The Brunerie Number Is -2, 2022. Blog post at https://homotopytypetheory.org/2022/06/09/the-brunerie-number-is-2/.
  • [Lju24] Axel Ljungstrรถm. Symmetric Monoidal Smash Products in Homotopy Type Theory, 2024. arXiv:2402.03523.
  • [LLM23] Thomas Lamiaux, Axel Ljungstrรถm, and Anders Mรถrtberg. Computing cohomology rings in cubical agda. In Proceedings of the 12th ACM SIGPLAN International Conference on Certified Programs and Proofs, CPP 2023, page 239โ€“252, New York, NY, USA, 2023. Association for Computing Machinery. doi:10.1145/3573105.3575677.
  • [LM23] Axel Ljungstrรถm and Anders Mรถrtberg. Formalizing ฯ€๐œ‹\piitalic_ฯ€4(S33{}^{\mbox{3}}start_FLOATSUPERSCRIPT 3 end_FLOATSUPERSCRIPT) โ‰…\congโ‰…Z/2Z and Computing a Brunerie Number in Cubical Agda. In LICS, pages 1โ€“13, 2023. doi:10.1109/LICS56636.2023.10175833.
  • [LM24] Axel Ljungstrรถm and Anders Mรถrtberg. Computational Synthetic Cohomology Theory in Homotopy Type Theory, 2024. arXiv:2401.16336.
  • [LS13] Danielย R. Licata and Michael Shulman. Calculating the Fundamental Group of the Circle in Homotopy Type Theory. In Proceedings of the 2013 28th Annual ACM/IEEE Symposium on Logic in Computer Science, LICS โ€™13, pages 223โ€“232, Washington, DC, USA, 2013. IEEE Computer Society. doi:10.1109/LICS.2013.28.
  • [LS20] Peterย LeFanu Lumsdaine and Michael Shulman. Semantics of higher inductive types. Mathematical Proceedings of the Cambridge Philosophical Society, 169(1):159โ€“208, 2020. doi:10.1017/S030500411900015X.
  • [LW24] Axel Ljungstrรถm and David Wรคrn. The Steenrod Squares in HoTT Revisited. Extended abstract at Workshop on Homotopy Type Theory / Univalent Foundations (HoTT/UF24, 2024. URL: https://hott-uf.github.io/2024/abstracts/HoTTUF_2024_paper_8.pdf.
  • [ML75] Per Martin-Lรถf. An Intuitionistic Theory of Types: Predicative Part. In H.ย E. Rose and J.ย C. Shepherdson, editors, Logic Colloquium โ€™73, volumeย 80 of Studies in Logic and the Foundations of Mathematics, pages 73โ€“118. North-Holland, 1975. doi:10.1016/S0049-237X(08)71945-1.
  • [ML84] Per Martin-Lรถf. Intuitionistic type theory, volumeย 1 of Studies in Proof Theory. Bibliopolis, 1984.
  • [MP20] Anders Mรถrtberg and Loรฏc Pujet. Cubical Synthetic Homotopy Theory. In Proceedings of the 9th ACM SIGPLAN International Conference on Certified Programs and Proofs, CPP 2020, pages 158โ€“171, New York, NY, USA, 2020. Association for Computing Machinery. doi:10.1145/3372885.3373825.
  • [Reda] RedPRL Development Team. cooltt. https://www.github.com/RedPRL/cooltt.
  • [Redb] RedPRL Development Team. redtt. https://www.github.com/RedPRL/redtt.
  • [Shu19] Michael Shulman. All (โˆž,1)1(\infty,1)( โˆž , 1 )-toposes have strict univalent universes, April 2019. Preprint. URL: https://arxiv.org/abs/1904.07004, arXiv:1904.07004.
  • [SK22] Kristina Sojakova and G.ย A. Kavvos. Syllepsis in Homotopy Type Theory. In Proceedings of the 37th Annual ACM/IEEE Symposium on Logic in Computer Science, LICS โ€™22, New York, NY, USA, 2022. Association for Computing Machinery. doi:10.1145/3531130.3533347.
  • [Uni13] The Univalent Foundations Program. Homotopy Type Theory: Univalent Foundations of Mathematics. Self-published, Institute for Advanced Study, 2013. URL: https://homotopytypetheory.org/book/.
  • [VMA21] Andrea Vezzosi, Anders Mรถrtberg, and Andreas Abel. Cubical Agda: A Dependently Typed Programming Language with Univalence and Higher Inductive Types. Journal of Functional Programming, 31:e8, 2021. doi:10.1017/S0956796821000034.
  • [Voe10a] Vladimir Voevodsky. The equivalence axiom and univalent models of type theory, February 2010. Notes from a talk at Carnegie Mellon University. URL: http://www.math.ias.edu/vladimir/files/CMU_talk.pdf.
  • [Voe10b] Vladimir Voevodsky. Univalent foundations, September 2010. Notes from a talk in Bonn. URL: https://www.math.ias.edu/vladimir/sites/math.ias.edu.vladimir/files/Bonn_talk.pdf.
  • [Wรคr23] David Wรคrn. Eilenbergโ€“maclane spaces and stabilisation in homotopy type theory. Journal of Homotopy and Related Structures, 18(2):357โ€“368, Sep 2023. doi:10.1007/s40062-023-00330-5.