-
Notifications
You must be signed in to change notification settings - Fork 347
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: sup-closed sets are closed under finite suprema #18990
Conversation
From GrowthInGroups
PR summary 2b14177317
|
File | Base Count | Head Count | Change |
---|---|---|---|
Mathlib.Order.SupClosed | 512 | 515 | +3 (+0.59%) |
Import changes for all files
Files | Import difference |
---|---|
5 filesMathlib.Combinatorics.SetFamily.FourFunctions Mathlib.Combinatorics.SetFamily.Compression.UV Mathlib.Combinatorics.SetFamily.Shadow Mathlib.Combinatorics.SetFamily.LYM Mathlib.Combinatorics.SetFamily.KruskalKatona |
1 |
3 filesMathlib.Algebra.Module.Submodule.Invariant Mathlib.Combinatorics.SetFamily.AhlswedeZhang Mathlib.Combinatorics.Colex |
2 |
5 filesMathlib.Order.CompleteSublattice Mathlib.Data.Finset.Sups Mathlib.Data.Set.Sups Mathlib.Order.SupClosed Mathlib.Order.Sublattice |
3 |
Declarations diff
+ InfClosed.biInf_mem
+ InfClosed.biInf_mem_of_nonempty
+ InfClosed.iInf_mem
+ InfClosed.iInf_mem_of_nonempty
+ InfClosed.sInf_mem
+ InfClosed.sInf_mem_of_nonempty
+ SupClosed.biSup_mem
+ SupClosed.biSup_mem_of_nonempty
+ SupClosed.iSup_mem
+ SupClosed.iSup_mem_of_nonempty
+ SupClosed.sSup_mem
+ SupClosed.sSup_mem_of_nonempty
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.
section ConditionallyCompleteLattice | ||
variable [ConditionallyCompleteLattice α] {f : ι → α} {s t : Set α} | ||
|
||
lemma SupClosed.iSup_mem_of_nonempty [Finite ι] [Nonempty ι] (hs : SupClosed s) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lemma SupClosed.iSup_mem_of_nonempty [Finite ι] [Nonempty ι] (hs : SupClosed s) | |
lemma SupClosed.ciSup_mem [Finite ι] [Nonempty ι] (hs : SupClosed s) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I disagree with this name. This lemma is also valid (and useful) for complete lattices, and the current name helps disambiguate from the other iSup_mem
lemma.
rw [← iSup_plift_down, ← Finset.sup'_univ_eq_ciSup] | ||
exact hs.finsetSup'_mem Finset.univ_nonempty fun _ _ ↦ hf _ | ||
|
||
lemma InfClosed.iInf_mem_of_nonempty [Finite ι] [Nonempty ι] (hs : InfClosed s) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lemma InfClosed.iInf_mem_of_nonempty [Finite ι] [Nonempty ι] (hs : InfClosed s) | |
lemma InfClosed.ciInf_mem [Finite ι] [Nonempty ι] (hs : InfClosed s) |
lemma InfClosed.iInf_mem_of_nonempty [Finite ι] [Nonempty ι] (hs : InfClosed s) | ||
(hf : ∀ i, f i ∈ s) : ⨅ i, f i ∈ s := hs.dual.iSup_mem_of_nonempty hf | ||
|
||
lemma SupClosed.sSup_mem_of_nonempty (hs : SupClosed s) (ht : t.Finite) (ht' : t.Nonempty) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lemma SupClosed.sSup_mem_of_nonempty (hs : SupClosed s) (ht : t.Finite) (ht' : t.Nonempty) | |
lemma SupClosed.csSup_mem (hs : SupClosed s) (ht : t.Finite) (ht' : t.Nonempty) |
rw [sSup_eq_iSup'] | ||
exact hs.iSup_mem_of_nonempty (by simpa) | ||
|
||
lemma InfClosed.sInf_mem_of_nonempty (hs : InfClosed s) (ht : t.Finite) (ht' : t.Nonempty) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lemma InfClosed.sInf_mem_of_nonempty (hs : InfClosed s) (ht : t.Finite) (ht' : t.Nonempty) | |
lemma InfClosed.csInf_mem (hs : InfClosed s) (ht : t.Finite) (ht' : t.Nonempty) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not convinced of the names still, but since they're in a namespace I guess it's not so bad that these are inconsistent
bors d+
✌️ YaelDillies can now approve this pull request. To approve and merge a pull request, simply reply with |
*consistent in a way you don't see 😉 bors merge |
Note that there are exactly zero other lemmas in mathlib that take a supremum over a general conditionally complete lattice and have the name |
Pull request successfully merged into master. Build succeeded: |
There are at least three or four according to https://loogle.lean-lang.org/?q=iSup%2C+ConditionallyCompleteLattice |
From GrowthInGroups