Skip to content

Commit 9e552e5

Browse files
Multivariable loop spaces (#1663)
Co-authored-by: Mark Williams <markrd.williams@gmail.com>
1 parent 381b22c commit 9e552e5

8 files changed

Lines changed: 851 additions & 0 deletions

config/codespell-dictionary.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ conisistsed->consisted
3232
conisistsing->consisting
3333
consistsed->consisted
3434
consistsing->consisting
35+
diamgram->diagram
3536
eacy->each,easy
3637
embeddding->embedding
3738
embedddings->embeddings
@@ -59,6 +60,7 @@ homomorphsim->homomorphism
5960
homomorphsims->homomorphisms
6061
identitification->identification
6162
identitifications->identifications
63+
inhanited->inhabited
6264
isomorhpism->isomorphism
6365
isomorhpisms->isomorphisms
6466
isomorhpsim->isomorphism

docs/tables/loop-spaces-concepts.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,6 @@
88
| Functoriality of loop spaces | [`synthetic-homotopy-theory.functoriality-loop-spaces`](synthetic-homotopy-theory.functoriality-loop-spaces.md) |
99
| Groups of loops in 1-types | [`synthetic-homotopy-theory.groups-of-loops-in-1-types`](synthetic-homotopy-theory.groups-of-loops-in-1-types.md) |
1010
| Iterated loop spaces | [`synthetic-homotopy-theory.iterated-loop-spaces`](synthetic-homotopy-theory.iterated-loop-spaces.md) |
11+
| Multivariable loop spaces | [`synthetic-homotopy-theory.multivariable-loop-spaces`](synthetic-homotopy-theory.multivariable-loop-spaces.md) |
1112
| Powers of loops | [`synthetic-homotopy-theory.powers-of-loops`](synthetic-homotopy-theory.powers-of-loops.md) |
1213
| Triple loop spaces | [`synthetic-homotopy-theory.triple-loop-spaces`](synthetic-homotopy-theory.triple-loop-spaces.md) |

src/structured-types.lagda.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ open import structured-types.involutive-type-of-h-space-structures public
3939
open import structured-types.involutive-types public
4040
open import structured-types.iterated-cartesian-products-types-equipped-with-endomorphisms public
4141
open import structured-types.iterated-pointed-cartesian-product-types public
42+
open import structured-types.left-invertible-magmas public
4243
open import structured-types.magmas public
4344
open import structured-types.medial-magmas public
4445
open import structured-types.mere-equivalences-types-equipped-with-endomorphisms public
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# Left-invertible magmas
2+
3+
```agda
4+
module structured-types.left-invertible-magmas where
5+
```
6+
7+
<details><summary>Imports</summary>
8+
9+
```agda
10+
open import foundation.dependent-pair-types
11+
open import foundation.dependent-products-propositions
12+
open import foundation.equivalences
13+
open import foundation.propositions
14+
open import foundation.universe-levels
15+
16+
open import structured-types.magmas
17+
```
18+
19+
</details>
20+
21+
## Idea
22+
23+
A [magma](structured-types.magmas.md) `A` is
24+
{{#concept "left-invertible" Disambiguation="magma" Agda=is-left-invertible-Magma}}
25+
if the multiplication map `μ(a,-) : A → A` is an
26+
[equivalence](foundation-core.equivalences.md) for every `a : A`. In other
27+
words, if multiplying by a fixed element on the left is always an equivalence.
28+
29+
Left-invertibility appears as Definition 2.1(4) of {{#cite BCFR23}} in the
30+
context of [H-spaces](structured-types.h-spaces.md).
31+
32+
## Definitions
33+
34+
### The predicate of being a left invertible magma
35+
36+
```agda
37+
module _
38+
{l : Level} (A : Magma l)
39+
where
40+
41+
is-left-invertible-Magma : UU l
42+
is-left-invertible-Magma = (a : type-Magma A) → is-equiv (mul-Magma A a)
43+
44+
is-prop-is-left-invertible-Magma : is-prop is-left-invertible-Magma
45+
is-prop-is-left-invertible-Magma =
46+
is-prop-Π (λ a → is-property-is-equiv (mul-Magma A a))
47+
48+
is-left-invertible-prop-Magma : Prop l
49+
is-left-invertible-prop-Magma =
50+
( is-left-invertible-Magma , is-prop-is-left-invertible-Magma)
51+
```
52+
53+
## References
54+
55+
{{#bibliography}}

src/structured-types/pointed-maps.lagda.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,12 @@ open import foundation.action-on-identifications-dependent-functions
1111
open import foundation.action-on-identifications-functions
1212
open import foundation.constant-maps
1313
open import foundation.dependent-pair-types
14+
open import foundation.dependent-products-truncated-types
1415
open import foundation.function-types
1516
open import foundation.identity-types
1617
open import foundation.transport-along-identifications
18+
open import foundation.truncated-types
19+
open import foundation.truncation-levels
1720
open import foundation.universe-levels
1821
1922
open import structured-types.pointed-dependent-functions
@@ -140,6 +143,21 @@ module _
140143
pr2 id-pointed-map = refl
141144
```
142145

146+
### Truncatedness of the type of pointed maps
147+
148+
```agda
149+
module _
150+
{l1 l2 : Level} {A : Pointed-Type l1} {B : Pointed-Type l2}
151+
where abstract
152+
153+
is-trunc-pointed-function-type :
154+
(k : 𝕋) → is-trunc k (type-Pointed-Type B) → is-trunc k (pointed-map A B)
155+
is-trunc-pointed-function-type k H =
156+
is-trunc-Σ
157+
( is-trunc-function-type k H)
158+
( λ f → is-trunc-Id H (f (point-Pointed-Type A)) (point-Pointed-Type B))
159+
```
160+
143161
## See also
144162

145163
- [Constant pointed maps](structured-types.constant-pointed-maps.md)

src/synthetic-homotopy-theory.lagda.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,7 @@ open import synthetic-homotopy-theory.morphisms-descent-data-circle public
103103
open import synthetic-homotopy-theory.morphisms-descent-data-pushouts public
104104
open import synthetic-homotopy-theory.morphisms-sequential-diagrams public
105105
open import synthetic-homotopy-theory.multiplication-circle public
106+
open import synthetic-homotopy-theory.multivariable-loop-spaces public
106107
open import synthetic-homotopy-theory.null-cocones-under-pointed-span-diagrams public
107108
open import synthetic-homotopy-theory.plus-principle public
108109
open import synthetic-homotopy-theory.powers-of-loops public

src/synthetic-homotopy-theory/cofibers-of-maps.lagda.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,12 @@ module _
6969
universal-property-pushout f (terminal-map A) cocone-cofiber
7070
universal-property-cofiber = up-pushout f (terminal-map A)
7171
72+
equiv-up-cofiber :
73+
{l : Level} (X : UU l) → (cofiber → X) ≃ cocone f (terminal-map A) X
74+
equiv-up-cofiber X =
75+
( cocone-map f (terminal-map A) cocone-cofiber ,
76+
universal-property-cofiber X)
77+
7278
dependent-universal-property-cofiber :
7379
dependent-universal-property-pushout f (terminal-map A) cocone-cofiber
7480
dependent-universal-property-cofiber = dup-pushout f (terminal-map A)
@@ -77,6 +83,11 @@ module _
7783
{l : Level} {X : UU l} → cocone f (terminal-map A) X → cofiber → X
7884
cogap-cofiber = cogap f (terminal-map A)
7985
86+
equiv-cogap-cofiber :
87+
{l : Level} (X : UU l) → cocone f (terminal-map A) X ≃ (cofiber → X)
88+
equiv-cogap-cofiber X =
89+
( cogap-cofiber , is-equiv-map-inv-is-equiv (universal-property-cofiber X))
90+
8091
dependent-cogap-cofiber :
8192
{l : Level} {P : cofiber → UU l}
8293
(c : dependent-cocone f (terminal-map A) (cocone-cofiber) P)

0 commit comments

Comments
 (0)