diff --git a/1FundamentalGroup/Quest2.agda b/1FundamentalGroup/Quest2.agda index fda160a..a58c810 100644 --- a/1FundamentalGroup/Quest2.agda +++ b/1FundamentalGroup/Quest2.agda @@ -2,27 +2,46 @@ module 1FundamentalGroup.Quest2 where open import 1FundamentalGroup.Preambles.P2 -{- -The definition of sucℤ goes here. --} +data _⊔_ (A B : Type) : Type where -{- -The definition of predℤ goes here. --} + inl : A → A ⊔ B + inr : B → A ⊔ B -{- -The definition of sucℤIso goes here. --} +ℤ≡ℕ⊔ℕ : ℤ ≡ ℕ ⊔ ℕ +ℤ≡ℕ⊔ℕ = {!!} -{- -The definition of sucℤPath goes here. --} +∙refl : {A : Type} {x y : A} (p : x ≡ y) → p ∙ refl ≡ p +∙refl = {!!} -helix : S¹ → Type -helix = {!!} +refl∙ : {A : Type} {x y : A} (p : x ≡ y) → refl ∙ p ≡ p +refl∙ = {!!} -windingNumberBase : base ≡ base → ℤ -windingNumberBase = {!!} +∙sym : {A : Type} {x y : A} (p : x ≡ y) → p ∙ sym p ≡ refl +∙sym = J (λ y p → p ∙ sym p ≡ refl) + ( + refl ∙ sym refl + ≡⟨ cong (λ p → refl ∙ p) symRefl ⟩ + refl ∙ refl + ≡⟨ refl∙refl ⟩ + refl ∎) -windingNumber : (x : S¹) → base ≡ x → helix x -windingNumber = {!!} +sym∙ : {A : Type} {x y : A} (p : x ≡ y) → (sym p) ∙ p ≡ refl +sym∙ = J (λ y p → (sym p) ∙ p ≡ refl) + ( + (sym refl) ∙ refl + ≡⟨ cong (λ p → p ∙ refl) symRefl ⟩ + refl ∙ refl + ≡⟨ refl∙refl ⟩ + refl ∎) + +assoc : {A : Type} {w x : A} (p : w ≡ x) {y z : A} (q : x ≡ y) (r : y ≡ z) + → (p ∙ q) ∙ r ≡ p ∙ (q ∙ r) +assoc {A} = J + -- casing on p + (λ x p → {y z : A} (q : x ≡ y) (r : y ≡ z) → (p ∙ q) ∙ r ≡ p ∙ (q ∙ r)) + -- reduce to showing when p = refl + λ q r → (refl ∙ q) ∙ r + ≡⟨ cong (λ p' → p' ∙ r) (refl∙ q) ⟩ + q ∙ r + ≡⟨ sym (refl∙ (q ∙ r)) ⟩ + refl ∙ q ∙ r ∎ diff --git a/1FundamentalGroup/Quest2Solutions.agda b/1FundamentalGroup/Quest2Solutions.agda index a458de9..febc567 100644 --- a/1FundamentalGroup/Quest2Solutions.agda +++ b/1FundamentalGroup/Quest2Solutions.agda @@ -51,11 +51,11 @@ sym∙ = J (λ y p → (sym p) ∙ p ≡ refl) ≡⟨ refl∙refl ⟩ refl ∎) -assoc : {A : Type} {w x : A} (p : w ≡ x) {y : A} (q : x ≡ y) {z : A} (r : y ≡ z) +assoc : {A : Type} {w x : A} (p : w ≡ x) {y z : A} (q : x ≡ y) (r : y ≡ z) → (p ∙ q) ∙ r ≡ p ∙ (q ∙ r) -assoc {A} {w} = J +assoc {A} = J -- casing on p - (λ x p → {y : A} (q : x ≡ y) {z : A} (r : y ≡ z) → (p ∙ q) ∙ r ≡ p ∙ (q ∙ r)) + (λ x p → {y z : A} (q : x ≡ y) (r : y ≡ z) → (p ∙ q) ∙ r ≡ p ∙ (q ∙ r)) -- reduce to showing when p = refl λ q r → (refl ∙ q) ∙ r ≡⟨ cong (λ p' → p' ∙ r) (refl∙ q) ⟩ diff --git a/_build/2.6.2/agda/1FundamentalGroup/Quest2.agdai b/_build/2.6.2/agda/1FundamentalGroup/Quest2.agdai index 7284c34..43f9a09 100644 Binary files a/_build/2.6.2/agda/1FundamentalGroup/Quest2.agdai and b/_build/2.6.2/agda/1FundamentalGroup/Quest2.agdai differ diff --git a/_build/2.6.2/agda/1FundamentalGroup/Quest2Solutions.agdai b/_build/2.6.2/agda/1FundamentalGroup/Quest2Solutions.agdai index 87a093a..5bec1fc 100644 Binary files a/_build/2.6.2/agda/1FundamentalGroup/Quest2Solutions.agdai and b/_build/2.6.2/agda/1FundamentalGroup/Quest2Solutions.agdai differ