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

Curry is continuous #926

Merged
merged 15 commits into from
Jan 18, 2024
Merged

Curry is continuous #926

merged 15 commits into from
Jan 18, 2024

Conversation

zstone1
Copy link
Contributor

@zstone1 zstone1 commented May 15, 2023

Motivation for this change

Machinery for more function space topologies, and proofs that curry and uncurry are continuous (E.G. curry is a homeomorphism from U x V -> W to U -> V -> W in the right spaces.

For more bit more on the why, this is a piece of prep work for homotopy theory. One can define fundamental group of a (path-connected) space V as the connected components of {compact-open, S1 -> V}. When we're proving things are homotopies, it's far easier to work in U x [0,1] -> V. But for certain bits of theory, it's much nicer to work in [0,1] -> (U -> V) instead. E.G. "is homotopic" inherits "is an equivalence relation" from path components. This PR will let us easily move between them with curry/uncurry as we please.

When V is a uniform space, the compact-open topology and the "family compact" topology agree. But we very rarely need the uniform assumption on V, so we do the more general work here. We also will need both S1 and [0,1], so we proof these results for any locally-compact, uniform space. The only meaningful issue is that locally compact is slightly too strong. Long story short, the category Top is not cartesian closed, and locally-compact fixes this, but excludes some exotic CW-complexes. A more general form of this works for what's called "compactly generated". That generalization is out of scope for now. My long-term goal is to prove stuff about winding numbers in low-dimensional spaces. Everything will be locally compact for a long time.

The HB port should probably do two things

  1. Define an alias for the compact-open topology, and build the topology on that.
  2. Create a module which canonically assigns the compact-open topology to all the arrow types.
Things done/to do
  • added corresponding entries in CHANGELOG_UNRELEASED.md
  • added corresponding documentation in the headers
Compatibility with MathComp 2.0
  • I added the label TODO: HB port to make sure someone ports this PR to
    the hierarchy-builder branch or I already opened an issue or PR (please cross reference).
Automatic note to reviewers

Read this Checklist and put a milestone if possible.

@zstone1 zstone1 mentioned this pull request Jul 26, 2023
3 tasks
@zstone1 zstone1 added TODO: MC2 port This PR must be ported to mathcomp 2 now that the. Remove this label when the port is done. and removed TODO: MC2 port This PR must be ported to mathcomp 2 now that the. Remove this label when the port is done. labels Dec 29, 2023
@zstone1 zstone1 marked this pull request as ready for review December 29, 2023 01:42
@affeldt-aist
Copy link
Member

There are a few definitions that should make their way to the documentation header.
However, the format of the documentation has changed with release 0.6.7.
Could you rebase before editing the documentation?
(Warning: I put changelog info at the top of the changelog file but this one will also be changed by the rebase).

@affeldt-aist affeldt-aist added this to the 0.6.8 milestone Jan 14, 2024
@affeldt-aist affeldt-aist added the TODO: MC2 port This PR must be ported to mathcomp 2 now that the. Remove this label when the port is done. label Jan 14, 2024
@affeldt-aist
Copy link
Member

Do you mind if I rebase and push-force (not sure I can)?

@zstone1
Copy link
Contributor Author

zstone1 commented Jan 14, 2024

Yeah of course, I think you should be able to.

@affeldt-aist
Copy link
Member

commit 45444e3 add a few documentation entries, you @zstone1 surely want to complete it

@zstone1
Copy link
Contributor Author

zstone1 commented Jan 17, 2024

Thanks, I'll take a look tonight

@zstone1
Copy link
Contributor Author

zstone1 commented Jan 18, 2024

Thanks for tidying this all up. I noticed that regular and regular_space had equivalent definitions, so I removed regular. Otherwise I'm happy with it.

@zstone1
Copy link
Contributor Author

zstone1 commented Jan 18, 2024

Oh, and a bit of theory I realized after coming back to this: Locally Compact + regular -> uniformizable. So using the compact-open over topologicaType instead of family compact over uniformType doesn't buy us as much as I thought.

  1. For the lemmas about curry, it definitely does generalize as intended. We only need topologicalType rather than unitormType.
  2. For the results on uncurry, we don't gain anything (theory-wise) by asking for topological + regular + locally compact. We might as well as for uniform + locally compact on V. But we still get the benefit in U.
  3. But from a practical perspective, this might still be the most direct way to prove it. You really need compact_open_cvgP. But if you start from the definition of family compact, you need to go through compact_open_fam_compactP anyway.

@affeldt-aist affeldt-aist merged commit 8e4ae6d into math-comp:master Jan 18, 2024
27 of 28 checks passed
affeldt-aist added a commit to affeldt-aist/analysis that referenced this pull request Jan 19, 2024
* curry/uncurry of continuous functions

* compact-open topology working

* removing regular in favor of regular_space

---------

Co-authored-by: Reynald Affeldt <[email protected]>
affeldt-aist added a commit to affeldt-aist/analysis that referenced this pull request Jan 19, 2024
* curry/uncurry of continuous functions

* compact-open topology working

* removing regular in favor of regular_space

---------

Co-authored-by: Reynald Affeldt <[email protected]>
@affeldt-aist affeldt-aist mentioned this pull request Jan 19, 2024
3 tasks
proux01 pushed a commit to affeldt-aist/analysis that referenced this pull request Jan 20, 2024
* curry/uncurry of continuous functions

* compact-open topology working

* removing regular in favor of regular_space

---------

Co-authored-by: Reynald Affeldt <[email protected]>
proux01 pushed a commit that referenced this pull request Jan 20, 2024
* curry/uncurry of continuous functions

* compact-open topology working

* removing regular in favor of regular_space

---------

Co-authored-by: Reynald Affeldt <[email protected]>
@proux01 proux01 removed the TODO: MC2 port This PR must be ported to mathcomp 2 now that the. Remove this label when the port is done. label Jan 20, 2024
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.

3 participants