Skip to content

[Merged by Bors] - feat(Tactic): add multiplication support for inclusion/dyadic_interval tactics - #43563

Closed
DavidLedvinka wants to merge 41 commits into
leanprover-community:masterfrom
DavidLedvinka:inclusion-multiplication
Closed

[Merged by Bors] - feat(Tactic): add multiplication support for inclusion/dyadic_interval tactics#43563
DavidLedvinka wants to merge 41 commits into
leanprover-community:masterfrom
DavidLedvinka:inclusion-multiplication

Conversation

@DavidLedvinka

Copy link
Copy Markdown
Collaborator

Also in the process of proving/golfing the mul_mem lemma some local grind tags were added which were then used to do a little bit of golfing for other proofs.

Note: There is some intentional defeq abuse with the input and output type of mulBound This seems fine to me but alternatively there could be eight different functions in place of the single mulBound to avoid this.

David Ledvinka and others added 30 commits August 14, 2026 23:29
Co-authored-by: Thomas R. Murrills <68410468+thorimur@users.noreply.github.com>
Co-authored-by: Thomas R. Murrills <68410468+thorimur@users.noreply.github.com>
Co-authored-by: Thomas R. Murrills <68410468+thorimur@users.noreply.github.com>
# Conflicts:
#	Mathlib/Tactic/Linter/DeprecatedSyntaxLinter.lean
Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>
Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>
Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>
Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>
Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>
Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>
David Ledvinka added 11 commits September 2, 2026 19:49
…ication

# Conflicts:
#	Mathlib/Tactic/Inclusion/Core/DiscrTreeExt.lean
#	Mathlib/Tactic/Inclusion/Core/Elab.lean
#	Mathlib/Tactic/Inclusion/Extension/Interval.lean
#	Mathlib/Tactic/Inclusion/Extension/IntervalDyadicReal/Basic.lean
#	Mathlib/Tactic/Inclusion/Extension/IntervalDyadicReal/Tactic.lean
@github-actions github-actions Bot added the large-import Automatically added label for PRs with a significant increase in transitive imports label Sep 8, 2026
@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown

PR summary 3dab67ecd3

Import changes exceeding 2%

% File
+15.77% Mathlib.Tactic.Inclusion.Extension.Interval

Import changes for modified files

Dependency changes

File Base Count Head Count Change
Mathlib.Tactic.Inclusion.Extension.Interval 336 389 +53 (+15.77%)
Import changes for all files
Files Import difference
Mathlib.Tactic.Inclusion.Extension.Interval 53

Declarations diff (regex)

+ Interval.map_mulBound_le
+ Interval.mem_map_iff
+ Interval.mul
+ Interval.mulBound
+ Interval.mul_mem
+ mul_le_mul_of_nonpos_of_nonneg''
+ mul_mem

You can run this locally as follows
## from your `mathlib4` directory:
git clone https://github.com/leanprover-community/mathlib-ci.git ../mathlib-ci

## summary with just the declaration names:
../mathlib-ci/scripts/pr_summary/declarations_diff.sh <optional_commit>

## more verbose report:
../mathlib-ci/scripts/pr_summary/declarations_diff.sh long <optional_commit>

The doc-module for scripts/pr_summary/declarations_diff.sh in the mathlib-ci repository contains some details about this script.

Declarations diff (Lean)

Lean-aware diff — post-build, computed from the Lean environment (commit 3dab67e).

  • +20 new declarations
  • −0 removed declarations
+Inclusion.Interval.add.match_1.congr_eq_1
+Inclusion.Interval.add.match_1.congr_eq_2
+Inclusion.Interval.add.match_4.congr_eq_1
+Inclusion.Interval.add.match_4.congr_eq_2
+Inclusion.Interval.le_map_mulBound
+Inclusion.Interval.map_mulBound_le
+Inclusion.Interval.mem_map_iff
+Inclusion.Interval.mul
+Inclusion.Interval.mulBound
+Inclusion.Interval.mul_mem
+Inclusion.Interval.neg.match_1.congr_eq_1
+Inclusion.Interval.neg.match_1.congr_eq_2
+Inclusion.Interval.neg.match_3.congr_eq_1
+Inclusion.Interval.neg.match_3.congr_eq_2
+Inclusion.Interval.sub.match_1.congr_eq_1
+Inclusion.Interval.sub.match_1.congr_eq_2
+Inclusion.Interval.sub.match_3.congr_eq_1
+Inclusion.Interval.sub.match_3.congr_eq_2
+Inclusion.IntervalDyadicReal.mul_mem
+mul_le_mul_of_nonpos_of_nonneg''

No changes to strong technical debt.
No changes to weak technical debt.

Current commit 3dab67ecd3
Reference commit 059a625dc0

This script lives in the mathlib-ci repository. To run it locally, from your mathlib4 directory:

git clone https://github.com/leanprover-community/mathlib-ci.git ../mathlib-ci
../mathlib-ci/scripts/reporting/technical-debt-metrics.py 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 commented Sep 8, 2026

Copy link
Copy Markdown

✅ PR Title Formatted Correctly

The title of this PR has been updated to match our commit style conventions.
Thank you!

@DavidLedvinka DavidLedvinka changed the title feat(Tactic): Add multiplication support for inclusion/dyadic_interval tactics feat(Tactic): add multiplication support for inclusion/dyadic_interval tactics Sep 8, 2026
@DavidLedvinka DavidLedvinka added the awaiting-CI This PR does not pass CI yet. This label is automatically removed once it does. label Sep 8, 2026
@github-actions github-actions Bot removed the awaiting-CI This PR does not pass CI yet. This label is automatically removed once it does. label Sep 8, 2026
@ocfnash

ocfnash commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

Thanks!

bors merge

@mathlib-bors mathlib-bors Bot added the ready-to-merge This PR has been sent to bors. label Sep 8, 2026
mathlib-bors Bot pushed a commit that referenced this pull request Sep 8, 2026
…rval` tactics (#43563)

Also in the process of proving/golfing the `mul_mem` lemma some local grind tags were added which were then used to do a little bit of golfing for other proofs. 

Note: There is some intentional defeq abuse with the input and output type of `mulBound` This seems fine to me but alternatively there could be eight different functions in place of the single `mulBound` to avoid this.

Co-authored-by: David Ledvinka <dledvinka.ledvinka@mail.utoronto.ca>
@mathlib-bors mathlib-bors Bot added the bors-staging This PR is currently being built by bors on the staging branch. label Sep 8, 2026
@mathlib-bors

mathlib-bors Bot commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

@mathlib-bors mathlib-bors Bot changed the title feat(Tactic): add multiplication support for inclusion/dyadic_interval tactics [Merged by Bors] - feat(Tactic): add multiplication support for inclusion/dyadic_interval tactics Sep 8, 2026
@mathlib-bors mathlib-bors Bot closed this Sep 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bors-staging This PR is currently being built by bors on the staging branch. large-import Automatically added label for PRs with a significant increase in transitive imports ready-to-merge This PR has been sent to bors.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants