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(topology/covering): Define covering spaces #16087

Closed
wants to merge 11 commits into from

Conversation

tb65536
Copy link
Collaborator

@tb65536 tb65536 commented Aug 17, 2022

This PR adds a definition of covering spaces.

We don't want to have to specify a constant index set I, and we don't want to say "there exists an index set I : Type u such that f ⁻¹' U is homeomorphic to I × U" (annoying universe issues). Instead, we can use the preimage of any point as our index set.

Supersedes #15276, where @alreadydone suggested that I drop the surjectivity assumption.


Open in Gitpod

@tb65536 tb65536 added awaiting-review The author would like community review of the PR t-topology Topological spaces, uniform spaces, metric spaces, filters and removed awaiting-review The author would like community review of the PR labels Aug 17, 2022
@mathlib-dependent-issues-bot mathlib-dependent-issues-bot added the blocked-by-other-PR This PR depends on another PR which is still in the queue. A bot manages this label via PR comment. label Aug 17, 2022
@YaelDillies YaelDillies changed the title feat(src/topology/covering): Define covering spaces feat(topology/covering): Define covering spaces Aug 17, 2022
@mathlib-dependent-issues-bot mathlib-dependent-issues-bot removed the blocked-by-other-PR This PR depends on another PR which is still in the queue. A bot manages this label via PR comment. label Sep 2, 2022
@tb65536 tb65536 added the awaiting-review The author would like community review of the PR label Sep 2, 2022
@sgouezel sgouezel 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 Sep 30, 2022
@tb65536 tb65536 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 Sep 30, 2022
Copy link
Collaborator

@ocfnash ocfnash left a comment

Choose a reason for hiding this comment

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

Thanks!

Aside from a trivial comment about code style, my two thoughts are:

  1. Since branched coverings are important, I'd be tempted to include a subset of the base as part of the data and do everything relative to that. In other words, we could define is_covering_map_on instead (and presumably as a convenience have is_covering_map, specializing this to set.univ) and hopefully thus avoid some subtype pain in future work.
  2. I'd be tempted to include the monodromy group as part of the data. I don't see a way to use the definitions here to make the statement that "the map f : E → X admits a set of trivializations with monodromy group G". In other words, it looks to me like we'll have to refactor or duplicate code when this day comes.

What do you think?

Feel free to push back, I think we could go with this for now at least.

src/topology/covering.lean Outdated Show resolved Hide resolved
@tb65536
Copy link
Collaborator Author

tb65536 commented Oct 21, 2022

Thanks!

Aside from a trivial comment about code style, my two thoughts are:

  1. Since branched coverings are important, I'd be tempted to include a subset of the base as part of the data and do everything relative to that. In other words, we could define is_covering_map_on instead (and presumably as a convenience have is_covering_map, specializing this to set.univ) and hopefully thus avoid some subtype pain in future work.
  2. I'd be tempted to include the monodromy group as part of the data. I don't see a way to use the definitions here to make the statement that "the map f : E → X admits a set of trivializations with monodromy group G". In other words, it looks to me like we'll have to refactor or duplicate code when this day comes.

What do you think?

Feel free to push back, I think we could go with this for now at least.

Thanks! I hadn't though about branched covers. I've added is_covering_map_on.

I'm not so sure about including the monodromy group as part of the data. It seems like it would make the definition more clunky (e.g., path connectedness) and would make it more painful to prove that a given map is a covering map. Wouldn't it make more sense to just have the monodromy data be constructed from is_covering_map?

Copy link
Collaborator

@ocfnash ocfnash left a comment

Choose a reason for hiding this comment

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

Thanks!

On reflection I think it's probably best not to make the monodromy group explicit for now, especially as we do not have a theory of principal bundles.

One style suggestion, and one optional task but otherwise this LGTM. Thanks again.

bors d+

src/topology/covering.lean Outdated Show resolved Hide resolved
lemma continuous (hf : is_covering_map f) : continuous f :=
continuous_iff_continuous_at.mpr (λ x, (hf (f x)).continuous_at)

lemma is_locally_homeomorph (hf : is_covering_map f) : is_locally_homeomorph f :=
Copy link
Collaborator

Choose a reason for hiding this comment

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

Optionally: I think it would be nice to generalise this to is_covering_map_on (in the case when s is open).

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'll have to think about this. It's a tad bit tricker than it looks, since you don't know that f ⁻¹' s is open.

Copy link
Collaborator

Choose a reason for hiding this comment

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

you don't know that f ⁻¹' s is open.

I don't understand: f is continuous and s is open so this is trivial, right?

Thinking about this a bit more, I suppose you'll also need that s is non-empty but otherwise this should be easy.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Oh, are you talking about is_locally_homeomorph? I was talking about continuous.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Is this along the lines of what you were thinking of? #17114

@bors
Copy link

bors bot commented Oct 21, 2022

✌️ tb65536 can now approve this pull request. To approve and merge a pull request, simply reply with bors r+. More detailed instructions are available here.

@leanprover-community-bot-assistant leanprover-community-bot-assistant added delegated The PR author may merge after reviewing final suggestions. and removed awaiting-review The author would like community review of the PR labels Oct 21, 2022
@tb65536
Copy link
Collaborator Author

tb65536 commented Oct 21, 2022

bors r+

bors bot pushed a commit that referenced this pull request Oct 21, 2022
This PR adds a definition of covering spaces.

We don't want to have to specify a constant index set `I`, and we don't want to say "there exists an index set `I : Type u` such that `f ⁻¹' U` is homeomorphic to `I × U`" (annoying universe issues). Instead, we can use the preimage of any point as our index set.

Supersedes #15276, where @alreadydone suggested that I drop the surjectivity assumption.
@bors
Copy link

bors bot commented Oct 21, 2022

Pull request successfully merged into master.

Build succeeded:

@bors bors bot changed the title feat(topology/covering): Define covering spaces [Merged by Bors] - feat(topology/covering): Define covering spaces Oct 21, 2022
@bors bors bot closed this Oct 21, 2022
@bors bors bot deleted the covering_spaces2 branch October 21, 2022 21:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
delegated The PR author may merge after reviewing final suggestions. t-topology Topological spaces, uniform spaces, metric spaces, filters
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants