The category of sets
Content created by Egbert Rijke, Fredrik Bakke, Julian KG, fernabnor and louismntnu.
Created on 2023-05-06.
Last modified on 2023-09-15.
module foundation.category-of-sets where
Imports
open import category-theory.categories open import category-theory.isomorphisms-in-large-precategories open import category-theory.large-categories open import category-theory.large-precategories open import category-theory.precategories open import foundation.dependent-pair-types open import foundation.fundamental-theorem-of-identity-types open import foundation.isomorphisms-of-sets open import foundation.sets open import foundation.universe-levels open import foundation-core.contractible-types open import foundation-core.function-types open import foundation-core.functoriality-dependent-pair-types open import foundation-core.identity-types
Idea
The category of sets consists of sets and functions. There is a category of sets for each universe level, and there is a large category of sets.
Definitions
The large precategory of sets
Set-Large-Precategory : Large-Precategory lsuc (_⊔_) obj-Large-Precategory Set-Large-Precategory = Set hom-Large-Precategory Set-Large-Precategory = hom-Set comp-hom-Large-Precategory Set-Large-Precategory g f = g ∘ f id-hom-Large-Precategory Set-Large-Precategory = id associative-comp-hom-Large-Precategory Set-Large-Precategory h g f = refl left-unit-law-comp-hom-Large-Precategory Set-Large-Precategory f = refl right-unit-law-comp-hom-Large-Precategory Set-Large-Precategory f = refl
The large category of sets
id-iso-Set : {l : Level} {X : obj-Large-Precategory Set-Large-Precategory l} → iso-Large-Precategory Set-Large-Precategory X X id-iso-Set {l} {X} = id-iso-Large-Precategory (Set-Large-Precategory) {l} {X} iso-eq-Set : {l : Level} (X Y : obj-Large-Precategory Set-Large-Precategory l) → X = Y → iso-Large-Precategory Set-Large-Precategory X Y iso-eq-Set = iso-eq-Large-Precategory Set-Large-Precategory is-large-category-Set-Large-Precategory : is-large-category-Large-Precategory Set-Large-Precategory is-large-category-Set-Large-Precategory {l} X = fundamental-theorem-id ( is-contr-equiv' ( Σ (Set l) (type-equiv-Set X)) ( equiv-tot (equiv-iso-equiv-Set X)) ( is-contr-total-equiv-Set X)) ( iso-eq-Set X) Set-Large-Category : Large-Category lsuc (_⊔_) large-precategory-Large-Category Set-Large-Category = Set-Large-Precategory is-large-category-Large-Category Set-Large-Category = is-large-category-Set-Large-Precategory
The precategory of small sets
Set-Precategory : (l : Level) → Precategory (lsuc l) l Set-Precategory = precategory-Large-Precategory Set-Large-Precategory
The category of small sets
The precategory of sets and functions in a given universe is a category.
Set-Category : (l : Level) → Category (lsuc l) l Set-Category = category-Large-Category Set-Large-Category is-category-Set-Precategory : (l : Level) → is-category-Precategory (Set-Precategory l) is-category-Set-Precategory l = is-category-Category (Set-Category l)
Recent changes
- 2023-09-15. Egbert Rijke. update contributors, remove unused imports (#772).
- 2023-09-13. Fredrik Bakke and Egbert Rijke. Refactor structured monoids (#761).
- 2023-06-25. Fredrik Bakke, louismntnu, fernabnor, Egbert Rijke and Julian KG. Posets are categories, and refactor binary relations (#665).
- 2023-06-10. Egbert Rijke. cleaning up transport and dependent identifications files (#650).
- 2023-06-08. Fredrik Bakke. Remove empty
foundation
modules and replace them by their core counterparts (#644).