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] - chore(analysis/convex/topology): split #18187

Closed
wants to merge 11 commits into from

Conversation

hrmacbeth
Copy link
Member

Split the facts about the topology of convex sets into two files, for topological vector spaces and normed spaces. This makes the former a more elementary file, as indeed it feels like it should be. It also slightly decreases the length of the longest path in mathlib.


Open in Gitpod

@hrmacbeth hrmacbeth added the awaiting-CI The author would like to see what CI has to say before doing more work. label Jan 16, 2023
@github-actions github-actions bot removed the awaiting-CI The author would like to see what CI has to say before doing more work. label Jan 16, 2023
@hrmacbeth hrmacbeth added the awaiting-review The author would like community review of the PR label Jan 16, 2023
Comment on lines +129 to +143
/-- The set of vectors in the same ray as `x` is connected. -/
lemma is_connected_set_of_same_ray (x : E) : is_connected {y | same_ray ℝ x y} :=
begin
by_cases hx : x = 0, { simpa [hx] using is_connected_univ },
simp_rw ←exists_nonneg_left_iff_same_ray hx,
exact is_connected_Ici.image _ ((continuous_id.smul continuous_const).continuous_on)
end

/-- The set of nonzero vectors in the same ray as the nonzero vector `x` is connected. -/
lemma is_connected_set_of_same_ray_and_ne_zero {x : E} (hx : x ≠ 0) :
is_connected {y | same_ray ℝ x y ∧ y ≠ 0} :=
begin
simp_rw ←exists_pos_left_iff_same_ray_and_ne_zero hx,
exact is_connected_Ioi.image _ ((continuous_id.smul continuous_const).continuous_on)
end
Copy link
Collaborator

Choose a reason for hiding this comment

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

Although I originally proved these in a normed context, they should work in a more general topological context (with haveI : path_connected_space E := topological_add_group.path_connected, added to the first proof so that is_connected_univ works), without actually needing norms.

import analysis.convex.topology
import analysis.convex.normed
Copy link
Collaborator

Choose a reason for hiding this comment

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

I have some unfinished changes to make the topological lemmas in this file work for a general real topological vector space without requiring norms. My notes say the missing piece was an instance to deduce has_continuous_vadd for an affine subspace from has_continuous_vadd for the whole space (which should be straightforward, though I'm not sure where such an instance should go).

Copy link
Collaborator

Choose a reason for hiding this comment

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

I.e. I had [add_comm_group V] [module ℝ V] [topological_space V] [topological_add_group V] [has_continuous_smul ℝ V] [add_torsor V P] [topological_space P] [has_continuous_vadd V P] {s : affine_subspace ℝ P} and needed an instance for has_continuous_vadd s.direction s.

@hrmacbeth
Copy link
Member Author

hrmacbeth commented Jan 16, 2023

@jsm28 Do you mind if I do the split now, then you move the lemmas at the time when you generalize their context?

@jsm28
Copy link
Collaborator

jsm28 commented Jan 16, 2023

I think doing the split now without generalizing the lemmas is fine.

@hrmacbeth hrmacbeth added the t-analysis Analysis (normed *, calculus) label Jan 16, 2023
@sgouezel
Copy link
Collaborator

ok, let's do the split now and refactor later. A pure split is always easier to review than a split mixed with changes.
bors r+
Thanks!

@github-actions github-actions bot added ready-to-merge All that is left is for bors to build and merge this PR. (Remember you need to say `bors r+`.) and removed awaiting-review The author would like community review of the PR labels Jan 19, 2023
bors bot pushed a commit that referenced this pull request Jan 19, 2023
Split the facts about the topology of convex sets into two files, for topological vector spaces and normed spaces.  This makes the former a more elementary file, as indeed it feels like it should be.  It also slightly decreases the length of the longest path in mathlib.
@bors
Copy link

bors bot commented Jan 19, 2023

Build failed (retrying...):

bors bot pushed a commit that referenced this pull request Jan 19, 2023
Split the facts about the topology of convex sets into two files, for topological vector spaces and normed spaces.  This makes the former a more elementary file, as indeed it feels like it should be.  It also slightly decreases the length of the longest path in mathlib.
@bors
Copy link

bors bot commented Jan 19, 2023

Build failed (retrying...):

@urkud
Copy link
Member

urkud commented Jan 19, 2023

I believe that bors failures are because of this PR (in the latest failed batch, there were 2 PRs, and the other one doesn't change imports). Please merge master and fix imports.
bors r-
bors d+

@bors
Copy link

bors bot commented Jan 19, 2023

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

@bors
Copy link

bors bot commented Jan 19, 2023

Canceled.

@github-actions github-actions bot added the delegated The PR author may merge after reviewing final suggestions. label Jan 19, 2023
@hrmacbeth
Copy link
Member Author

bors r+

bors bot pushed a commit that referenced this pull request Jan 20, 2023
Split the facts about the topology of convex sets into two files, for topological vector spaces and normed spaces.  This makes the former a more elementary file, as indeed it feels like it should be.  It also slightly decreases the length of the longest path in mathlib.
@bors
Copy link

bors bot commented Jan 21, 2023

Pull request successfully merged into master.

Build succeeded:

@bors bors bot changed the title chore(analysis/convex/topology): split [Merged by Bors] - chore(analysis/convex/topology): split Jan 21, 2023
@bors bors bot closed this Jan 21, 2023
@bors bors bot deleted the hrmacbeth-split-convex-topology branch January 21, 2023 02:35
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. ready-to-merge All that is left is for bors to build and merge this PR. (Remember you need to say `bors r+`.) t-analysis Analysis (normed *, calculus)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants