Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gysin sequence/Hopf invariant/Homotopy groups #617

Merged
merged 126 commits into from
Nov 11, 2021

Conversation

aljungstrom
Copy link
Contributor

@aljungstrom aljungstrom commented Nov 4, 2021

Big PR again... I think @mortberg and I can go through it together next week. It contains:

  1. The Gysin sequence (indexing differs slightly from Brunerie 2016, but we get all the interesting steps)
  2. Definition of the Hopf invariant, a proof that it's a homomorphism and a proof that the Hopf invariant of the Hopf map : S³ → S² is equal to ±1.
  3. Some basic results about groups as ZModules.
  4. The equivalence Sⁿ * Sᵐ ≃ Sⁿ⁺ᵐ⁺¹
  5. Homotopy groups, both as loop spaces and spaces of functions from spheres. The isomorphism between these two versions and a proof that the canonical suspension function πₙA → πₙ₊₁ΣA is preserved by this isomorphism (this is important for translating the Freudenthal suspension theorem between the two definitions of homotopy groups). In particular, we get surjectivity of π₃S²→π₄S³ (with the function space definition).
  6. A file summarising what remains for the proof of π₄S³≅ℤ/2ℤ.
  7. Some other minor lemmas.

@kangrongji
Copy link
Contributor

I think π₄S³≅ℤ/2ℤ not ℤ.

@mortberg
Copy link
Collaborator

mortberg commented Nov 4, 2021

Very nice! Let's go through it all together soon. At some point I think we should make a summary file relating the formalization to Brunerie's thesis

@mortberg
Copy link
Collaborator

mortberg commented Nov 4, 2021

I think π₄S³≅ℤ/2ℤ not ℤ.

Good catch, I updated the description of the PR

is structure preserving

2. Using the above, the complete group structure on (Sⁿ →∙ A),
the alternative definition of homotopy groups
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Couldn't this be done using the SIP? Seems like you're doing it manually now?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These types are not sets, but in principle it should still be possible to transport higher group structures.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed, I'm not sure if we can do this with the current SIP setup... Can @ecavallo help us investigate this? Maybe we can take a look in person on Monday afternoon?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure. Just from looking I'm not clear on what exactly you want to sip.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Axel and I discussed the code today over Zoom and it seems maybe possible to SIP some parts, but it's not obvious how... Anyway let's just look at it together on Monday after lunch

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice! But couldn't one transfer all of the laws in one go? So you define isWildGroup as a structure on RawGroup and subst it.

It then doesn't seem necessary to extract the fields as they're only used to define https://github.com/ecavallo/cubical/blob/GysinCleanup/Cubical/Homotopy/Group/Properties.agda#L264 ... Or?

@aljungstrom
Copy link
Contributor Author

I think π₄S³≅ℤ/2ℤ not ℤ.

Haha wups, thanks:-)

Cubical/Algebra/Group/Instances/Unit.agda Outdated Show resolved Hide resolved
Cubical/Algebra/Group/ZModule.agda Outdated Show resolved Hide resolved
@@ -517,3 +514,13 @@ compPathR→PathP∙∙ {p = p} {q = q} {r = r} {s = s} P j i =
; (j = i0) → r i
; (j = i1) → doubleCompPath-filler p s (sym q) (~ k) i})
(P j i)

doubleCompPath≡compPath :
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No levels needed

Cubical/Homotopy/Freudenthal.agda Outdated Show resolved Hide resolved
is structure preserving

2. Using the above, the complete group structure on (Sⁿ →∙ A),
the alternative definition of homotopy groups
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These types are not sets, but in principle it should still be possible to transport higher group structures.

Cubical/ZCohomology/RingStructure/RingLaws.agda Outdated Show resolved Hide resolved
Cubical/ZCohomology/Gysin.agda Outdated Show resolved Hide resolved
Cubical/ZCohomology/Gysin.agda Outdated Show resolved Hide resolved
Cubical/ZCohomology/Gysin.agda Outdated Show resolved Hide resolved
Cubical/ZCohomology/Gysin.agda Outdated Show resolved Hide resolved
@aljungstrom
Copy link
Contributor Author

Ok, changed Homotopy.Group a bit

I moved ΩⁿA ≃ (Sⁿ →∙ A) and the group structure on the latter type to Group.Base. I also renamed Group.SuspensionMapPathP to Group.SuspensionMap. Now it's strictly about the suspension maps. I deleted the Properties file and moved all of the results about suspension maps into Group.SuspensionMap.

I also generalised SphereMapΩIso to a theorem about the adjointness of Ω and Susp (see ΩSuspAdjointIsoin HITs.Susp.Properties) which made things a bit shorter. I also incorporated Evan's stuff (Ω→∘, isNaturalΩSphereMap, etc.)

Concerning the SIP/Wild groups etc. I'd suggest we do that in a separate future PR.

I've fixed all the previous comments now, so unless there's something I've messed up in these new changes, I think we can merge.

@mortberg
Copy link
Collaborator

Great! I'll merge this mega PR now

I think it sounds reasonable to integrate the SIP stuff in a future PR. @ecavallo Can you please make a PR with your incomplete code when I've merged this? I can take a look at it and maybe finish it

@mortberg mortberg merged commit 66e2d01 into agda:master Nov 11, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants