Quotients of finite types

Content created by Egbert Rijke, Jonathan Prieto-Cubides and Fredrik Bakke.

Created on 2022-06-23.
Last modified on 2023-11-24.

module univalent-combinatorics.quotients-finite-types where
Imports
open import foundation.dependent-pair-types
open import foundation.universe-levels

open import univalent-combinatorics.decidable-equivalence-relations
open import univalent-combinatorics.decidable-subtypes
open import univalent-combinatorics.finite-types
open import univalent-combinatorics.image-of-maps

Idea

The quotient of a finite type by a decidable equivalence relation is again a finite type. In this file we set up some infrastructure for such quotients.

Definition

module _
  {l1 l2 : Level} (X : 𝔽 l1) (R : Decidable-equivalence-relation-𝔽 l2 X)
  where

  equivalence-class-Decidable-equivalence-relation-𝔽 : UU (l1  lsuc l2)
  equivalence-class-Decidable-equivalence-relation-𝔽 =
    im (decidable-relation-Decidable-equivalence-relation-𝔽 X R)

  is-finite-equivalence-class-Decidable-equivalence-relation-𝔽' :
    is-finite equivalence-class-Decidable-equivalence-relation-𝔽
  is-finite-equivalence-class-Decidable-equivalence-relation-𝔽' =
    is-finite-im
      ( is-finite-type-𝔽 X)
      ( has-decidable-equality-Subset-𝔽 X)

  quotient-𝔽 : 𝔽 (l1  lsuc l2)
  pr1 quotient-𝔽 = equivalence-class-Decidable-equivalence-relation-𝔽
  pr2 quotient-𝔽 = is-finite-equivalence-class-Decidable-equivalence-relation-𝔽'

Recent changes