maths
Performs numerical and symbolic mathematics using NumPy, SciPy, SymPy, and mpmath. Use when the user needs linear algebra, arrays, optimization, integration, ODEs, symbolic expressions, equation solvi
Files11
View on GitHubSKILL.mdSKILLS/DATA/001-maths/SKILL.md
GitHubMaths
Install this skill (skills CLI)
Add this skill to your agent from the skills ecosystem:
# List skills in this repo
npx skills add udnisap/skills --list
# Install the maths skill (project scope)
npx skills add udnisap/skills --skill maths -y
# Install globally for all projects
npx skills add udnisap/skills --skill maths -g -y
Repo: github.com/udnisap/skills.
Setup (do this first)
Use a virtual environment and install the maths libraries inside it. Step-by-step: install.md. Install by OS (Linux, macOS, Windows): install-by-os.md.
- Check (with venv activated):
python -c "import numpy, scipy, sympy, mpmath; print('OK')"— if this fails, follow install.md or install-by-os.md for your platform. - Quick setup: create venv (e.g.
python3 -m venv .venv), activate it, thenpip install numpy scipy sympy mpmath. Run scripts with that venv’spython.
Use established Python libraries instead of hand-rolled math. Choose by task:
| Need | Library |
|---|---|
| Arrays, linear algebra, FFT, random | NumPy |
| Optimization, integration, ODEs, stats, sparse | SciPy |
| Symbolic math, simplify, solve, differentiate | SymPy |
| Arbitrary-precision floats, special functions | mpmath |
When to use
- Numerical arrays, matrix ops, eigenvalues, SVD, FFT
- Minimization, root finding, curve fitting, integration, ODEs
- Symbolic expressions, equation solving, calculus (symbolic)
- High-precision decimals or special functions beyond float64
Quick workflow
- Identify numeric vs symbolic vs high-precision.
- Import only the submodule you need (e.g.
scipy.optimize,sympy.solvers). - Prefer library functions over custom loops (vectorize with NumPy; use
scipy.integrate,sympy.integrate, etc.).
Using from the CLI (for agents)
When the agent must run maths from the command line, use Python inline:
- One-liner:
python -c 'import numpy as np; print(np.linalg.det([[1,2],[3,4]]))' - Multi-line: use a single string with semicolons, or write a short script and run
python script.py. For longer code, prefer a temp file over a huge-cstring. - SymPy (expression in, result out):
python -c "import sympy as sp; x=sp.Symbol('x'); print(sp.solve(x**2-4,x))" - Exit code: script should
print()the result and exit 0; the agent reads stdout. Usesys.exit(1)on error so the agent can detect failure.
Use the venv’s python (or python3); ensure the venv has the needed packages (see install.md).
Scripts
Runnable examples are in scripts/. With the venv activated, run them from the skill directory:
scripts/numpy_solve.py— solve Ax = b (option:--eigfor eigenvalues)scripts/scipy_minimize.py— minimize a scalar functionscripts/scipy_integrate.py— definite integral (Gaussian)scripts/sympy_solve.py— solve equation (arg: expression, e.g."x**2 - 4")scripts/sympy_integrate.py— symbolic integral (arg: expression, e.g."sin(x)**2")scripts/mpmath_precision.py— high-precision integral (optional arg: dps)
See examples.md for exact CLI commands and one-liners.
Additional resources
- For environment setup (venv and library install), see install.md; for OS-specific install, see install-by-os.md.
- For API patterns and code snippets per library, see reference.md.
- For worked examples and CLI usage, see examples.md.