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

[Merged by Bors] - feat(CategoryTheory/Galois): definition and characterisation of Galois objects #10215

Closed
wants to merge 22 commits into from

Conversation

chrisflav
Copy link
Collaborator

@chrisflav chrisflav commented Feb 3, 2024

Defines Galois objects in a Galois category in a fibre functor independent way, also gives an equivalent characterisation in terms of a fibre functor.

To allow for a definition that only depends on C, contrary to what was said earlier, we introduce a GaloisCategory typeclass extending PreGaloisCategory that additionally asserts the existence of a fibre functor.


Open in Gitpod

@chrisflav chrisflav added awaiting-review The author would like community review of the PR awaiting-CI t-category-theory Category theory labels Feb 3, 2024
@leanprover-community-mathlib4-bot leanprover-community-mathlib4-bot added the blocked-by-math-PR This PR depends on another PR to Mathlib label Feb 3, 2024
@leanprover-community-mathlib4-bot leanprover-community-mathlib4-bot removed the blocked-by-math-PR This PR depends on another PR to Mathlib label Feb 3, 2024
@leanprover-community-mathlib4-bot
Copy link
Collaborator

Comment on lines 209 to 212
/-- A `PreGaloisCategory` is a `GaloisCategory` if it admits a fibre functor. -/
class GaloisCategory (C : Type u₁) [Category.{u₂, u₁} C]
extends PreGaloisCategory C : Prop where
hasFibreFunctor : ∃ F : C ⥤ FintypeCat.{w}, Nonempty (PreGaloisCategory.FibreFunctor F)
Copy link
Collaborator

@joelriou joelriou Feb 5, 2024

Choose a reason for hiding this comment

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

With this definition, GaloisCategory C depends on a universe w that is unrelated to C. I think it would be advisable to replace w by u₂ in this definition. (Hopefully, with this definition, the example of finite G-sets would be a GaloisCategory. Then, in future developments of the API, it could be shown that the existence of a fiber functor C ⥤ FintypeCat.{w} is independent of the universe w.)

Copy link
Collaborator Author

@chrisflav chrisflav Feb 5, 2024

Choose a reason for hiding this comment

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

I suppose, we can't write there exists a universe w and a fibre functor F : C ⥤ FintypeCat.{w}? Finite G-sets is a GaloisCategory anyway:

/-- The category of finite `G`-sets is a `GaloisCategory`. -/
instance : GaloisCategory (Action FintypeCat (MonCat.of G)) where
  hasFibreFunctor := ⟨Action.forget FintypeCat (MonCat.of G), ⟨inferInstance⟩⟩

compiles. I will add it to the other PR, to avoid conflicts.

Copy link
Collaborator Author

@chrisflav chrisflav Feb 5, 2024

Choose a reason for hiding this comment

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

Shouldn't all the FintypeCat categories be equivalent? One could add the lemma that a functor F : C ⥤ FintypeCat.{w} is a FibreFunctor if and only if it is so after composing with an equivalence to some other FintypeCat.{w'}.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I will add it to the other PR, to avoid conflicts.

I accidentally pushed it to this branch and now realized that on the other one, GaloisCategory is not defined yet. So I'll now keep the instance here and when this one is merged, merge master in the other one.

Copy link
Collaborator

@joelriou joelriou Feb 6, 2024

Choose a reason for hiding this comment

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

Shouldn't all the FintypeCat categories be equivalent?

Yes, of course, but this would require a proof, following the pattern you suggested. In this future API, we could introduce the fact that fibre functors behave well with pre/post-composition with an equivalence. (Only the preservesQuotientsByFiniteGroups should require some work as we would may have to change the universes of G.) We would presumably also need a definition like FibreFunctor.ofIso: if F and G are isomorphic functors, and F is a fibre functor, then G also is.


/-- For a connected object `X` of `C`, the quotient `X / Aut X` is terminal if and only if
the quotient `F.obj X / Aut X` has exactly one element. -/
noncomputable def quotientByAutTerminalEquivUniqueQuotient [GaloisCategory C]
Copy link
Collaborator

Choose a reason for hiding this comment

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

There is an issue with the inclusion of variables here as both PreGaloisCategory C and GaloisCategory C are included. Then, I would think that depending on the situation, only PreGaloisCategory or GaloisCategory should be explicitly included in the various definitions in this file.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I agree, please check if its better now. In theory it would be best if Lean could infer GaloisCategory C from the line [PreGaloisCategory C] (F : C ⥤ FintypeCat.{w}) [FibreFunctor F], but since GaloisCategory C does not depend on F, this won't work I think.

@joelriou joelriou removed the awaiting-review The author would like community review of the PR label Feb 5, 2024
@joelriou joelriou added awaiting-author A reviewer has asked the author a question or requested changes and removed awaiting-review The author would like community review of the PR labels Feb 6, 2024
@chrisflav chrisflav added awaiting-review The author would like community review of the PR and removed awaiting-author A reviewer has asked the author a question or requested changes labels Feb 7, 2024
@jcommelin
Copy link
Member

Thanks 🎉

bors merge

@github-actions github-actions bot added ready-to-merge This PR has been sent to bors. and removed awaiting-review The author would like community review of the PR labels Feb 8, 2024
mathlib-bors bot pushed a commit that referenced this pull request Feb 8, 2024
…s objects (#10215)

Defines Galois objects in a Galois category in a fibre functor independent way, also gives an equivalent characterisation in terms of a fibre functor.

To allow for a definition that only depends on `C`, contrary to what was said earlier, we introduce a `GaloisCategory` typeclass extending `PreGaloisCategory` that additionally asserts the existence of a fibre functor.
@mathlib-bors
Copy link

mathlib-bors bot commented Feb 8, 2024

Build failed (retrying...):

mathlib-bors bot pushed a commit that referenced this pull request Feb 8, 2024
…s objects (#10215)

Defines Galois objects in a Galois category in a fibre functor independent way, also gives an equivalent characterisation in terms of a fibre functor.

To allow for a definition that only depends on `C`, contrary to what was said earlier, we introduce a `GaloisCategory` typeclass extending `PreGaloisCategory` that additionally asserts the existence of a fibre functor.
@mathlib-bors
Copy link

mathlib-bors bot commented Feb 8, 2024

Build failed (retrying...):

  • Build

@mathlib-bors
Copy link

mathlib-bors bot commented Feb 8, 2024

Canceled.

@joelriou
Copy link
Collaborator

joelriou commented Feb 8, 2024

retrying

bors merge

mathlib-bors bot pushed a commit that referenced this pull request Feb 8, 2024
…s objects (#10215)

Defines Galois objects in a Galois category in a fibre functor independent way, also gives an equivalent characterisation in terms of a fibre functor.

To allow for a definition that only depends on `C`, contrary to what was said earlier, we introduce a `GaloisCategory` typeclass extending `PreGaloisCategory` that additionally asserts the existence of a fibre functor.



Co-authored-by: Joël Riou <joel.riou@universite-paris-saclay.fr>
@mathlib-bors
Copy link

mathlib-bors bot commented Feb 8, 2024

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title feat(CategoryTheory/Galois): definition and characterisation of Galois objects [Merged by Bors] - feat(CategoryTheory/Galois): definition and characterisation of Galois objects Feb 8, 2024
@mathlib-bors mathlib-bors bot closed this Feb 8, 2024
@mathlib-bors mathlib-bors bot deleted the chrisflav/galois-galois branch February 8, 2024 18:49
atarnoam pushed a commit that referenced this pull request Feb 9, 2024
…s objects (#10215)

Defines Galois objects in a Galois category in a fibre functor independent way, also gives an equivalent characterisation in terms of a fibre functor.

To allow for a definition that only depends on `C`, contrary to what was said earlier, we introduce a `GaloisCategory` typeclass extending `PreGaloisCategory` that additionally asserts the existence of a fibre functor.



Co-authored-by: Joël Riou <joel.riou@universite-paris-saclay.fr>
dagurtomas pushed a commit that referenced this pull request Mar 22, 2024
…s objects (#10215)

Defines Galois objects in a Galois category in a fibre functor independent way, also gives an equivalent characterisation in terms of a fibre functor.

To allow for a definition that only depends on `C`, contrary to what was said earlier, we introduce a `GaloisCategory` typeclass extending `PreGaloisCategory` that additionally asserts the existence of a fibre functor.



Co-authored-by: Joël Riou <joel.riou@universite-paris-saclay.fr>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready-to-merge This PR has been sent to bors. t-category-theory Category theory
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants