Skip to content

feat(SetTheory/Ordinal/FixedPointApproximants): add zero and limit lemmas for approximants#37375

Open
NoneMore wants to merge 12 commits intoleanprover-community:masterfrom
NoneMore:gfpApprox
Open

feat(SetTheory/Ordinal/FixedPointApproximants): add zero and limit lemmas for approximants#37375
NoneMore wants to merge 12 commits intoleanprover-community:masterfrom
NoneMore:gfpApprox

Conversation

@NoneMore
Copy link
Copy Markdown
Contributor

Add helper lemmas lfpApprox_zero, lfpApprox_limit, and the corresponding gfpApprox lemmas by duality.


Open in Gitpod

…mmas for approximants

Add `lfpApprox_zero`, `lfpApprox_limit`, and the corresponding `gfpApprox` lemmas by duality.
@github-actions github-actions bot added the new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! label Mar 30, 2026
@github-actions
Copy link
Copy Markdown

Welcome new contributor!

Thank you for contributing to Mathlib! If you haven't done so already, please review our contribution guidelines, as well as the style guide and naming conventions. In particular, we kindly remind contributors that we have guidelines regarding the use of AI when making pull requests.

We use a review queue to manage reviews. If your PR does not appear there, it is probably because it is not successfully building (i.e., it doesn't have a green checkmark), has the awaiting-author tag, or another reason described in the Lifecycle of a PR. The review dashboard has a dedicated webpage which shows whether your PR is on the review queue, and (if not), why.

If you haven't already done so, please come to https://leanprover.zulipchat.com/, introduce yourself, and mention your new PR.

Thank you again for joining our community.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 30, 2026

PR summary 5ccfc60402

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference

Declarations diff

+ apply_lfpApprox_le_lfpApprox_of_lt
+ gfpApprox_le_apply_gfpApprox_of_lt
+ gfpApprox_of_isSuccLimit
+ gfpApprox_zero
+ lfpApprox_of_isSuccLimit
+ lfpApprox_zero

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).

lfpApprox f x a = ⨆ b : Set.Iio a, lfpApprox f x b := by
refine le_antisymm ?_ (iSup_le fun b => lfpApprox_monotone f x b.2.le)
rw [lfpApprox]
simp only [exists_prop, Set.union_singleton, sSup_insert, sup_le_iff, sSup_le_iff,
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.

I notice only now that the definitions of lfpApprox and gfpApprox aren't simp normal. Nothing you need to do in this PR; I'll open a new one to amend that.

Comment on lines +130 to +131
· nth_rw 2 [lfpApprox]
exact le_sSup <| Or.inl ⟨b, lt_add_one b, rfl⟩
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.

I think there's a more general result we can extract: f (lfpApprox f x a) ≤ lfpApprox f x b when a < b.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Yes. I also found that this lemma can be used to strengthen lfpApprox_eq_of_mem_fixedPoints by removing the x ≤ f x hypothesis.

NoneMore and others added 2 commits March 31, 2026 14:28
name changes

Co-authored-by: Violeta Hernández Palacios <[email protected]>
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.

Otherwise LGTM. lfpApprox_add_one can be golfed further, but I completely rewrite it in #37383 anyways, so it doesn't really matter.

Please merge master to fix the build failure!

@vihdzp vihdzp requested a review from YaelDillies March 31, 2026 07:45
NoneMore and others added 3 commits March 31, 2026 18:08
@NoneMore
Copy link
Copy Markdown
Contributor Author

Thanks for the review, particularly the style suggestions! I have to say that I'm bad at this.

Copy link
Copy Markdown
Contributor

@YaelDillies YaelDillies left a comment

Choose a reason for hiding this comment

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

Thanks!

maintainer delegate

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 1, 2026

🚀 Pull request has been placed on the maintainer queue by YaelDillies.

@mathlib-triage mathlib-triage bot added the maintainer-merge A reviewer has approved the changed; awaiting maintainer approval. label Apr 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

maintainer-merge A reviewer has approved the changed; awaiting maintainer approval. new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! t-set-theory Set theory

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants