diff --git a/1FundamentalGroup/Quest1.agda b/1FundamentalGroup/Quest1.agda index 597585a..d57edd7 100644 --- a/1FundamentalGroup/Quest1.agda +++ b/1FundamentalGroup/Quest1.agda @@ -7,7 +7,7 @@ open import Cubical.Data.Int open import Cubical.Data.Empty open import Cubical.Foundations.Prelude open import Cubical.Foundations.HLevels -open import 1FundamentalGroup.Quest0 using ( Refl ; Refl≢loop ) +open import 1FundamentalGroup.Quest0Solutions using ( Refl ; Refl≢loop ) Ω : (A : Type) (a : A) → Type Ω A a = a ≡ a diff --git a/1FundamentalGroup/Quest1Part0.md b/1FundamentalGroup/Quest1Part0.md index 769aecd..28cc407 100644 --- a/1FundamentalGroup/Quest1Part0.md +++ b/1FundamentalGroup/Quest1Part0.md @@ -77,6 +77,10 @@ Try giving it '`loop n times`' composed with `loop`. Then try to also define the map on the negative integers. You will need to invert paths using `sym`. +```agda +sym : x ≡ y → y ≡ x +``` +

Looking up definitions diff --git a/1FundamentalGroup/Quest1Part1.md b/1FundamentalGroup/Quest1Part1.md index d000a1a..b0d4482 100644 --- a/1FundamentalGroup/Quest1Part1.md +++ b/1FundamentalGroup/Quest1Part1.md @@ -1,8 +1,9 @@ - +# Homotopy Levels The loop space can contain higher homotopical information that the fundamental group does not capture. For example, consider `S²`. + ```agda data S² : Type where base : S² @@ -32,7 +33,7 @@ So `base ≡ base` has non-trivial path structure. S2 Let's be more precise about homotopical data : @@ -81,6 +82,11 @@ In the cubical library we have the result isProp→isSet : (A : Type) → isProp A → isSet A ``` +which we will not prove. +Assuming `¬isSetS¹`, use `isProp→isSet` to deduce `¬isPropS¹`. + + +

HLevel @@ -90,27 +96,21 @@ Generalisation to HLevel and isHLevel n → isHLevel suc n??

- -which we will not prove. -Use `isProp→isSet` to conclude `¬isPropS¹` (using `¬isSetS¹`), -from now you should fill in the hypotheses of the proof yourself -(put `h` before the `=` sign or use `C-c C-r`). - Turning our attention to `¬isSetS¹`, -again supposing `h : isSet S¹` - +again given `h : isSet S¹` - a map continuously taking each pair `x y : A` to a point in `isProp (x ≡ y)`. We can apply `h` twice to the only point `base` available to us, obtaining a point of `isProp (base ≡ base)`. -Can we map this into the empty space? +Try mapping from this into the empty space.

Hint 0 We have already shown that `Refl ≡ loop` is the empty space. -We have imported `Quest0` for you, so you can just quote the -result from there. +We have imported `Quest0Solutions.agda` for you, +so you can just quote the result from there.

diff --git a/1FundamentalGroup/Quest1Part2.md b/1FundamentalGroup/Quest1Part2.md new file mode 100644 index 0000000..4e847b3 --- /dev/null +++ b/1FundamentalGroup/Quest1Part2.md @@ -0,0 +1,3 @@ +# Set Truncation and Higher Homotopy Groups + +We've seen what it means for a space to be a "set". diff --git a/1FundamentalGroup/Quest2Part0.md b/1FundamentalGroup/Quest2Part0.md new file mode 100644 index 0000000..e7b19ec --- /dev/null +++ b/1FundamentalGroup/Quest2Part0.md @@ -0,0 +1,19 @@ +# Comparison maps between `Ω S¹ base` and `ℤ` + +In `Quest1` we have defined the map `loop_times : ℤ → Ω S¹ base`. +Creating the inverse map is difficult without access to the entire circle. +Similarly to how we used `doubleCover` to distinguish `refl` and `base`, +the idea is to replace `Bool` with `ℤ`, +allowing us to distinguish between all loops on `S¹`. + +The plan is : + +- Define a function `sucℤ : ℤ → ℤ` that increases every integer by one +- Prove that `sucℤ` is an isomorphism by constructing + an inverse map `predℤ : ℤ → ℤ`. +- Turn `sucℤ` into a path `sucPath : ℤ ≡ ℤ` using `isoToPath` +- Define `helix : S¹ → Type` by mapping `base` to `ℤ` and + a generic point `loop i` to `sucPath i`. +- Use `helix` and `endPt` to define the map `base ≡ x → helix x` + on all `x : S¹`, in particular giving us `Ω S¹ base → ℤ` + when applied to `base`. diff --git a/_build/2.6.3/agda/1FundamentalGroup/Quest0Solutions.agdai b/_build/2.6.3/agda/1FundamentalGroup/Quest0Solutions.agdai new file mode 100644 index 0000000..982b03e Binary files /dev/null and b/_build/2.6.3/agda/1FundamentalGroup/Quest0Solutions.agdai differ diff --git a/_build/2.6.3/agda/1FundamentalGroup/Quest1.agdai b/_build/2.6.3/agda/1FundamentalGroup/Quest1.agdai new file mode 100644 index 0000000..ab9eae4 Binary files /dev/null and b/_build/2.6.3/agda/1FundamentalGroup/Quest1.agdai differ