29 lines
748 B
Agda
29 lines
748 B
Agda
module 1FundamentalGroup.Quest1SideQuests.SnSolutions where
|
||
|
||
open import Cubical.Data.Nat
|
||
open import Cubical.Data.Empty
|
||
open import Cubical.Data.Unit renaming (Unit to ⊤)
|
||
open import Cubical.Data.Bool
|
||
open import Cubical.Foundations.Prelude
|
||
|
||
|
||
data susp (X : Type) : Type where
|
||
north : susp X
|
||
south : susp X
|
||
merid : X → north ≡ south
|
||
|
||
Sphere : ℕ → Type
|
||
Sphere zero = Bool
|
||
Sphere (suc n) = susp (Sphere n)
|
||
|
||
Disk : (n : ℕ) → Type
|
||
Disk zero = ⊤
|
||
Disk (suc n) = susp (Sphere n)
|
||
|
||
SphereToDisk : {n : ℕ} → Sphere n → Disk (suc n)
|
||
SphereToDisk {zero} false = north
|
||
SphereToDisk {zero} true = south
|
||
SphereToDisk {suc n} north = north
|
||
SphereToDisk {suc n} south = south
|
||
SphereToDisk {suc n} (merid x i) = merid (SphereToDisk x) i
|