Conversation
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 If you haven't already done so, please come to Zulip and join the Lean community. |
PR summary 1769435c55Import changes for modified filesNo significant changes to the import graph Import changes for all files
|
| Current number | Change | Type (weak) |
|---|---|---|
| exposed public sections | 5067 | 1 |
Current commit 1769435c55
Reference commit 64401b008c
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
relativevalue is the weighted sum of the differences with weight given by the inverse of the current value of the statistic. - The
absolutevalue is therelativevalue divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).
✅ PR Title Formatted CorrectlyThe title of this PR has been updated to match our commit style conventions. |
|
I'm posting some review comments, identified with the assistance of Claude and Codex. I'm not putting separate ":robot:" attributions on each comment. |
kim-em
left a comment
There was a problem hiding this comment.
- The docstring of
signVariations_X_sub_C_mul_eraseLead_le(L242, untouched by this PR) says the two counts are "the same", but the lemma only proves≤, and equality is false:P = X^2 + X + 10,η = 2gives 3 vs 1. Worth fixing while you're here. - PR description: "This counting mechanism of both ..." is missing a verb ("This is the counting mechanism behind both ...").
|
bors merge |
This PR adds `List.signVariations`, which counts the number of variations in a list, ignoring all zeroes, as well as its basic API. This counting is the mechanism of both [Descartes' Rule of Signs](https://github.com/leanprover-community/mathlib4/blob/master/Mathlib/Algebra/Polynomial/RuleOfSigns.lean) and of Sturm-Tarski theorem, which will be added in upcoming PRs. This PR also adapts `RuleOfSigns.lean` to use the new API, simplifying some of its proofs. The contents of this PR were manually written. Claude Code (Fable 5.1) was used to review the code.
|
Pull request successfully merged into master. Build succeeded: |
* origin/master: (958 commits) chore(Combinatorics/SimpleGraph/Trails): golf and cleanup (leanprover-community#41447) refactor(Probability/Kernel): remove redundant case split in Invariant.comp (leanprover-community#43805) chore: bump toolchain to v4.34.0 (leanprover-community#43798) feat(Data/List/SignVariations): add List.signVariations (leanprover-community#43783) feat(LinearAlgebra/Span/Basic): add Submodule.prodEquiv (leanprover-community#43664) feat(cache): put with native Azure and S3 backends (leanprover-community#43378) feat(Combinatorics/SimpleGraph/Walk): more `transfer` API (leanprover-community#41717) feat(SimpleGraph): girth-diameter inequality (leanprover-community#25834) feat: make `simps?` and `to_dual?`/`to_additive?` more concise (leanprover-community#43775) feat(Basic/IsEmpty/Defs): add Fin.isEmpty_iff (leanprover-community#43763) feat(Data/ENNReal/Inv): add ENNReal.div_mul_div_cancel (leanprover-community#37954) chore(Tactic/Simproc/ExistsAndEq): fix two typos (leanprover-community#43797) feat(LinearAlgebra/Matrix/GeneralLinearGroup/Defs): add the proof of the range of toGL to be the ker of the determinant and the induced equivalence (leanprover-community#41786) chore(Data/Num/Lemmas): golf `transfer` tactic (leanprover-community#41167) refactor(Data/Nat/Choose/Central): move and rename `four_pow_le_two_mul_add_one_mul_central_binom` (leanprover-community#42606) feat(Combinatorics/Graph): edge cut of `Graph` (leanprover-community#37865) feat(Algebra/QuadraticAlgebra): classify quadratic algebras by their discriminant (leanprover-community#42708) fix: use the PR number in the deprecation reminder message (leanprover-community#43786) feat(Data/Fintype/Defs): add DecidableLE (∀ a, β a) (leanprover-community#43425) chore: redefine `Finsupp.indicator` using `Finsupp.onFinset` (leanprover-community#33434) ... # Conflicts: # Mathlib/Tactic/Linter/DirectoryDependency.lean
This PR adds
List.signVariations, which counts the number of variations in a list, ignoring all zeroes, as well as its basic API. This counting is the mechanism of both Descartes' Rule of Signs and of Sturm-Tarski theorem, which will be added in upcoming PRs.This PR also adapts
RuleOfSigns.leanto use the new API, simplifying some of its proofs.The contents of this PR were manually written. Claude Code (Fable 5.1) was used to review the code.