Skip to content

[Merged by Bors] - feat(Topology/Sublevel): sublevels in relation with semicontinuity and compactness#31558

Closed
AntoineChambert-Loir wants to merge 21 commits intoleanprover-community:masterfrom
AntoineChambert-Loir:ACLAD-Sublevels
Closed

[Merged by Bors] - feat(Topology/Sublevel): sublevels in relation with semicontinuity and compactness#31558
AntoineChambert-Loir wants to merge 21 commits intoleanprover-community:masterfrom
AntoineChambert-Loir:ACLAD-Sublevels

Conversation

@AntoineChambert-Loir
Copy link
Copy Markdown
Collaborator

@AntoineChambert-Loir AntoineChambert-Loir commented Nov 12, 2025

Two lemmas about sublevels and semicontinuity related to compactness

  • Set.isCompact_inter_preimage_Iic, the sublevels of a lower semicontinuous function on a compact set are compact.

  • Set.biInter_sep_map_le_eq_empty_iff_exists_finset, an intersection of sublevel sets of a lower semicontinuous function on a compact set is empty if and only if a finite sub-intersection is already empty.

Co-authored with @ADedecker


Open in Gitpod

@github-actions github-actions bot added the t-topology Topological spaces, uniform spaces, metric spaces, filters label Nov 12, 2025
@github-actions
Copy link
Copy Markdown

github-actions bot commented Nov 12, 2025

PR summary 64c4b4691e

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference

Declarations diff

+ IsCompact.elim_finite_subfamily_isClosed_subtype
+ LowerSemicontinuousOn.inter_biInter_preimage_Iic_eq_empty_iff_exists_finset
+ LowerSemicontinuousOn.isCompact_inter_preimage_Iic
+ UpperSemicontinuousOn.inter_biInter_preimage_Ici_eq_empty_iff_exists_finset
+ UpperSemicontinuousOn.isCompact_inter_preimage_Ici

You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>

## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>

The doc-module for script/declarations_diff.sh contains some details about this script.


No changes to technical debt.

You can run this locally as

./scripts/technical-debt-metrics.sh pr_summary
  • The relative value is the weighted sum of the differences with weight given by the inverse of the current value of the statistic.
  • The absolute value is the relative value divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).

Copy link
Copy Markdown
Contributor

@j-loreaux j-loreaux left a comment

Choose a reason for hiding this comment

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

This is an initial pass. There's a lot of minor things to fix. After those are handled I will have a more detailed look.

I'm not saying it's unreasonable to have these, but can you say a bit about why you want them? And have you considered whether or not they should be abbrevs?

Comment thread Mathlib/Topology/Compactness/Compact.lean Outdated
Comment thread Mathlib/Topology/Compactness/Compact.lean Outdated
Comment thread Mathlib/Topology/Sublevel.lean Outdated
Comment thread Mathlib/Topology/Sublevel.lean Outdated
Comment thread Mathlib/Topology/Sublevel.lean Outdated
Comment thread Mathlib/Topology/Sublevel.lean Outdated
Comment thread Mathlib/Topology/Sublevel.lean Outdated
Comment thread Mathlib/Topology/Sublevel.lean Outdated
Comment thread Mathlib/Topology/Sublevel.lean Outdated
Comment thread Mathlib/Topology/Sublevel.lean Outdated
@j-loreaux j-loreaux added the awaiting-author A reviewer has asked the author a question or requested changes. label Nov 18, 2025
@AntoineChambert-Loir AntoineChambert-Loir removed the awaiting-author A reviewer has asked the author a question or requested changes. label Nov 19, 2025
@mathlib4-merge-conflict-bot mathlib4-merge-conflict-bot added the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Nov 19, 2025
@mathlib4-merge-conflict-bot
Copy link
Copy Markdown
Collaborator

This pull request has conflicts, please merge master and resolve them.

@github-actions github-actions bot removed the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Nov 19, 2025
@j-loreaux
Copy link
Copy Markdown
Contributor

I'm not saying it's unreasonable to have these, but can you say a bit about why you want them? And have you considered whether or not they should be abbrevs?

This was never addressed, can you please do so?

@j-loreaux j-loreaux added the awaiting-author A reviewer has asked the author a question or requested changes. label Nov 25, 2025
@AntoineChambert-Loir AntoineChambert-Loir changed the title feat(Topology/Sublevel): sublevels and overlevels, relation with semicontinuity feat(Topology/Sublevel): sublevels in relation with semicontinuity and compactness Nov 26, 2025
@AntoineChambert-Loir AntoineChambert-Loir removed the awaiting-author A reviewer has asked the author a question or requested changes. label Nov 26, 2025
Copy link
Copy Markdown
Contributor

@j-loreaux j-loreaux left a comment

Choose a reason for hiding this comment

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

Please also update the PR description

Comment thread Mathlib/Topology/Compactness/Compact.lean Outdated
Comment thread Mathlib/Topology/Sublevel.lean Outdated
Comment thread Mathlib/Topology/Sublevel.lean Outdated
Comment thread Mathlib/Topology/Sublevel.lean Outdated
Comment thread Mathlib/Topology/Sublevel.lean Outdated
@j-loreaux j-loreaux added the awaiting-author A reviewer has asked the author a question or requested changes. label Nov 27, 2025
@AntoineChambert-Loir
Copy link
Copy Markdown
Collaborator Author

If the Semicontinuous file were not that big, these two lemmas could have been hosted there.

@AntoineChambert-Loir AntoineChambert-Loir removed the awaiting-author A reviewer has asked the author a question or requested changes. label Nov 29, 2025
Copy link
Copy Markdown
Contributor

@j-loreaux j-loreaux left a comment

Choose a reason for hiding this comment

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

We generally don't do things only for the lower versions, can you please add the upper versions too?

Comment thread Mathlib/Topology/Sublevel.lean Outdated
Comment thread Mathlib/Topology/Sublevel.lean Outdated
Comment thread Mathlib/Topology/Compactness/Compact.lean Outdated
Comment thread Mathlib/Topology/Sublevel.lean Outdated
Comment thread Mathlib/Topology/Sublevel.lean Outdated
@j-loreaux
Copy link
Copy Markdown
Contributor

If the Semicontinuous file were not that big, these two lemmas could have been hosted there.

I have a plan to split that file anyway, and with these golfs it might fit there. Can you please move these results there?

@j-loreaux j-loreaux added the awaiting-author A reviewer has asked the author a question or requested changes. label Dec 2, 2025
@AntoineChambert-Loir AntoineChambert-Loir removed the awaiting-author A reviewer has asked the author a question or requested changes. label Dec 5, 2025
Copy link
Copy Markdown
Contributor

@j-loreaux j-loreaux left a comment

Choose a reason for hiding this comment

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

Thanks!

bors d+

Comment thread Mathlib/Topology/Semicontinuous.lean Outdated

alias ⟨LowerSemicontinuous.isClosed_epigraph, _⟩ := lowerSemicontinuous_iff_isClosed_epigraph

omit [TopologicalSpace γ] in
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Instead of omit [TopologicalSpace γ] in, can you instead just jump up to the variable invocation and split it into a mini section, as in:

variable {γ : Type*} [LinearOrder γ] [TopologicalSpace γ] [ClosedIciTopology γ]

becomes

variable {γ : Type*} [LinearOrder γ]

section
variable [TopologicalSpace γ] [ClosedIciTopology γ]

-- the next few results which need this

end

@mathlib-bors
Copy link
Copy Markdown
Contributor

mathlib-bors bot commented Dec 9, 2025

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

@ghost ghost added the delegated This pull request has been delegated to the PR author (or occasionally another non-maintainer). label Dec 9, 2025
@AntoineChambert-Loir
Copy link
Copy Markdown
Collaborator Author

bors r+

mathlib-bors bot pushed a commit that referenced this pull request Dec 9, 2025
…d compactness (#31558)

Two lemmas about sublevels and semicontinuity related to compactness

* `Set.isCompact_inter_preimage_Iic`, the sublevels  of a lower semicontinuous function on a compact set are compact.

* `Set.biInter_sep_map_le_eq_empty_iff_exists_finset`, an intersection  of sublevel sets of a lower semicontinuous function on a compact set  is empty if and only if a finite sub-intersection is already empty.

Co-authored with @ADedecker
@mathlib-bors
Copy link
Copy Markdown
Contributor

mathlib-bors bot commented Dec 9, 2025

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title feat(Topology/Sublevel): sublevels in relation with semicontinuity and compactness [Merged by Bors] - feat(Topology/Sublevel): sublevels in relation with semicontinuity and compactness Dec 9, 2025
@mathlib-bors mathlib-bors bot closed this Dec 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

delegated This pull request has been delegated to the PR author (or occasionally another non-maintainer). t-topology Topological spaces, uniform spaces, metric spaces, filters

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants