put quest0 sie quests into quest0.
This commit is contained in:
parent
12c7044889
commit
87834c2ae0
@ -1,6 +1,6 @@
|
||||
module 1FundamentalGroup.Preambles.P0 where
|
||||
|
||||
open import Cubical.Data.Empty public
|
||||
open import Cubical.Data.Empty using (⊥) public
|
||||
open import Cubical.Data.Unit renaming ( Unit to ⊤ ) public
|
||||
open import Cubical.Data.Bool public
|
||||
open import Cubical.Foundations.Prelude renaming ( subst to endPt ) public
|
||||
|
@ -1,6 +0,0 @@
|
||||
module 1FundamentalGroup.Preambles.PEmpty where
|
||||
|
||||
open import Cubical.Foundations.Prelude public
|
||||
open import Cubical.Data.Empty renaming (rec to ⊥Rec) public
|
||||
open import Cubical.Foundations.Isomorphism renaming (Iso to _≅_) public
|
||||
|
@ -1,6 +0,0 @@
|
||||
module 1FundamentalGroup.Preambles.PTrueNotFalse where
|
||||
|
||||
open import Cubical.Data.Empty public
|
||||
open import Cubical.Data.Unit renaming ( Unit to ⊤ ) public
|
||||
open import Cubical.Data.Bool using (Bool ; true ; false) public
|
||||
open import Cubical.Foundations.Prelude public
|
@ -23,3 +23,42 @@ endPtOfTrue p = {!!}
|
||||
|
||||
Refl≢loop : Refl ≡ loop → ⊥
|
||||
Refl≢loop p = {!!}
|
||||
|
||||
------------------- Side Quest - Empty -------------------------
|
||||
|
||||
{-
|
||||
-- This is a comment box,
|
||||
-- remove the {- and -} to do the side quests
|
||||
|
||||
toEmpty : (A : Type) → Type
|
||||
toEmpty A = {!!}
|
||||
|
||||
pathEmpty : (A : Type) → Type₁
|
||||
pathEmpty A = {!!}
|
||||
|
||||
isoEmpty : (A : Type) → Type
|
||||
isoEmpty A = {!!}
|
||||
|
||||
outOf⊥ : (A : Type) → ⊥ → A
|
||||
outOf⊥ A ()
|
||||
|
||||
toEmpty→isoEmpty : (A : Type) → toEmpty A → isoEmpty A
|
||||
toEmpty→isoEmpty A = {!!}
|
||||
|
||||
isoEmpty→pathEmpty : (A : Type) → isoEmpty A → pathEmpty A
|
||||
isoEmpty→pathEmpty A = {!!}
|
||||
|
||||
pathEmpty→toEmpty : (A : Type) → pathEmpty A → toEmpty A
|
||||
pathEmpty→toEmpty A = {!!}
|
||||
-}
|
||||
|
||||
------------------- Side Quests - true≢false --------------------
|
||||
|
||||
{-
|
||||
-- This is a comment box,
|
||||
-- remove the {- and -} to do the side quests
|
||||
|
||||
true≢false' : true ≡ false → ⊥
|
||||
true≢false' = {!!}
|
||||
|
||||
-}
|
||||
|
@ -1,21 +0,0 @@
|
||||
module 1FundamentalGroup.Quest0SideQuests.Empty where
|
||||
|
||||
open import 1FundamentalGroup.Preambles.PEmpty
|
||||
|
||||
toEmpty : (A : Type) → Type
|
||||
toEmpty A = {!!}
|
||||
|
||||
pathEmpty : (A : Type) → Type₁
|
||||
pathEmpty A = {!!}
|
||||
|
||||
isoEmpty : (A : Type) → Type
|
||||
isoEmpty A = {!!}
|
||||
|
||||
toEmpty→isoEmpty : (A : Type) → toEmpty A → isoEmpty A
|
||||
toEmpty→isoEmpty A = {!!}
|
||||
|
||||
isoEmpty→pathEmpty : (A : Type) → isoEmpty A → pathEmpty A
|
||||
isoEmpty→pathEmpty A = {!!}
|
||||
|
||||
pathEmpty→toEmpty : (A : Type) → pathEmpty A → toEmpty A
|
||||
pathEmpty→toEmpty A = {!!}
|
@ -1,27 +0,0 @@
|
||||
module 1FundamentalGroup.Quest0SideQuests.EmptySolutions where
|
||||
|
||||
open import 1FundamentalGroup.Preambles.PEmpty
|
||||
|
||||
toEmpty : (A : Type) → Type
|
||||
toEmpty A = A → ⊥
|
||||
|
||||
pathEmpty : (A : Type) → Type₁
|
||||
pathEmpty A = A ≡ ⊥
|
||||
|
||||
isoEmpty : (A : Type) → Type
|
||||
isoEmpty A = A ≅ ⊥
|
||||
|
||||
toEmpty→isoEmpty : (A : Type) → toEmpty A → isoEmpty A
|
||||
toEmpty→isoEmpty A f = iso f ⊥Rec rightInv leftInv where
|
||||
|
||||
rightInv : section f ⊥Rec
|
||||
rightInv ()
|
||||
|
||||
leftInv : retract f ⊥Rec
|
||||
leftInv x = ⊥Rec (f x)
|
||||
|
||||
isoEmpty→pathEmpty : (A : Type) → isoEmpty A → pathEmpty A
|
||||
isoEmpty→pathEmpty A = isoToPath
|
||||
|
||||
pathEmpty→toEmpty : (A : Type) → pathEmpty A → toEmpty A
|
||||
pathEmpty→toEmpty A p x = transport p x
|
@ -1,6 +0,0 @@
|
||||
module 1FundamentalGroup.Quest0SideQuests.TrueNotFalse where
|
||||
|
||||
open import 1FundamentalGroup.Preambles.PTrueNotFalse
|
||||
|
||||
true≢false : true ≡ false → ⊥
|
||||
true≢false = {!!}
|
@ -1,23 +0,0 @@
|
||||
module 1FundamentalGroup.Quest0SideQuests.TrueNotFalseSolutions where
|
||||
|
||||
open import 1FundamentalGroup.Preambles.PTrueNotFalse
|
||||
|
||||
true≢false : true ≡ false → ⊥
|
||||
true≢false h = transport ⊤≡⊥ tt where
|
||||
|
||||
propify : Bool → Type
|
||||
propify false = ⊥
|
||||
propify true = ⊤
|
||||
|
||||
⊤≡⊥ : ⊤ ≡ ⊥
|
||||
⊤≡⊥ = cong propify h
|
||||
{- transport
|
||||
|
||||
To follow a point in `a : A` along a path `p : A ≡ B`
|
||||
we use
|
||||
|
||||
transport : {A B : Type u} → A ≡ B → A → B
|
||||
|
||||
Why do we propify? Discuss.
|
||||
|
||||
-}
|
@ -33,3 +33,44 @@ endPtOfTrue p = endPt doubleCover p true
|
||||
|
||||
Refl≢loop : Refl ≡ loop → ⊥
|
||||
Refl≢loop p = true≢false (cong endPtOfTrue p)
|
||||
|
||||
------------------- Side Quest - Empty -------------------------
|
||||
|
||||
toEmpty : (A : Type) → Type
|
||||
toEmpty A = A → ⊥
|
||||
|
||||
pathEmpty : (A : Type) → Type₁
|
||||
pathEmpty A = A ≡ ⊥
|
||||
|
||||
isoEmpty : (A : Type) → Type
|
||||
isoEmpty A = A ≅ ⊥
|
||||
|
||||
outOf⊥ : (A : Type) → ⊥ → A
|
||||
outOf⊥ A ()
|
||||
|
||||
toEmpty→isoEmpty : (A : Type) → toEmpty A → isoEmpty A
|
||||
toEmpty→isoEmpty A f = iso f (outOf⊥ A) rightInv leftInv where
|
||||
|
||||
rightInv : section f (outOf⊥ A)
|
||||
rightInv ()
|
||||
|
||||
leftInv : retract f (outOf⊥ A)
|
||||
leftInv x = outOf⊥ (outOf⊥ A (f x) ≡ x) (f x)
|
||||
|
||||
isoEmpty→pathEmpty : (A : Type) → isoEmpty A → pathEmpty A
|
||||
isoEmpty→pathEmpty A = isoToPath
|
||||
|
||||
pathEmpty→toEmpty : (A : Type) → pathEmpty A → toEmpty A
|
||||
pathEmpty→toEmpty A p x = transport p x
|
||||
|
||||
------------------- Side Quests - true≢false --------------------
|
||||
|
||||
true≢false' : true ≡ false → ⊥
|
||||
true≢false' h = transport ⊤≡⊥ tt where
|
||||
|
||||
propify : Bool → Type
|
||||
propify false = ⊥
|
||||
propify true = ⊤
|
||||
|
||||
⊤≡⊥ : ⊤ ≡ ⊥
|
||||
⊤≡⊥ = cong propify h
|
||||
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue
Block a user