[WIP] Finnish all intermediate steps for univalence of hSets
This commit is contained in:
parent
2188e690a0
commit
66cb5b363d
|
@ -221,17 +221,25 @@ module _ (ℓ : Level) where
|
||||||
step0 = lem3 (λ f → sym≃ (lem4 sA sB f))
|
step0 = lem3 (λ f → sym≃ (lem4 sA sB f))
|
||||||
-- univalence
|
-- univalence
|
||||||
step1 : Σ (A → B) (isEquiv A B) ≃ (A ≡ B)
|
step1 : Σ (A → B) (isEquiv A B) ≃ (A ≡ B)
|
||||||
step1 =
|
step1 = hh ⊙ h
|
||||||
let
|
where
|
||||||
h : (A ≃ B) ≃ (A ≡ B)
|
h : (A ≃ B) ≃ (A ≡ B)
|
||||||
h = sym≃ (univalence {A = A} {B})
|
h = sym≃ (univalence {A = A} {B})
|
||||||
k : Σ _ (isEquiv (A ≃ B) (A ≡ B))
|
obv : Σ (A → B) (isEquiv A B) → A ≃ B
|
||||||
k = Eqv.doEta h
|
obv = Eqv.deEta
|
||||||
|
inv : A ≃ B → Σ (A → B) (isEquiv A B)
|
||||||
|
inv = Eqv.doEta
|
||||||
|
re-ve : (x : _) → (inv ∘ obv) x ≡ x
|
||||||
|
re-ve x = refl
|
||||||
|
-- Because _≃_ does not have eta equality!
|
||||||
|
ve-re : (x : _) → (obv ∘ inv) x ≡ x
|
||||||
|
ve-re (con eqv isEqv) i = con eqv isEqv
|
||||||
|
areInv : AreInverses obv inv
|
||||||
|
areInv = record { verso-recto = funExt re-ve ; recto-verso = funExt ve-re }
|
||||||
eqv : Σ (A → B) (isEquiv A B) Eqv.≅ (A ≃ B)
|
eqv : Σ (A → B) (isEquiv A B) Eqv.≅ (A ≃ B)
|
||||||
eqv = {!!} , {!!} , {!!}
|
eqv = obv , inv , areInv
|
||||||
hh : Σ (A → B) (isEquiv A B) ≃ (A ≃ B)
|
hh : Σ (A → B) (isEquiv A B) ≃ (A ≃ B)
|
||||||
hh = Eeq.fromIsomorphism eqv
|
hh = Eeq.fromIsomorphism eqv
|
||||||
in hh ⊙ h
|
|
||||||
|
|
||||||
-- lem2 with propIsSet
|
-- lem2 with propIsSet
|
||||||
step2 : (A ≡ B) ≃ (hA ≡ hB)
|
step2 : (A ≡ B) ≃ (hA ≡ hB)
|
||||||
|
|
Loading…
Reference in a new issue