Large dependent pair types

Content created by Fredrik Bakke and Egbert Rijke.

Created on 2023-03-23.
Last modified on 2023-09-10.

module foundation.large-dependent-pair-types where
Imports
open import foundation.universe-levels

Idea

When B is a family of large types over A, then we can form the large type of pairs pairω a b consisting of an element a : A and an element b : B a. Such pairs are called dependent pairs, since the type of the second component depends on the first component.

Definition

record Σω (A : UUω) (B : A  UUω) : UUω where
  constructor pairω
  field
    prω1 : A
    prω2 : B prω1

open Σω public

infixr 3 _,ω_
pattern _,ω_ a b = pairω a b

Families on dependent pair types

module _
  {l : Level} {A : UUω} {B : A  UUω}
  where

  fam-Σω : ((x : A)  B x  UU l)  Σω A B  UU l
  fam-Σω C (pairω x y) = C x y

Recent changes