名称: 数学 描述: 统一数学能力 - 计算、求解和解释。我路由到正确的工具。 触发词: [“计算”, “求解”, “解决”, “积分”, “导数”, “特征值”, “矩阵”, “简化”, “因式分解”, “极限”, “级数”, “微分方程”, “单位转换”, “解释”, “什么是”, “如何”] 允许的工具: [Bash, Read, Write] 优先级: 高
/math - 统一数学能力
所有计算和解释的一个入口点。 我根据您的请求路由到正确的工具。
对于正式证明,请使用 /prove 代替。
快速示例
| 您说 | 我使用 |
|---|---|
| “求解 x² - 4 = 0” | SymPy 求解 |
| “积分 sin(x) 从 0 到 π” | SymPy 积分 |
| “矩阵 [[1,2],[3,4]] 的特征值” | SymPy 特征值 |
| “x² + 1 > 0 对所有 x 都成立吗?” | Z3 证明 |
| “转换 5 英里为公里” | Pint |
| “解释什么是函子” | 范畴理论技能 |
计算脚本
SymPy (符号数学)
uv run python "$CLAUDE_PROJECT_DIR/.claude/scripts/cc_math/sympy_compute.py" <command> <args>
| 命令 | 描述 | 示例 |
|---|---|---|
solve |
求解方程 | solve "x**2 - 4" --var x |
integrate |
定/不定积分 | integrate "sin(x)" --var x --lower 0 --upper pi |
diff |
导数 | diff "x**3" --var x |
simplify |
简化表达式 | simplify "sin(x)**2 + cos(x)**2" |
limit |
计算极限 | limit "sin(x)/x" --var x --point 0 |
series |
泰勒展开 | series "exp(x)" --var x --point 0 --n 5 |
dsolve |
求解常微分方程 | dsolve "f''(x) + f(x)" --func f --var x |
laplace |
拉普拉斯变换 | laplace "sin(t)" --var t |
矩阵操作:
| 命令 | 描述 |
|---|---|
det |
行列式 |
eigenvalues |
特征值 |
eigenvectors |
特征向量及重数 |
inverse |
矩阵逆 |
transpose |
转置 |
rref |
行阶梯形式 |
rank |
矩阵秩 |
nullspace |
零空间基 |
linsolve |
线性系统 Ax=b |
charpoly |
特征多项式 |
数论:
| 命令 | 描述 |
|---|---|
factor |
因式分解多项式 |
factorint |
质因数分解 |
isprime |
素数测试 |
gcd |
最大公约数 |
lcm |
最小公倍数 |
modinverse |
模逆 |
组合数学:
| 命令 | 描述 |
|---|---|
binomial |
C(n,k) |
factorial |
n! |
permutation |
P(n,k) |
partition |
整数分割 p(n) |
catalan |
卡特兰数 |
bell |
贝尔数 |
Z3 (约束求解)
uv run python "$CLAUDE_PROJECT_DIR/.claude/scripts/cc_math/z3_solve.py" <command> <args>
| 命令 | 使用场景 |
|---|---|
sat |
是否可满足? |
prove |
是否总是真? |
optimize |
在约束下找到最小/最大值 |
Pint (单位)
uv run python "$CLAUDE_PROJECT_DIR/.claude/scripts/cc_math/pint_compute.py" convert <value> <from_unit> <to_unit>
示例: convert 5 miles kilometers
数学路由器 (自动路由)
uv run python "$CLAUDE_PROJECT_DIR/.claude/scripts/cc_math/math_router.py" route "<自然语言请求>"
返回要运行的精确命令。当不确定使用哪个脚本时使用。
主题技能 (用于解释)
当请求是 “解释 X” 或 “什么是 X” 时,我参考这些:
| 主题 | 技能位置 | 关键概念 |
|---|---|---|
| 抽象代数 | math/abstract-algebra/ |
群、环、域、同态 |
| 范畴理论 | math/category-theory/ |
函子、自然变换、极限 |
| 复分析 | math/complex-analysis/ |
解析函数、留数、轮廓积分 |
| 泛函分析 | math/functional-analysis/ |
巴拿赫空间、算子、谱 |
| 线性代数 | math/linear-algebra/ |
矩阵、特征空间、分解 |
| 数理逻辑 | math/mathematical-logic/ |
命题、谓词、证明理论 |
| 测度论 | math/measure-theory/ |
勒贝格、σ-代数、积分 |
| 实分析 | math/real-analysis/ |
极限、连续性、收敛性 |
| 拓扑学 | math/topology/ |
开集、紧致性、连通性 |
| 常微分方程/偏微分方程 | math/odes-pdes/ |
微分方程、边界问题 |
| 优化 | math/optimization/ |
凸优化、线性规划、梯度方法 |
| 数值方法 | math/numerical-methods/ |
近似、误差分析 |
| 图论/数论 | math/graph-number-theory/ |
图、素数、模运算 |
| 信息论 | math/information-theory/ |
熵、编码、信道 |
路由逻辑
我根据您的请求决定:
"求解/计算/计算" → SymPy (精确符号)
"X 是否总是真?" → Z3 (约束证明)
"转换单位" → Pint
"解释/什么是" → 主题技能获取上下文
"正式证明" → 重定向到 /prove
示例
求解方程
用户: 求解 x² - 5x + 6 = 0
Claude: uv run python "$CLAUDE_PROJECT_DIR/.claude/scripts/cc_math/sympy_compute.py" solve "x**2 - 5*x + 6" --var x
结果: x = 2 或 x = 3
计算特征值
用户: 找到矩阵 [[2, 1], [1, 2]] 的特征值
Claude: uv run python "$CLAUDE_PROJECT_DIR/.claude/scripts/cc_math/sympy_compute.py" eigenvalues "[[2,1],[1,2]]"
结果: {1: 1, 3: 1} (特征值 1 重数 1,特征值 3 重数 1)
证明不等式
用户: x² + y² ≥ 2xy 是否总是真?
Claude: uv run python "$CLAUDE_PROJECT_DIR/.claude/scripts/cc_math/z3_solve.py" prove "x**2 + y**2 >= 2*x*y"
结果: 已证明 (等价于 (x-y)² ≥ 0)
转换单位
用户: 26.2 英里是多少公里?
Claude: uv run python "$CLAUDE_PROJECT_DIR/.claude/scripts/cc_math/pint_compute.py" convert 26.2 miles kilometers
结果: 42.16 公里
何时使用 /prove 代替
使用 /prove 当您需要:
- 机器验证的正式证明 (Lean 4)
- 范畴理论证明 (函子、Yoneda 等)
- 出版质量的验证
- 抽象代数证明
/math 用于计算。/prove 用于验证。