edits to trinitarianism/quest 5

This commit is contained in:
Jlh18 2021-11-05 23:31:43 +00:00
parent eb5587b25f
commit 8afbf9d4c2
2 changed files with 11 additions and 21 deletions

View File

@ -3,7 +3,7 @@ module 0Trinitarianism.Quest5Solutions where
open import Cubical.Foundations.Prelude renaming (subst to endPt ; transport to pathToFun)
open import Cubical.HITs.S1 using ( ; base ; loop )
open import Cubical.Foundations.Isomorphism renaming (Iso to _≅_)
open import Cubical.Foundations.Path
open import Cubical.Foundations.Path renaming (PathPIsoPath to PathPIsoPathD)
open import 1FundamentalGroup.Quest0Solutions
open import Cubical.Data.Bool
@ -17,33 +17,23 @@ outOfS¹P B b p base = b
outOfS¹P B b p (loop i) = p i
outOfS¹D : (B : Type) (b : B base) b b along (λ i B (loop i)) (x : ) B x
outOfS¹D B b p x = outOfS¹P B b (_≅_.inv (PathPIsoPath (λ i B (loop i)) b b) p) x
-- example : (x : S¹) → doubleCover x → Bool
-- example = outOfS¹D (λ x → doubleCover x → Bool) (λ x → true)
-- (pathToFun (λ i → (doubleCover (loop i)) → Bool) (λ x → true)
-- ≡⟨ refl ⟩
-- pathToFun (λ i → flipPath i → Bool) (λ x → true)
-- ≡⟨ refl ⟩
-- (λ x → true)
-- ∎)
outOfS¹D B b p x = outOfS¹P B b (_≅_.inv (PathPIsoPathD (λ i B (loop i)) b b) p) x
example : (x : ) doubleCover x doubleCover x
example base = Flip
example (loop i) = p i where
p : PathP (λ i doubleCover (loop i) doubleCover (loop i)) Flip Flip
p = {!!}
lem : (x : Bool) pathToFun (λ i flipPath i flipPath i) Flip x Flip x
lem false = refl
lem true = refl
p : PathP (λ i flipPath i flipPath i) Flip Flip
p = _≅_.inv (PathPIsoPathD (λ i flipPath i flipPath i) Flip Flip) (funExt lem)
-- repeating the example but using our API
example' : (x : ) doubleCover x doubleCover x
example' = outOfS¹D (λ x doubleCover x doubleCover x) Flip
(
pathToFun (λ i doubleCover (loop i) doubleCover (loop i)) Flip
≡⟨ refl
pathToFun (λ i flipPath i flipPath i) Flip
≡⟨ funExt lem
Flip
) where
example' = outOfS¹D (λ x doubleCover x doubleCover x) Flip (funExt lem) where
lem : (x : Bool) pathToFun (λ i flipPath i flipPath i) Flip x Flip x
lem false = refl