Embeddings between precategories

Content created by Fredrik Bakke and Egbert Rijke.

Created on 2023-10-16.
Last modified on 2024-02-06.

module category-theory.embeddings-precategories where
Imports
open import category-theory.embedding-maps-precategories
open import category-theory.functors-precategories
open import category-theory.maps-precategories
open import category-theory.precategories

open import foundation.dependent-pair-types
open import foundation.propositions
open import foundation.universe-levels

Idea

A functor between precategories C and D is an embedding if it's an embedding on objects and fully faithful. Hence embeddings are functors that are embeddings on objects and equivalences on hom-sets.

Definition

The predicate on maps between precategories of being an embedding

module _
  {l1 l2 l3 l4 : Level}
  (C : Precategory l1 l2)
  (D : Precategory l3 l4)
  (F : map-Precategory C D)
  where

  is-embedding-prop-map-Precategory : Prop (l1  l2  l3  l4)
  is-embedding-prop-map-Precategory =
    product-Prop
      ( is-functor-prop-map-Precategory C D F)
      ( is-embedding-map-prop-map-Precategory C D F)

  is-embedding-map-Precategory : UU (l1  l2  l3  l4)
  is-embedding-map-Precategory =
    type-Prop is-embedding-prop-map-Precategory

  is-prop-is-embedding-map-Precategory : is-prop is-embedding-map-Precategory
  is-prop-is-embedding-map-Precategory =
    is-prop-type-Prop is-embedding-prop-map-Precategory

The predicate on functors between precategories of being an embedding

module _
  {l1 l2 l3 l4 : Level}
  (C : Precategory l1 l2)
  (D : Precategory l3 l4)
  (F : functor-Precategory C D)
  where

  is-embedding-prop-functor-Precategory : Prop (l1  l2  l3  l4)
  is-embedding-prop-functor-Precategory =
    is-embedding-map-prop-map-Precategory C D (map-functor-Precategory C D F)

  is-embedding-functor-Precategory : UU (l1  l2  l3  l4)
  is-embedding-functor-Precategory =
    type-Prop is-embedding-prop-functor-Precategory

  is-prop-is-embedding-functor-Precategory :
    is-prop is-embedding-functor-Precategory
  is-prop-is-embedding-functor-Precategory =
    is-prop-type-Prop is-embedding-prop-functor-Precategory

The type of embeddings between precategories

module _
  {l1 l2 l3 l4 : Level}
  (C : Precategory l1 l2)
  (D : Precategory l3 l4)
  where

  embedding-Precategory : UU (l1  l2  l3  l4)
  embedding-Precategory =
    Σ (functor-Precategory C D) (is-embedding-functor-Precategory C D)

  functor-embedding-Precategory :
    embedding-Precategory  functor-Precategory C D
  functor-embedding-Precategory = pr1

  is-embedding-embedding-Precategory :
    (e : embedding-Precategory) 
    is-embedding-functor-Precategory C D (functor-embedding-Precategory e)
  is-embedding-embedding-Precategory = pr2

Recent changes