Pandrosion 449
A standalone Python file with NumPy. Real or complex systems, square, overdetermined and underdetermined. No external solver or earlier release is called as a fallback.
File hosted on Zenodo · MIT license
An identifiable release.
The Zenodo DOI identifies the published release. The SHA-256 fingerprint identifies the file used for the tests presented here.
SHA-256: 9a358497e3bdafadf4e119511d3d031a6984ee012cd402aa9caad7c0bb6b2b74
Your first calculation
Install NumPy, place the file in your project and import solve and Options.
python3 -m pip install numpy
from pandrosion_449_standalone import solve, Options
result = solve(
lambda z: (z - 5) * (z - 7) * (z - 12),
[8],
Options(mode="root"),
)
print(result.x)
print(result.root_success, result.residual)
print(result.function_evaluations)
One call returns one candidate, rather than an exhaustive list of roots. The ls and auto modes can recognize least-squares stationarity with a nonzero residual. To disable the heuristic detection of complex structure, use jacobian_kind="real".
The engine
- Newton/Gauss–Newton models, numerical Jacobians and secant updates.
- Trust regions, SVD and support for rectangular systems.
- Integrated exploration with geometric starting points and a stereographic projection of the appropriate dimension.
- Local probes at representable coordinates, under the same global evaluation budget.
What changes in 449
A reserve protects the probe quota for candidates close to the root threshold. The early cumulative quota is 128 evaluations beyond four times the tolerance; the full quota of 320 becomes available closer to the threshold. Probes remain included in the global and local physical evaluation budgets.
On the targeted case U-2026103130/184, release 449 reaches a residual of approximately 7.45 × 10−9 in 401 evaluations, below the unchanged threshold of 10−8. Release 448 failed on this case after 5,658 evaluations.
These configurations combine data known during development and a held-out set. The 25 remaining failures are retained in the report. Overall timings are comparable to release 448; this campaign does not establish universal superiority.
Read the protocol and limitations →
Verify and cite
python3 pandrosion_449_standalone.py --self-test
- 449 validation report ↓Protocol, tables and targeted cases
- Lean mathematical models and results ↓Lean 4.33.1 · Mathlib v4.33.1
- Cite release 449 on Zenodo ↗DOI: 10.5281/zenodo.23839661
Watch the solver work.
Replay evaluations recorded with the original 449 file on z³ − 1. The displayed points are actual improvements in the best residual observed.
Follow an actual
449 run.
The landscape represents |z³ − 1|. Its three minima are the known roots. Replay the best candidates observed during calls to the original solver.
A recorded trajectory, a landscape to explore.
3D loads when you request it. Animations respect your reduced-motion preference.
Diagrams and explanations are accessible without 3D. Three.js scenes are hosted on this website, without a visualization CDN. Three.js license.