Skip to content

feat(Order/ConditionallyCompleteLattice): ConditionallyCompleteSemiLatticeInf#38192

Draft
Jun2M wants to merge 2 commits intoleanprover-community:masterfrom
Jun2M:ConditionallyCompleteSemiLatticeSup
Draft

feat(Order/ConditionallyCompleteLattice): ConditionallyCompleteSemiLatticeInf#38192
Jun2M wants to merge 2 commits intoleanprover-community:masterfrom
Jun2M:ConditionallyCompleteSemiLatticeSup

Conversation

@Jun2M
Copy link
Copy Markdown
Collaborator

@Jun2M Jun2M commented Apr 18, 2026


Open in Gitpod

@Jun2M Jun2M marked this pull request as draft April 18, 2026 00:05
@mathlib-bors
Copy link
Copy Markdown
Contributor

mathlib-bors bot commented Apr 18, 2026

This pull request is now in draft mode. No active bors state needed cleanup.

While this PR remains draft, bors will ignore commands on this PR. Mark it ready for review before using commands like bors r+ or bors try.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 18, 2026

PR summary 9036ce5439

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference

Declarations diff

+ ConditionallyCompleteSemiLatticeInf
+ ConditionallyCompleteSemiLatticeInfTop
+ ConditionallyCompleteSemiLatticeSup
+ ConditionallyCompleteSemiLatticeSupBot
+ OrderDual.instConditionallyCompleteSemiLatticeSup
+ conditionallyCompleteSemiLatticeInfOfsInf
+ conditionallyCompleteSemiLatticeInfOfsInfTop
+ instance [ConditionallyCompleteLinearOrderBot α] : ConditionallyCompleteSemiLatticeSupBot α
+ isGLB_csInf
- isLUB_csSup

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 scripts/pr_summary/declarations_diff.sh contains some details about this script.


No changes to technical debt.

You can run this locally as

./scripts/reporting/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).

@github-actions github-actions bot added the t-order Order theory label Apr 18, 2026
@Jun2M Jun2M added the help-wanted The author needs attention to resolve issues label Apr 18, 2026
Copy link
Copy Markdown
Collaborator

@vihdzp vihdzp left a comment

Choose a reason for hiding this comment

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

The design looks reasonable to me, but do you have any examples of structures that would fit these instances?

complete lattices, we prefix `sSup` by a `c` everywhere. The same statements should
hold in both worlds, sometimes with additional assumptions of nonemptiness or
boundedness. -/
class ConditionallyCompleteSemiLatticeSup (α : Type*) extends SemilatticeSup α, SupSet α where
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Suggested change
class ConditionallyCompleteSemiLatticeSup (α : Type*) extends SemilatticeSup α, SupSet α where
class ConditionallyCompleteSemilatticeSup (α : Type*) extends SemilatticeSup α, SupSet α where

complete lattices, we prefix `sInf` by a `c` everywhere. The same statements should
hold in both worlds, sometimes with additional assumptions of nonemptiness or
boundedness. -/
@[to_dual]
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Suggested change
@[to_dual]
@[to_dual existing]

complete lattices, we prefix `sSup` by a `c` everywhere. The same statements should
hold in both worlds, sometimes with additional assumptions of nonemptiness or
boundedness. -/
class ConditionallyCompleteSemiLatticeSupBot (α : Type*) extends
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

You could get rid of this by adding a requirement to conditionally complete (semi)lattices that if they have a bottom/top, then the supremum/infimum of the empty set equals to it. I think that'd be a worthwhile refactor which can be done independently of adding these semilattice instances.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

help-wanted The author needs attention to resolve issues t-order Order theory

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants