A 2025 paper proves that every elementary math function can be constructed from just one binary operator and the constant 1. No addition. No multiplication. No built-in exp, log, or trig. Just this:
This page proves it live. Every result below is computed by chaining only eml and 1. The JavaScript runs the actual operator — you can verify each step.
eml + 1 alone:Based on arXiv:2603.21852
EML fuses two transformations: exp (converts addition into multiplication) and ln (converts multiplication into addition). The minus sign lets us isolate either one by choosing the right inputs.
The trick: when we set y = 1, the ln term vanishes (since ln(1) = 0), giving us pure exp. When we nest three EMLs in a specific pattern, we cancel the exp terms and isolate pure ln. With both exp and ln in hand, we can build everything.
eml operator and every leaf is 1.Each card below shows one function being constructed from eml and 1. The "how" column explains the algebraic steps. The "live result" is computed in real time by the JavaScript — no Math.sin, no Math.log, just eml() calls.
Build your own EML expressions. Type eml(..., ...) using only eml, numbers, and x. The evaluator runs the real operator.
Since the grammar is S → 1 | eml(S, S), every expression becomes a tree of identical eml nodes. The only thing that varies is the tree's shape. Click a function to see its tree.
Each function is built from the ones before it. This is the order of derivation — hover to highlight.
The paper also shows that EML trees can be trained with gradient descent. Each node has learnable parameters (α + βx + γf). Given data points from an unknown function, the optimizer recovers the exact function. Watch it converge:
The idea that one primitive can generate an entire domain is not new. EML joins a distinguished family:
Every Boolean function (AND, OR, NOT, XOR...) from a single gate. Functionally complete.
All computable functions from just function abstraction + application. Turing-complete from one construct.
A single 1D rule that is Turing-complete. Simple local rules produce universal computation.
One binary operator + constant 1 generates all elementary functions: arithmetic, transcendentals, constants.
Everything on this page runs from this core. Complex number arithmetic (needed because EML operates in the complex plane) plus the single operator. ~30 lines. No libraries.