Repository navigation
feat(foundations): Lagrange inversion for a fixed point of a polynomial, and the low-degree part of a root by a closed formula (#4734, milestone 1) - #4739
Conversation
…equation (cslib-community#4734) Universal root by a Newton step on the order of vanishing, uniqueness of a root to a given order, and the structure theorem f = α + (A(gᵢ - gᵢ(0)))_{≤ d+1}; reduction of an arbitrary root to a simple one in characteristic zero. Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
…al; roots by a closed formula (cslib-community#4734) A finite proof of the Lagrange inversion formula modulo powers of an ideal (telescoping and a weight filtration, no power series), and the resulting formula for the low-degree part of a root of a polynomial equation. Replaces the Newton-iteration structure theorem of the previous commit. Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Landed: exact approved Terminal native CI passes all six gates and stock/tidy/registry checks. Actual tested merge A read-only The trusted helper queued exact |
edemaine
left a comment
There was a problem hiding this comment.
REQUEST_CHANGES at 2d57804d8421fae0b4c624db9c3b68ca2723599a — independent non-author agent /root/review4739_lagrange, delegated by coordinator/reviewer-codex-edemaine. No mathematical defect found in the complete own layer. Please finish the inline reuse repair and the bounded manual addition below.
The Operator’s Manual currently has no entry for either new standalone API. “Foundations with no complexity endpoint” does not justify postponing all reference material under Maintaining the manuals. Add a short shared reference in the existing arithmetic chapter: imports, the characteristic-zero/ideal/fixed-point hypotheses and 2e ≤ N bound, the simple/general-root distinction, and links to the two complete checked clients with build commands. It can be extended by M2/M3; no complexity claim or separate tutorial is needed. The Agent Manual’s no-edit rationale is valid because roles/workflows do not change. A result-registry entry and a claim that #4734 is complete are unnecessary.
I read the finite telescoping and weight proofs: coefficient weights add, the geometric remainder gains 2e weight, and all tail coefficients lie in J^e under the stated bound. The coefficient-ring theorem allows zero divisors; the field/characteristic-zero hypotheses pay for inverse scalar factors. For roots, idealOfVars^(D+1) controls degree-D truncation; root multiplicity supplies a derivative with nonzero successor, and infinite-field evaluation plus translation gives the simple-root instance. The tests instantiate the ideal hypotheses, a concrete nonzero simple root and a double root; e=0 is covered by the quantified ideal example. No resource or algorithm claim is inferred.
Primary-source correspondence was checked against Bhattacharjee et al., arXiv:2506.23214v1, Corollary 3.3’s characteristic-zero expression and Theorem 4.1, and Dvir–Shpilka–Yehudayoff, TR07-121, §3.1 Part I. The ideal-adic finite proof is accurately identified as a different proof. The exact Stanley book text was not freshly accessible; I do not claim to have inspected it.
Hosted CI passes all six gates and stock changed-file checks; tested merge f3fd53a7 has exactly this head’s tree. I read the actual reports: no candidate among 1 definition, 16 statements or 16 proof blocks; these bounded scans do not establish uniqueness, and source/API searches were also performed. Guide examples compile; rendered HTML was skipped. No changed manual pages exist yet for rendered QA. No source edits, local Lean/Lake/build/cache, formal human approval or queue action.
…slib-community#4734) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Head is now
Local validation on this head: 🤖 Generated with Claude Code |
edemaine
left a comment
There was a problem hiding this comment.
APPROVE the affected source/manual delta at b6470324e5adc5adf865b454bf63488aa839e42b — independent non-author agent reviewer-codex-edemaine. Both earlier findings are resolved; integration still waits for final native gates and actual notices.
The complete proof repair derives hcc from the imported coeff_zero_shift after constantCoeff_eq. The local ring-hom coercion reduces to the same shift, and both constant-term callers retain their argument. No statement, import, attribute or definition changes. The Lagrange module and both actual test clients are byte-identical to the previously reviewed 2d57804d; that mathematical/source review carries. Current main’s trusted explicit-base checker also passes for repaired c872ef9b (base 5286bfa6) replayed onto c464441d, producing this exact head, including aggregate/bibliography reconciliation.
The new shared Operator section accurately gives the characteristic-zero algebra/ideal/fixed-point hypotheses, 2 * e ≤ N, finite Lagrange–Good/root contracts, simple/general-root distinction, complete clients and repository-root build command. It leaves positive characteristic, power-series/compositional-inverse results and general factors uncertified. This foundation layer does not complete #4734. The Agent manual needs no procedural edit; no new registry/ROADMAP/upstream change is warranted.
Exact-head manual artifact 13976486103 matches API/download digest 6192bd38da3e4993bbde68434ec4a7676021314765bb52e7b684d38019122f80, both clean manifests, the complete 72+1 chapter set, three converters, bibliography/363 keys and both PDF hashes. Operator PDF243–244 (printed235–236) and Agent4 are readable. Hosted checks cover generated inputs absent from the archive. Guide examples pass; rendered HTML was skipped.
At the final read, native CI passed strict build/tests and was running lint. Remaining gates, stock/tidy/registry checks and actual current advisory coverage are pending; a successful notice step is not a read report, and prior-head success is not current validation. No source edits, local Lean/build/cache probes or queue action. This is agent review, not human approval.
…h formulas — formula substitution, interpolation, root construction (cslib-community#4734, milestone 2; stacked on cslib-community#4739) (cslib-community#4745) * feat(foundations): the structure of low-degree roots of a polynomial equation (cslib-community#4734) Universal root by a Newton step on the order of vanishing, uniqueness of a root to a given order, and the structure theorem f = α + (A(gᵢ - gᵢ(0)))_{≤ d+1}; reduction of an arbitrary root to a simple one in characteristic zero. Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com> * doc(references): Chou, Kumar and Solomon on closure under factorization Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com> * feat(arithmetic): substitution and interpolation of unbounded fan-in formulas Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com> * feat(foundations): Lagrange inversion for a fixed point of a polynomial; roots by a closed formula (cslib-community#4734) A finite proof of the Lagrange inversion formula modulo powers of an ideal (telescoping and a weight filtration, no power series), and the resulting formula for the low-degree part of a root of a polynomial equation. Replaces the Newton-iteration structure theorem of the previous commit. Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com> * feat(arithmetic): roots of formulas of product-depth Δ have formulas of product-depth Δ + 1 Implements BhattacharjeeEtAl2025, Theorem 4.1, from the closed formula MvPolynomial.exists_shift_eq_truncate_sum_of_root: derivative via interpolation in a new variable, shifts by affine inputs, one layer of powers, coefficients and truncation by interpolation. Size bound rootCost s D = 2^36 (s+1)^8 (D+1)^6. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * review: reuse coeff_zero_shift; shared Operator reference for roots (cslib-community#4734) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * review: shared degree-of-substitution bound over algebras; Operator reference for formulas for roots (cslib-community#4734) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5.2 <noreply@anthropic.com>
Part of #4734 (milestone 1 of 4: algebra only, no circuits).
What this adds
Lagrange inversion for a fixed point of a polynomial, modulo powers of an ideal, with a finite proof (no power series), and its consequence for roots of polynomial equations in several variables.
In words: if
G (f) = fandGhas its coefficients of1andyinJ, thenf ≡ ∑_{m=1}^{N} (1/m) [y^{m-1}] G^m (mod J^e)whenever2e ≤ N. TakingJ = idealOfVars, a rootfofP (x, y)withf (0) = 0and∂P/∂y (0, 0) ≠ 0has the same part of degree≤ Das∑_{m=1}^{2D+2} (1/m) [y^{m-1}] (y - P/a)^m. Any root of a nonzeroPreduces to this case after ay-derivative and a shift ofx.This is what the later milestones need: a root of a constant-depth formula is obtained by powers, coefficients in
yand a truncation — operations that interpolation implements without iteration — so it has a constant-depth formula of one more product layer.Proof
Write
T (Q) = ∑_{n ≤ N} [y^n] (Q G^n).sum_coeff_X_sub_mul):T ((y - G) K) = -[y^N] (K G^{N+1}).sum_coeff_one_sub_derivative):T (1 - G') = 1 - [y^{N+1}] G^{N+1}, from(n + 1) [y^n] (G' G^n) = (n + 1) [y^{n+1}] G^{n+1}.HasWeight):c y^jwithc ∈ J^ahas weight2a + j; weights add under products andGhas weight≥ 2, so both error terms lie inJ^e.G (f) = fgivesy - G = (y - f)(1 - D)withD (0) ∈ J, and a finite geometric series inDreplaces the inverse of1 - D; henceT ((y - f) K) ≡ 0andT (H (1 - G')) ≡ H (f). ForH = ythe sum rearranges to the displayed formula.The multiple-root reduction uses Mathlib's
lt_rootMultiplicity_iff_isRoot_iterate_derivativeandMvPolynomial.funext.Sources and departures
Jinstead of power series, soJ = idealOfVarshandles all variables at once and the paper's scalingx ↦ t xis not needed.m).PowerSeries.substInvOfIsUnit, but no coefficient formula); the statement here could go upstream.Manual and registry
The Operator’s Manual now has the shared “Roots of polynomial equations and hardness versus randomness” reference: imports, characteristic-zero/ideal/fixed-point hypotheses,
2 * e ≤ N, simple/general-root contracts, complete checked clients and repository-root build command. Later layers extend this section. The Agent Operator’s Manual needs no edit because roles and procedures are unchanged. No result-registry entry is added for this foundation-only milestone, and the broader #4734 objective remains open.Validation
On this head:
lake build CslibFrontier CslibFrontierResults CslibFrontierTestssucceeds;python3 scripts/check_hygiene.pyandpython3 scripts/check_changed_files.py --base origin/mainpass.python3 scripts/audit_queries.py references --unusedon the two modules finds no declaration that nothing uses, andduplicatesonFoundations/finds no group containing them.scripts/check.shas a whole was not run. Nosorry. Tests: the fixed pointtofG = toverℚ[t], the weight filtration ont + y², and the rootx₀ x₁ofy - x₀ x₁(and of(y - x₀ x₁)²).Hosted final-source validation: all six gates, stock/tidy/registry checks, actual notices, Guide examples and both-manual provenance/render review are clear. Canonical independent review/integration evidence. This supplies full validation without claiming a new local whole-library run.
AI assistance
Written with Claude Code in a session directed by the author; the finite proof was worked out in that session. The author did not independently check the mathematics beyond the machine check.
🤖 Generated with Claude Code