-
Notifications
You must be signed in to change notification settings - Fork 199
More H-spaces and Cohomology #1875
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
base: master
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,51 @@ | ||
| Require Import Basics Types Pointed WildCat.Core WildCat.Equiv. | ||
| Require Import Truncations.Core. | ||
| Require Import Homotopy.EMSpace. | ||
| Require Import Homotopy.HSpace.Core Homotopy.HSpace.Pointwise Homotopy.HSpace.HGroup Homotopy.HSpace.Coherent. | ||
| Require Import Algebra.AbGroups.AbelianGroup. | ||
| Require Import Homotopy.Suspension. | ||
| Require Import Spheres HomotopyGroup. | ||
|
|
||
| Local Open Scope pointed_scope. | ||
|
|
||
| (** * Cohomology groups *) | ||
|
|
||
| (** Reduced cohomology groups are defined as the homotopy classes of pointed maps from the space to an Eilenberg-MacLane space. The group structure comes from the H-space structure on [K(G, n)]. *) | ||
| Definition Cohomology `{Univalence} (n : nat) (X : pType) (G : AbGroup) : AbGroup. | ||
| Proof. | ||
| snrapply Build_AbGroup'. | ||
| 1: exact (Tr 0 (X ->** K(G, n))). | ||
| 1-3: shelve. | ||
| nrapply isabgroup_ishabgroup_tr. | ||
| nrapply ishabgroup_hspace_pmap. | ||
| apply iscohhabgroup_em. | ||
| Defined. | ||
|
|
||
| (** ** Cohomology of suspension *) | ||
|
|
||
| (** The (n+1)th cohomology of a suspension is the nth cohomology of the original space. *) | ||
| (* TODO: show this preserves the operation somehow and is therefore a group iso *) | ||
| Definition cohomology_susp `{Univalence} n (X : pType) G | ||
| : Cohomology n.+1 (psusp X) G <~> Cohomology n X G. | ||
|
Comment on lines
+27
to
+29
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The obvious argument that this is a group iso has a few steps: The operation on the LHS coming from the H-space structure on K(G, n+1) is equal to the operation on the LHS coming from the coH-space structure on the suspension (Eckmann-Hilton). Then, the loop-susp adjunction takes the coH operation to the H operation. Then pequiv_loops_em_em is what we use the define the H-space structure on K(G,n), so it preserves it.
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I could prepare some of my stuff on co-H-spaces and pointwise H-spaces to allow for this argument, but I was hoping that the operation on cohomology would be easy to work with letting us prove preservation of the operation more directly. I see that isn't actually the case however, as the H-space strucutre we get with the pointwise operation is always going to be tricky to work with. Therefore it might be better just to define the bundled versions of all the algebraic strucutres I introduced, show that they are various induced wildcat's (with H-maps) and then show that 0-truncation is a functor from those wild categories to Group or AbGroup. That way we get this equivalence in a functorial way. We also have other cohomology axioms that we can directly verify, but I haven't spent the time to work on those just yet until we can agree on how we want the H-strucutres to look. The wedge axiom for instance, will probably require decidable equality on the indexing type if we want to avoid the axiom of choice. And in most cases we take a wedge, it is over a type with decidable equality.
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think it's best to leave this for a future PR. |
||
| Proof. | ||
| apply Trunc_functor_equiv. | ||
| nrefine (_ oE (loop_susp_adjoint _ _)). | ||
| rapply pequiv_pequiv_postcompose. | ||
| symmetry. | ||
| apply pequiv_loops_em_em. | ||
| Defined. | ||
|
|
||
| (** ** Cohomology of spheres *) | ||
|
|
||
| (* TODO: improve this to a group isomorphism once cohomology can be easily checked to be op preserving. *) | ||
| Definition cohomology_sn `{Univalence} (n : nat) (G : AbGroup) | ||
| : Cohomology n.+1 (psphere n.+1) G <~> G. | ||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Can we change
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes, I didn't want to special case n=0, but it should be simple to do. I'll improve that. |
||
| Proof. | ||
| nrefine (_ oE (equiv_tr 0 _)^-1). | ||
| 1: refine ?[goal1]. | ||
| 2: { rapply istrunc_equiv_istrunc. symmetry. apply ?goal1. } | ||
|
Comment on lines
+44
to
+46
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think |
||
| nrefine (_ oE pmap_from_psphere_iterated_loops _ _). | ||
| symmetry. | ||
| rapply pequiv_loops_em_g. | ||
| Defined. | ||
|
|
||
| Original file line number | Diff line number | Diff line change | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -103,5 +103,15 @@ Section EilenbergMacLane. | |||||||||||||
| 2: apply pequiv_loops_em_em. | ||||||||||||||
| apply iscohhspace_loops. | ||||||||||||||
| Defined. | ||||||||||||||
|
|
||||||||||||||
| Definition iscohhabgroup_em {G : AbGroup} (n : nat) | ||||||||||||||
| : IsCohHAbGroup K(G, n). | ||||||||||||||
| Proof. | ||||||||||||||
| nrapply iscohhabgroup_equiv_cohhabgroup. | ||||||||||||||
| 2: apply pequiv_loops_em_em. | ||||||||||||||
| nrapply iscohhabgroup_equiv_cohhabgroup. | ||||||||||||||
| 2: exact (emap loops (pequiv_loops_em_em _ _)). | ||||||||||||||
|
Comment on lines
+110
to
+113
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. One use of (BTW, one can also define the H-space structure on K(G,n) using that the addition map
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. In this case, the commutativity of the H-space structure should follow from G being abelian. However, here I am using the fact that I'll have a think about making the H-space structure on K(G,n) more direct. On the other hand, how often do we need to compare this H-space structure to one given by loops? I'll have to think about it.
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I guess since all H-space structures on K(G,n) are equivalent in the appropriate sense, it only makes sense to put a good H-space structure on it.
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. My main comment was that you only need to use nrapply iscohhabgroup_equiv_cohhabgroup.
2: exact (emap loops (pequiv_loops_em_em G n.+1) o*E pequiv_loops_em_em G n).
apply iscohhabgroup_loops_loops.
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes, I've tried this but it is still quite slow. I'll experiment a bit with the direct definition.
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Can you remind me what is slow? The specific definition we're discussing is fast for me. |
||||||||||||||
| apply iscohhabgroup_loops_loops. | ||||||||||||||
| Defined. | ||||||||||||||
|
|
||||||||||||||
| End EilenbergMacLane. | ||||||||||||||
Uh oh!
There was an error while loading. Please reload this page.