univalence in product-category step1
This commit is contained in:
parent
e25ef31907
commit
c1f58b1a4f
|
@ -214,32 +214,10 @@ module Try0 {ℓa ℓb : Level} {ℂ : Category ℓa ℓb}
|
||||||
× PathP (λ i → ℂ.Arrow (p i) B) xb yb
|
× PathP (λ i → ℂ.Arrow (p i) B) xb yb
|
||||||
)
|
)
|
||||||
step1
|
step1
|
||||||
= (λ{ (p , x)
|
= symIso
|
||||||
→ (ℂ.idToIso _ _ p)
|
(isoSigFst {A = (X ℂ.≅ Y)} {B = (X ≡ Y)} {!!} {Q = \ p → (PathP (λ i → ℂ.Arrow (p i) A) xa ya) × (PathP (λ i → ℂ.Arrow (p i) B) xb yb)} ℂ.isoToId
|
||||||
, let
|
(symIso (_ , ℂ.asTypeIso {X} {Y}) .snd))
|
||||||
P-l : (p : X ≡ Y) → Set _
|
|
||||||
P-l φ = PathP (λ i → ℂ.Arrow (φ i) A) xa ya
|
|
||||||
P-r : (p : X ≡ Y) → Set _
|
|
||||||
P-r φ = PathP (λ i → ℂ.Arrow (φ i) B) xb yb
|
|
||||||
left : P-l p
|
|
||||||
left = fst x
|
|
||||||
right : P-r p
|
|
||||||
right = snd x
|
|
||||||
in subst {P = P-l} iso-id-inv left , subst {P = P-r} iso-id-inv right
|
|
||||||
})
|
|
||||||
-- Goal is:
|
|
||||||
--
|
|
||||||
-- φ x
|
|
||||||
--
|
|
||||||
-- where `x` is
|
|
||||||
--
|
|
||||||
-- ℂ.isoToId (ℂ.idToIso _ _ p)
|
|
||||||
--
|
|
||||||
-- I have `φ p` in scope, but surely `p` and `x` are the same - though
|
|
||||||
-- perhaps not definitonally.
|
|
||||||
, (λ{ (iso , x) → ℂ.isoToId iso , x})
|
|
||||||
, funExt (λ{ (p , q , r) → Σ≡ (sym iso-id-inv) {!!}})
|
|
||||||
, funExt (λ x → Σ≡ (sym id-iso-inv) {!!})
|
|
||||||
step2
|
step2
|
||||||
: Σ (X ℂ.≅ Y) (λ iso
|
: Σ (X ℂ.≅ Y) (λ iso
|
||||||
→ let p = ℂ.isoToId iso
|
→ let p = ℂ.isoToId iso
|
||||||
|
|
|
@ -39,6 +39,23 @@ module _ {ℓa ℓb : Level} where
|
||||||
_≅_ : Set ℓa → Set ℓb → Set _
|
_≅_ : Set ℓa → Set ℓb → Set _
|
||||||
A ≅ B = Σ (A → B) Isomorphism
|
A ≅ B = Σ (A → B) Isomorphism
|
||||||
|
|
||||||
|
symIso : ∀ {ℓa ℓb} {A : Set ℓa}{B : Set ℓb} → A ≅ B → B ≅ A
|
||||||
|
symIso (f , g , p , q)= g , f , q , p
|
||||||
|
|
||||||
|
module _ {ℓa ℓb ℓc} {A : Set ℓa} {B : Set ℓb} (sB : isSet B) {Q : B → Set ℓc} (f : A → B) where
|
||||||
|
|
||||||
|
Σ-fst-map : Σ A (\ a → Q (f a)) → Σ B Q
|
||||||
|
Σ-fst-map (x , q) = f x , q
|
||||||
|
|
||||||
|
isoSigFst : Isomorphism f → Σ A (\ a → Q (f a)) ≅ (Σ B Q)
|
||||||
|
isoSigFst (g , g-f , f-g) = Σ-fst-map
|
||||||
|
, (\ { (b , q) → g b , transp (\ i → Q (f-g (~ i) b)) q })
|
||||||
|
, funExt (\ { (a , q) → Cat.Prelude.Σ≡ (\ i → g-f i a)
|
||||||
|
let r = (transp-iso' ((λ i → Q (f-g (i) (f a)))) q) in
|
||||||
|
transp (\ i → PathP (\ j → Q (sB _ _ (λ j₁ → f-g j₁ (f a)) (λ j₁ → f (g-f j₁ a)) i j)) (transp (λ i₁ → Q (f-g (~ i₁) (f a))) q) q) r })
|
||||||
|
, funExt (\ { (b , q) → Cat.Prelude.Σ≡ (\ i → f-g i b) (transp-iso' (λ i → Q (f-g i b)) q)})
|
||||||
|
|
||||||
|
|
||||||
module _ {ℓ : Level} {A B : Set ℓ} {f : A → B}
|
module _ {ℓ : Level} {A B : Set ℓ} {f : A → B}
|
||||||
(g : B → A) (s : {A B : Set ℓ} → isSet (A → B)) where
|
(g : B → A) (s : {A B : Set ℓ} → isSet (A → B)) where
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue