Chuangjie Xu 2026
This module defines the basic structure of a Category with Family (CwF).
Additional structure such as Pi types, Sigma types, and other type
constructors are developed in separate, specialized modules to maintain
modularity and clarity of the core definitions.
\begin{code}
{-# OPTIONS --safe --without-K #-}
module C-Spaces.CwFs.Base where
open import MLTT.Spartan
record CwFStructure : (๐ค โ ๐ฅ)โบ ฬ where
field
Con : ๐ค ฬ
Sub : Con โ Con โ ๐ฅ ฬ
idSub : {ฮ : Con} โ Sub ฮ ฮ
_โ_ : {ฮ ฮ ฮ : Con} โ Sub ฮ ฮ โ Sub ฮ ฮ โ Sub ฮ ฮ
ฮต : Con
ฮตSub : {ฮ : Con} โ Sub ฮ ฮต
Ty : Con โ ๐ค ฬ
_[_] : {ฮ ฮ : Con} โ Ty ฮ โ Sub ฮ ฮ โ Ty ฮ
Tm : (ฮ : Con) โ Ty ฮ โ ๐ฅ ฬ
_โ
_โ : {ฮ ฮ : Con} {A : Ty ฮ} โ Tm ฮ A โ (ฯ : Sub ฮ ฮ) โ Tm ฮ (A [ ฯ ])
_โ_ : (ฮ : Con) โ Ty ฮ โ Con
โจ_,_โฉ : {ฮ ฮ : Con} {A : Ty ฮ}
โ (ฯ : Sub ฮ ฮ) โ Tm ฮ (A [ ฯ ]) โ Sub ฮ (ฮ โ A)
p : {ฮ : Con} {A : Ty ฮ} โ Sub (ฮ โ A) ฮ
q : {ฮ : Con} {A : Ty ฮ} โ Tm (ฮ โ A) (A [ p ])
record CwFLaws {๐ค : Universe} {๐ฅ : Universe}
(S : CwFStructure {๐ค} {๐ฅ})
: (๐ค โ ๐ฅ)โบ ฬ where
open CwFStructure S
field
idl : {ฮ ฮ : Con} {ฯ : Sub ฮ ฮ}
โ idSub โ ฯ ๏ผ ฯ
idr : {ฮ ฮ : Con} {ฯ : Sub ฮ ฮ}
โ ฯ โ idSub ๏ผ ฯ
โ-assoc : {ฮ ฮ ฮ ฮ : Con} {ฯ : Sub ฮ ฮ} {ฯ : Sub ฮ ฮ} {ฯ : Sub ฮ ฮ}
โ (ฯ โ ฯ) โ ฯ ๏ผ ฯ โ (ฯ โ ฯ)
ฮตSub-unique : {ฮ : Con} {ฯ : Sub ฮ ฮต}
โ ฯ ๏ผ ฮตSub
ty[id] : {ฮ : Con} {A : Ty ฮ}
โ A [ idSub ] ๏ผ A
ty[โ] : {ฮ ฮ ฮ : Con} {A : Ty ฮ} {ฯ : Sub ฮ ฮ} {ฯ : Sub ฮ ฮ}
โ A [ ฯ โ ฯ ] ๏ผ A [ ฯ ] [ ฯ ]
tm[id] : {ฮ : Con} {A : Ty ฮ} {t : Tm ฮ A}
โ transport (Tm ฮ) ty[id]
(t โ
idSub โ) ๏ผ t
tm[โ] : {ฮ ฮ ฮ : Con} {A : Ty ฮ} {t : Tm ฮ A} {ฯ : Sub ฮ ฮ} {ฯ : Sub ฮ ฮ}
โ transport (Tm ฮ) ty[โ]
(t โ
ฯ โ ฯ โ) ๏ผ t โ
ฯ โ โ
ฯ โ
p,-ฮฒ : {ฮ ฮ : Con} {A : Ty ฮ} {ฯ : Sub ฮ ฮ} {t : Tm ฮ (A [ ฯ ])}
โ p โ โจ ฯ , t โฉ ๏ผ ฯ
q,-ฮฒ : {ฮ ฮ : Con} {A : Ty ฮ} {ฯ : Sub ฮ ฮ} {t : Tm ฮ (A [ ฯ ])}
โ transport (Tm ฮ) {(A [ p ]) [ โจ ฯ , t โฉ ]} (ty[โ] โปยน โ ap (A [_]) p,-ฮฒ)
(q โ
โจ ฯ , t โฉ โ) ๏ผ t
p,q-ฮท : {ฮ ฮ : Con} {A : Ty ฮ} {ฯ : Sub ฮ ฮ} {t : Tm ฮ (A [ ฯ ])}
โ โจ p , q โฉ ๏ผ idSub {ฮ โ A}
,โ-distrib : {ฮ ฮ ฮ : Con} {A : Ty ฮ} {ฯ : Sub ฮ ฮ} {t : Tm ฮ (A [ ฯ ])} {ฯ : Sub ฮ ฮ}
โ โจ ฯ , t โฉ โ ฯ ๏ผ โจ ฯ โ ฯ , transport (Tm ฮ) {(A [ ฯ ]) [ ฯ ]} {A [ ฯ โ ฯ ]} (ty[โ] โปยน)
(t โ
ฯ โ) โฉ
record CwF : (๐ค โ ๐ฅ)โบ ฬ where
field
structure : CwFStructure {๐ค} {๐ฅ}
laws : CwFLaws structure
open CwFStructure structure public
open CwFLaws laws public
\end{code}