[QED] The ad-hoc product category has hom-sets that are h-sets
This commit is contained in:
parent
1e5fb7d50a
commit
172287f0a7
|
@ -199,6 +199,12 @@ record IsCategory {ℓa ℓb : Level} (ℂ : RawCategory ℓa ℓb) : Set (lsuc
|
||||||
univalent≃ : Univalent≃
|
univalent≃ : Univalent≃
|
||||||
univalent≃ = _ , univalent
|
univalent≃ = _ , univalent
|
||||||
|
|
||||||
|
module _ {A B : Object} where
|
||||||
|
open import Cat.Equivalence using (module Equiv≃)
|
||||||
|
|
||||||
|
iso-to-id : (A ≅ B) → (A ≡ B)
|
||||||
|
iso-to-id = fst (Equiv≃.toIso _ _ univalent)
|
||||||
|
|
||||||
-- | All projections are propositions.
|
-- | All projections are propositions.
|
||||||
module Propositionality where
|
module Propositionality where
|
||||||
propIsAssociative : isProp IsAssociative
|
propIsAssociative : isProp IsAssociative
|
||||||
|
|
|
@ -160,36 +160,30 @@ module Try0 {ℓa ℓb : Level} {ℂ : Category ℓa ℓb}
|
||||||
l = ℂ.rightIdentity
|
l = ℂ.rightIdentity
|
||||||
|
|
||||||
arrowsAreSets : ArrowsAreSets
|
arrowsAreSets : ArrowsAreSets
|
||||||
arrowsAreSets {X , x0 , x1} {Y , y0 , y1} (f , f0 , f1) (g , g0 , g1) p q = pq
|
arrowsAreSets {X , x0 , x1} {Y , y0 , y1}
|
||||||
where
|
= sigPresNType {n = ⟨0⟩} ℂ.arrowsAreSets λ a → propSet (propEqs _)
|
||||||
-- prop : ∀ {X Y} (x y : ℂ.Arrow X Y) → isProp (x ≡ y)
|
|
||||||
-- prop = ℂ.arrowsAreSets
|
|
||||||
a0 a1 : f ≡ g
|
|
||||||
a0 i = proj₁ (p i)
|
|
||||||
a1 i = proj₁ (q i)
|
|
||||||
a : a0 ≡ a1
|
|
||||||
a = ℂ.arrowsAreSets _ _ a0 a1
|
|
||||||
module _ (i : I) where
|
|
||||||
r : f ≡ g
|
|
||||||
r = a i
|
|
||||||
module _ (j : I) where
|
|
||||||
prop0 : isProp (ℂ [ y0 ∘ r j ] ≡ x0)
|
|
||||||
prop0 = ℂ.arrowsAreSets _ _
|
|
||||||
prop1 : isProp (ℂ [ y1 ∘ r j ] ≡ x1)
|
|
||||||
prop1 = ℂ.arrowsAreSets _ _
|
|
||||||
prop : isProp (ℂ [ y0 ∘ r j ] ≡ x0 × ℂ [ y1 ∘ r j ] ≡ x1)
|
|
||||||
prop = propSig prop0 (λ _ → prop1)
|
|
||||||
helper : (b0 b1 : (ℂ [ y0 ∘ r j ]) ≡ x0 × (ℂ [ y1 ∘ r j ]) ≡ x1) → b0 ≡ b1
|
|
||||||
helper _ _ = lemPropF (λ _ → prop) p
|
|
||||||
b : (ℂ [ y0 ∘ r j ]) ≡ x0 × (ℂ [ y1 ∘ r j ]) ≡ x1
|
|
||||||
b = {!!}
|
|
||||||
pq : p ≡ q
|
|
||||||
pq i j = a i j , b i j
|
|
||||||
|
|
||||||
open Univalence isIdentity
|
open Univalence isIdentity
|
||||||
|
|
||||||
univalent : Univalent
|
univalent : Univalent
|
||||||
univalent {A , a0 , a1} {B , b0 , b1} = {!!}
|
univalent {X , x} {Y , y} = {!res!}
|
||||||
|
where
|
||||||
|
open import Cat.Equivalence as E hiding (_≅_)
|
||||||
|
open import Cubical.Univalence
|
||||||
|
module _ (c : (X , x) ≅ (Y , y)) where
|
||||||
|
-- module _ (c : _ ≅ _) where
|
||||||
|
c0 : X ℂ.≅ Y
|
||||||
|
c0 = {!!}
|
||||||
|
f0 : X ≡ Y
|
||||||
|
f0 = ℂ.iso-to-id c0
|
||||||
|
f1 : PathP (λ i → ℂ.Arrow (f0 i) A × ℂ.Arrow (f0 i) B) x y
|
||||||
|
f1 = {!!}
|
||||||
|
f : (X , x) ≡ (Y , y)
|
||||||
|
f i = f0 i , f1 i
|
||||||
|
iso : E.Isomorphism (id-to-iso (X , x) (Y , y))
|
||||||
|
iso = f , record { verso-recto = {!!} ; recto-verso = {!!} }
|
||||||
|
res : isEquiv ((X , x) ≡ (Y , y)) ((X , x) ≅ (Y , y)) (id-to-iso (X , x) (Y , y))
|
||||||
|
res = Equiv≃.fromIso _ _ iso
|
||||||
|
|
||||||
isCat : IsCategory raw
|
isCat : IsCategory raw
|
||||||
isCat = record
|
isCat = record
|
||||||
|
|
|
@ -28,7 +28,7 @@ open import Cubical.NType.Properties
|
||||||
propIsContr : {ℓ : Level} → {A : Set ℓ} → isProp (isContr A)
|
propIsContr : {ℓ : Level} → {A : Set ℓ} → isProp (isContr A)
|
||||||
propIsContr = propHasLevel ⟨-2⟩
|
propIsContr = propHasLevel ⟨-2⟩
|
||||||
|
|
||||||
open import Cubical.Sigma using (setSig ; sigPresSet) public
|
open import Cubical.Sigma using (setSig ; sigPresSet ; sigPresNType) public
|
||||||
|
|
||||||
module _ (ℓ : Level) where
|
module _ (ℓ : Level) where
|
||||||
-- FIXME Ask if we can push upstream.
|
-- FIXME Ask if we can push upstream.
|
||||||
|
|
Loading…
Reference in a new issue