Exact mathematics, offline

sqrt(12) gives you 2√3, not 3.4641016151377544.
Fractions never quietly become decimals, integers are as large as they need to be, and precision is whatever you ask for.

Rust kernelMIT licensedNo network calls3 MB installer

Try it right here

Loading the kernel…

>

Nothing is sent to a server. The whole engine is compiled to WebAssembly and runs in your browser — pull the network cable and reload, it still works.

Why not just another calculator

Exact by default

1/3 + 1/6 is 1/2, not 0.4999…. A decimal appears only when you type one, and the result carries a trailing point to say it is approximate.

Precision is chosen when you ask

π is stored as an exact constant. N(pi, 10000) expands ten thousand digits from it in a couple of milliseconds, rather than conjuring digits out of an already-rounded value.

It will not pretend

If an integral has no closed form it says so. If a differential equation is beyond it, it says so. A divergent definite integral is refused rather than handed back as something that looks like a number. Every closed form is substituted back into the original equation before you see it.

Genuinely offline

No HTTP client anywhere in the dependency tree, no fetch in the front end, and a default-src 'self' CSP. Works on a plane, on an air-gapped network, in a locked-down lab. Touches no registry keys and leaves nothing behind.

What it does

Arithmetic2^100 · 50! · 1/3+1/6
Algebrafactor(x^4+4) · expand((x+y)^5) · apart(1/(x^3-x), x)
Calculusdiff(x^x, x) · integrate(x*atan(x), x) · limit((1+1/n)^n, n, inf)
Multivariablegradient(f, [x,y]) · curl([-y,x,0], [x,y,z])
Differential equationsdsolve(y'' + 4*y' + 5*y = 0, y, x)
Linear algebradet(M) · inv(M) · eigenvals([2,1;1,3])
Number theoryisprime(1000000007) · factorint(600851475143)
Plottingplot(sin(x)/x, x, -20, 20) (desktop)

Get it

Download for Windows Other platforms Source · GitHub

The desktop build adds plotting, a variables panel and a help panel. The kernel is the same one running above.