[Merged by Bors] - feat(Analysis): a closed convex set is the intersection of countably many half-spaces#31180
[Merged by Bors] - feat(Analysis): a closed convex set is the intersection of countably many half-spaces#31180CoolRmal wants to merge 1 commit intoleanprover-community:masterfrom
Conversation
|
WIP |
PR summary b72c03457bImport changes for modified filesNo significant changes to the import graph Import changes for all files
Declarations diff
You can run this locally as follows## summary with just the declaration names:
./scripts/pr_summary/declarations_diff.sh <optional_commit>
## more verbose report:
./scripts/pr_summary/declarations_diff.sh long <optional_commit>The doc-module for No changes to technical debt.You can run this locally as
|
|
This pull request has conflicts, please merge |
|
-WIP |
EtienneC30
left a comment
There was a problem hiding this comment.
Thanks! My comments are about the style.
|
-awaiting-author |
j-loreaux
left a comment
There was a problem hiding this comment.
I'm a bit dubious about some aspects of the approach here.
| -/ | ||
| import Mathlib.Analysis.Convex.Cone.Extension | ||
| import Mathlib.Analysis.Convex.Gauge | ||
| import Mathlib.Analysis.Normed.Module.Convex |
There was a problem hiding this comment.
I think this is a bit of a heavy import for this file. What result did you need from it?
There was a problem hiding this comment.
I need convex_ball from this file so that I can use geometric_hahn_banach_open, which also explains why I need [NormedSpace ℝ E].
There was a problem hiding this comment.
Everything in Mathlib.Analysis.Normed.Module.Convex still works after I replace [NormedSpace ℝ E] with [Module ℝ E] [NormSMulClass ℝ E], but this is a weirder assumption and I don't know whether this can create problems in other files.
|
This pull request has conflicts, please merge |
|
-awaiting-author |
|
What do you think about the following alternative approach? I'm not sure it works (I just made it up). Thanks to SecondCountableTopology.toHereditarilyLindelof, This implies that the complement Now, you know by RCLike.iInter_halfSpaces_eq (or a variation of it) that |
|
Even cleaner: you can prove and use the dual version of eq_open_union_countable. |
|
@ADedecker Thank you for your comments. I updated my PR and here's a quick summary: I proved that if -awaiting-author |
ADedecker
left a comment
There was a problem hiding this comment.
Thanks a lot for the quick response! I couldn't help playing a bit with the proofs, but feel free to object to some of my suggestions (e.g changes to the statements).
|
This pull request has conflicts, please merge |
|
Sorry, I really did not want to block this for so long... Whenever you are waiting for a response from the reviewers, feel free to remove "awaiting-author" tag, otherwise your PR will probably be overlooked... I've thought a bit about your application, and this led me to #33778 (found in Bourbaki): this tells you that, as long as the domain is hereditarily Lindelof, if you know how to write your function as an arbitrary supremum of some lower-semicontinuous functions, then you can actually restrict to a countable subfamily without changing the supremum. I claim the right approach is thus to prove the more general result that, in a locally convex space Note that the content of this PR is still relevant, even if it might not be used for the final approximation result. |
|
@ADedecker Thank you for you reply. I was procrastinating because I was unsure about whether I should include the existence of nonzero linear forms in this PR. #33778 is great but I think it still can't resolve this problem. I am using https://link.springer.com/book/10.1007/978-3-319-48520-1 as my reference (the proof that a convex lower semicontinuity function is supremum of countably many affine functions is in Lemma 1.2.10, but I believe countability is not really used anywhere in that lemma, so the same proof works for the uncountable case), and I still believe the existence of nonzero linear forms is necessary (at least in the proof of Lemma 1.2.10, although it is not clearly written in the book). I am happy to change my code if you have a reference of a better proof, and I think it is probably better to continue our discussion on Zulip: #mathlib4 > Discussion thread for Conditional Jensen's Inequality |
|
This pull request has conflicts, please merge |
|
|
Pull request successfully merged into master. Build succeeded:
|
…many half-spaces (leanprover-community#31180) This lemma is needed in the proof of conditional Jensen's inequality: leanprover-community#27953
…many half-spaces (leanprover-community#31180) This lemma is needed in the proof of conditional Jensen's inequality: leanprover-community#27953
…many half-spaces (leanprover-community#31180) This lemma is needed in the proof of conditional Jensen's inequality: leanprover-community#27953
…many half-spaces (leanprover-community#31180) This lemma is needed in the proof of conditional Jensen's inequality: leanprover-community#27953
…many half-spaces (leanprover-community#31180) This lemma is needed in the proof of conditional Jensen's inequality: leanprover-community#27953
This lemma is needed in the proof of conditional Jensen's inequality: #27953