Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Universal property of fibers #944

Merged
merged 40 commits into from
Dec 5, 2023
Merged
Show file tree
Hide file tree
Changes from 23 commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
74e9d15
create universal property file
morphismz Nov 20, 2023
9f6ad0e
uniqueness
morphismz Nov 20, 2023
d019c97
Merge branch 'master' into universal-property-of-fibers
morphismz Nov 20, 2023
9ede5cb
uniqueness lemmas
morphismz Nov 20, 2023
4a8335a
finish universal property
morphismz Nov 21, 2023
f868ca2
Merge branch 'master' into universal-property-of-fibers
morphismz Nov 21, 2023
5ce8f57
Merge branch 'master' into universal-property-of-fibers
morphismz Nov 21, 2023
9f28219
merge conflics
morphismz Nov 25, 2023
97fcfbc
clean up
morphismz Nov 25, 2023
ecbf4be
imports
morphismz Nov 25, 2023
0a49f67
cleanup
morphismz Nov 25, 2023
669aeb2
pre-commit
morphismz Nov 25, 2023
a63321f
typo
morphismz Nov 25, 2023
4ce8502
typos
morphismz Nov 25, 2023
c9b1979
Apply suggestions from code review
morphismz Nov 28, 2023
13c201a
merge fixes
morphismz Nov 28, 2023
62901e0
dependent universal property of fibers
morphismz Nov 28, 2023
eb52420
fibers have the dependent universal property
morphismz Nov 29, 2023
854e29c
table
morphismz Nov 29, 2023
018f185
pre-commit
morphismz Nov 29, 2023
1eb88eb
Merge branch 'master' into universal-property-of-fibers
morphismz Nov 30, 2023
7ce23d5
minimize imports
morphismz Nov 30, 2023
e9a570d
imports
morphismz Nov 30, 2023
1902b69
Merge branch 'universal-property-of-fibers' of github.com:morphismz/a…
EgbertRijke Nov 30, 2023
bcefaa1
working through the universal property of fibers of maps
EgbertRijke Nov 30, 2023
512cd6a
work
EgbertRijke Dec 1, 2023
40fe613
Merge branch 'master' of github.com:UniMath/agda-unimath into univers…
EgbertRijke Dec 2, 2023
beb2c0f
everything compiles
EgbertRijke Dec 3, 2023
133fd8a
fix broken links, add entry to table
EgbertRijke Dec 3, 2023
bbce9e0
lifts and extensions of families of elements
EgbertRijke Dec 3, 2023
b1b9817
complete refactoring of Raymond's PR
EgbertRijke Dec 4, 2023
3340bda
refactoring double lifts and extensions of double lifts
EgbertRijke Dec 4, 2023
c65f4d7
complete refactoring
EgbertRijke Dec 4, 2023
ed218ff
typo
EgbertRijke Dec 4, 2023
a807504
Merge branch 'EgbertRijke-universal-property-fibers' into universal-p…
morphismz Dec 4, 2023
90bf5f6
Merge branch 'master' into universal-property-of-fibers
morphismz Dec 4, 2023
521f65b
typos
morphismz Dec 4, 2023
070f277
Merge branch 'master' into universal-property-of-fibers
morphismz Dec 5, 2023
68cd62c
Update tables/fibers-of-maps.md
morphismz Dec 5, 2023
fefd593
pre-commit
morphismz Dec 5, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions src/foundation.lagda.md
Original file line number Diff line number Diff line change
Expand Up @@ -349,6 +349,7 @@ open import foundation.universal-property-dependent-pair-types public
open import foundation.universal-property-empty-type public
open import foundation.universal-property-equivalences public
open import foundation.universal-property-fiber-products public
open import foundation.universal-property-fibers-of-maps public
open import foundation.universal-property-identity-systems public
open import foundation.universal-property-identity-types public
open import foundation.universal-property-image public
Expand Down
14 changes: 14 additions & 0 deletions src/foundation/equivalences.lagda.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ open import foundation.action-on-identifications-functions
open import foundation.cones-over-cospans
open import foundation.dependent-pair-types
open import foundation.equivalence-extensionality
open import foundation.families-of-equivalences
EgbertRijke marked this conversation as resolved.
Show resolved Hide resolved
open import foundation.function-extensionality
open import foundation.functoriality-fibers-of-maps
open import foundation.identity-types
Expand Down Expand Up @@ -248,6 +249,19 @@ module _
pr2 emb-map-equiv = is-emb-map-equiv
```

### Being a fiberwise equivalence is a proposition

```agda
module _
{l1 l2 l3 : Level} {A : UU l1} {B : A → UU l2} {C : A → UU l3}
where

is-property-is-fiberwise-equiv :
(f : (a : A) → B a → C a) → is-prop (is-fiberwise-equiv f)
is-property-is-fiberwise-equiv f =
is-prop-Π (λ a → is-property-is-equiv (f a))
```

morphismz marked this conversation as resolved.
Show resolved Hide resolved
### The 3-for-2 property of being an equivalence

#### If the right factor is an equivalence, then the left factor being an equivalence is equivalent to the composite being one
Expand Down
11 changes: 11 additions & 0 deletions src/foundation/families-of-equivalences.lagda.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,17 @@ module _

fiberwise-equiv : (B : A → UU l2) (C : A → UU l3) → UU (l1 ⊔ l2 ⊔ l3)
fiberwise-equiv B C = Σ ((x : A) → B x → C x) is-fiberwise-equiv

map-fiberwise-equiv :
{B : A → UU l2} {C : A → UU l3} →
fiberwise-equiv B C → (a : A) → B a → C a
map-fiberwise-equiv = pr1

is-fiberwise-equiv-fiberwise-equiv :
{B : A → UU l2} {C : A → UU l3} →
(e : fiberwise-equiv B C) →
is-fiberwise-equiv (map-fiberwise-equiv e)
is-fiberwise-equiv-fiberwise-equiv = pr2
```

### Families of equivalences
Expand Down
66 changes: 66 additions & 0 deletions src/foundation/fibers-of-maps.lagda.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,13 @@ open import foundation.action-on-identifications-functions
open import foundation.cones-over-cospans
open import foundation.contractible-types
open import foundation.dependent-pair-types
open import foundation.dependent-universal-property-equivalences
open import foundation.equivalences
open import foundation.type-arithmetic-dependent-pair-types
open import foundation.type-arithmetic-unit-type
open import foundation.unit-type
open import foundation.universal-property-dependent-pair-types
open import foundation.universal-property-fibers-of-maps
open import foundation.universe-levels

open import foundation-core.constant-maps
Expand Down Expand Up @@ -110,6 +113,69 @@ module _
inv-equiv equiv-total-fiber-terminal-map
```

### The family of fibers has the universal property of fibers of maps

```agda
module _
{l1 l2 : Level} {A : UU l1} {B : UU l2} (f : A → B)
where

section-family-of-fibers :
(a : A) → fiber f (f a)
pr1 (section-family-of-fibers a) = a
pr2 (section-family-of-fibers a) = refl

equiv-up-family-of-fibers :
{l : Level} → (P : B → UU l) →
((b : B) → fiber f b → P b) ≃ ((a : A) → P (f a))
morphismz marked this conversation as resolved.
Show resolved Hide resolved
equiv-up-family-of-fibers P =
equivalence-reasoning
( (b : B) → fiber f b → P b)
≃ ((w : Σ B (λ b → fiber f b)) → P (pr1 w))
by equiv-ind-Σ
≃ ((a : A) → P (f a))
by
equiv-precomp-Π
( inv-equiv-total-fiber f)
( λ w → P (pr1 w))

up-family-of-fibers :
universal-property-fiber f (fiber f) (section-family-of-fibers)
up-family-of-fibers P =
is-equiv-map-equiv (equiv-up-family-of-fibers P)
```

### The family of fibers has the dependent universal property of fibers of maps

```agda
module _
{l1 l2 : Level} {A : UU l1} {B : UU l2} (f : A → B)
where

equiv-dependent-up-family-of-fibers :
{l : Level} (P : (b : B) → fiber f b → UU l) →
( ( b : B) (z : fiber f b) → P b z) ≃
( ( a : A) → P (f a) (section-family-of-fibers f a))
equiv-dependent-up-family-of-fibers P =
equivalence-reasoning
( ( b : B) (z : fiber f b) → P b z)
≃ ((w : Σ B (λ b → fiber f b)) → P (pr1 w) (pr2 w))
by equiv-ind-Σ
≃ ((a : A) → P (f a) (section-family-of-fibers f a))
by
equiv-precomp-Π
( inv-equiv-total-fiber f)
( λ w → P (pr1 w) (pr2 w))

dependent-up-family-of-fibers :
dependent-universal-property-fiber
( f)
( fiber f)
( section-family-of-fibers f)
dependent-up-family-of-fibers P =
is-equiv-map-equiv (equiv-dependent-up-family-of-fibers P)
```

### Transport in fibers

```agda
Expand Down
13 changes: 13 additions & 0 deletions src/foundation/function-types.lagda.md
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,19 @@ module _
( eq-htpy-refl-htpy (h (i s))))
```

### Composing families of functions

```agda
module _
{l1 l2 l3 l4 : Level} {A : UU l1} {B : A → UU l2} {C : A → UU l3}
{D : A → UU l4}
where

dependent-comp :
((a : A) → C a → D a) → ((a : A) → B a → C a) → (a : A) → B a → D a
dependent-comp g f a b = g a (f a b)
```

morphismz marked this conversation as resolved.
Show resolved Hide resolved
## See also

### Table of files about function types, composition, and equivalences
Expand Down
Loading