Exp-Minus-Log compiler

Remap formulas to EML trees.

Convert calculator-style expressions into the single operator EML(x, y) = exp(x) - ln(y), then shorten repeated subtrees.

Use explicit operators: +, -, *, /, ^. Supported calls include Sin[x], Log[x], Log[2, x], Sqrt[x], Hypot[x,y], Avg[x,y], LogisticSigmoid[x], and EML[x,y].

Optimized source


        

Short EML


        

Pure EML


        

RPN


        

Examples

Binary EML tree examples from the arXiv paper
Tree examples from Andrzej Odrzywolek, arXiv:2603.21852v2.

Tree preview

Choose a formula to draw the root, visible branches, and clipped subtrees.

Drag horizontally inside the preview for wide trees. The output blocks keep the full formula.

Source Notes

The page follows the paper's operator definition and the public EML compiler convention: Exp[z] becomes EML[z,1], and Log[z] becomes EML[1,EML[EML[1,z],1]]. Local simplification is conservative and does not prove a globally shortest tree.

Paper: All elementary functions from a single binary operator . Companion code: EML compiler toolkit .