Repository navigation
lingshu-solver v1.0.7
灵数求解器 lingshu-solver@1.0.7
修复(真缺陷,非退步)
- 仿射求逆 _affInv 中心双重计数(#P0,soundness 假阴性):1/b 一阶泰勒里旧代码 r = 0 - b = -b,再 lin = (-1/b.c^2) * (-b),其线性项中心已是 1/b.c,return 又加 1/b.c -> 中心被双重计数为 2/b.c(如 1/5 算成 0.4、12/5 算成 4.8)。凡含除法的区间包络 / 中值定理判无解(suan7 前向传播矛盾检测、suan29 导数单调剪枝、suan35 投影反证剪枝)系统性假阴性:显式给定变量域的除法方程恒报「无解」。例 x1=12, x2=5, x1/x2 - x3 = 0 给 x3 任意域 -> 旧版 0 解,真实解 x3=2.4 存在。
- 修复:dev = b - b.c(中心为 0)做一阶泰勒,中心恰为 1/b.c,噪声符号一并修正。
配套(sound-safe,防舍入假阴性)
- 新增 _ivExcludesZero(iv):区间包络离 0 超过 max(1e-12, 1e-12*|iv|) 才判「证明无解」。避免点域 [2.4,2.4] 处 12/5 与字面 2.4 的浮点差(约 2e-16)把真解误杀。绝不引入假阳性——真无解用例(域外根)仍正确证空。
验证
- 除法专项 10 例全 PASS(原 bug 复现 + 点域 + 真无解);
- 回归套件 28 例 0 崩溃、known 命中 100%(mcp.json 10/10);
- MCP stdio 冒烟 8/8。
安装
npx -y lingshu-solver