Rust f32::asinh Percentage Accurate: 38.2% → 99.6%
Time: 8.1s
Alternatives: 14
Speedup: 4.0×
Unsound rule application detected in e-graph. Results may not be sound. (more) Specification ? \[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Local Percentage Accuracy vs ?
The average percentage accuracy by input value. Horizontal axis shows value of an input variable; the variable is choosen in the title. Vertical axis is accuracy; higher is better. Red represent the original program, while blue represents Herbie's suggestion. These can be toggled with buttons below the plot. The line is an average while dots represent individual samples. Accuracy vs Speed? The accuracy (vertical axis) and speed (horizontal axis) of each alternatives. Up and to the right is better. The red square shows the initial program, and each blue circle shows an alternative.The line shows the best available speed-accuracy tradeoffs. Alternative 1: 99.6% accurate, 0.3× speedup? \[\begin{array}{l}
t_0 := \mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)\\
\mathbf{if}\;t_0 \leq -0.5:\\
\;\;\;\;\mathsf{copysign}\left(-\log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)\\
\mathbf{elif}\;t_0 \leq 0.03999999910593033:\\
\;\;\;\;\mathsf{copysign}\left(-0.16666666666666666 \cdot {x}^{3} + \left(0.075 \cdot {x}^{5} + \left(x + -0.044642857142857144 \cdot {x}^{7}\right)\right), x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right), x\right)\\
\end{array}
\]
Derivation Split input into 3 regimes if (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) < -0.5 Initial program 46.9%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation +-commutative46.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\sqrt{x \cdot x + 1} + \left|x\right|\right)}, x\right)
\]
add-sqr-sqrt-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right|\right), x\right)
\]
fabs-sqr-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \color{blue}{\sqrt{x} \cdot \sqrt{x}}\right), x\right)
\]
add-sqr-sqrt9.3%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \color{blue}{x}\right), x\right)
\]
flip-+6.3%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\frac{\sqrt{x \cdot x + 1} \cdot \sqrt{x \cdot x + 1} - x \cdot x}{\sqrt{x \cdot x + 1} - x}\right)}, x\right)
\]
log-div6.3%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\sqrt{x \cdot x + 1} \cdot \sqrt{x \cdot x + 1} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right)}, x\right)
\]
add-sqr-sqrt7.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(x \cdot x + 1\right)} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right), x\right)
\]
fma-def7.5%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\mathsf{fma}\left(x, x, 1\right)} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right), x\right)
\]
+-commutative7.5%
\[\leadsto \mathsf{copysign}\left(\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\sqrt{\color{blue}{1 + x \cdot x}} - x\right), x\right)
\]
hypot-1-def7.5%
\[\leadsto \mathsf{copysign}\left(\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\color{blue}{\mathsf{hypot}\left(1, x\right)} - x\right), x\right)
\]
Applied egg-rr 7.5%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Step-by-step derivation fma-udef7.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(x \cdot x + 1\right)} - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
+-commutative7.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(1 + x \cdot x\right)} - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
associate--l+43.3%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 + \left(x \cdot x - x \cdot x\right)\right)} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
+-inverses100.0%
\[\leadsto \mathsf{copysign}\left(\log \left(1 + \color{blue}{0}\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
metadata-eval100.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{1} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
metadata-eval100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{0} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
neg-sub0100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-\log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Simplified100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-\log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
if -0.5 < (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) < 0.0399999991 Initial program 21.6%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation *-un-lft-identity21.6%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 \cdot \left(\left|x\right| + \sqrt{x \cdot x + 1}\right)\right)}, x\right)
\]
*-commutative21.6%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\left(\left|x\right| + \sqrt{x \cdot x + 1}\right) \cdot 1\right)}, x\right)
\]
log-prod21.6%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right) + \log 1}, x\right)
\]
add-sqr-sqrt9.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
fabs-sqr9.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
add-sqr-sqrt22.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{x} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
+-commutative22.0%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \sqrt{\color{blue}{1 + x \cdot x}}\right) + \log 1, x\right)
\]
hypot-1-def21.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \color{blue}{\mathsf{hypot}\left(1, x\right)}\right) + \log 1, x\right)
\]
metadata-eval21.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + \color{blue}{0}, x\right)
\]
Applied egg-rr 21.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + 0}, x\right)
\]
Step-by-step derivation +-rgt-identity21.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Simplified21.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Taylor expanded in x around 0 100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-0.16666666666666666 \cdot {x}^{3} + \left(0.075 \cdot {x}^{5} + \left(-0.044642857142857144 \cdot {x}^{7} + x\right)\right)}, x\right)
\]
if 0.0399999991 < (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) Initial program 57.9%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation *-un-lft-identity57.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 \cdot \left(\left|x\right| + \sqrt{x \cdot x + 1}\right)\right)}, x\right)
\]
*-commutative57.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\left(\left|x\right| + \sqrt{x \cdot x + 1}\right) \cdot 1\right)}, x\right)
\]
log-prod57.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right) + \log 1}, x\right)
\]
add-sqr-sqrt57.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
fabs-sqr57.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
add-sqr-sqrt57.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{x} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
+-commutative57.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \sqrt{\color{blue}{1 + x \cdot x}}\right) + \log 1, x\right)
\]
hypot-1-def99.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \color{blue}{\mathsf{hypot}\left(1, x\right)}\right) + \log 1, x\right)
\]
metadata-eval99.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + \color{blue}{0}, x\right)
\]
Applied egg-rr 99.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + 0}, x\right)
\]
Step-by-step derivation +-rgt-identity99.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Simplified99.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Recombined 3 regimes into one program. Final simplification100.0%
\[\leadsto \begin{array}{l}
\mathbf{if}\;\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right) \leq -0.5:\\
\;\;\;\;\mathsf{copysign}\left(-\log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)\\
\mathbf{elif}\;\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right) \leq 0.03999999910593033:\\
\;\;\;\;\mathsf{copysign}\left(-0.16666666666666666 \cdot {x}^{3} + \left(0.075 \cdot {x}^{5} + \left(x + -0.044642857142857144 \cdot {x}^{7}\right)\right), x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right), x\right)\\
\end{array}
\]
Alternative 2: 99.6% accurate, 0.4× speedup? \[\begin{array}{l}
t_0 := \mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)\\
\mathbf{if}\;t_0 \leq -0.10000000149011612:\\
\;\;\;\;\mathsf{copysign}\left(-\log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)\\
\mathbf{elif}\;t_0 \leq 0.03999999910593033:\\
\;\;\;\;\mathsf{copysign}\left(-0.16666666666666666 \cdot {x}^{3} + \left(x + 0.075 \cdot {x}^{5}\right), x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right), x\right)\\
\end{array}
\]
Derivation Split input into 3 regimes if (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) < -0.100000001 Initial program 47.6%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation +-commutative47.6%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\sqrt{x \cdot x + 1} + \left|x\right|\right)}, x\right)
\]
add-sqr-sqrt-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right|\right), x\right)
\]
fabs-sqr-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \color{blue}{\sqrt{x} \cdot \sqrt{x}}\right), x\right)
\]
add-sqr-sqrt10.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \color{blue}{x}\right), x\right)
\]
flip-+7.6%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\frac{\sqrt{x \cdot x + 1} \cdot \sqrt{x \cdot x + 1} - x \cdot x}{\sqrt{x \cdot x + 1} - x}\right)}, x\right)
\]
log-div7.6%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\sqrt{x \cdot x + 1} \cdot \sqrt{x \cdot x + 1} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right)}, x\right)
\]
add-sqr-sqrt8.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(x \cdot x + 1\right)} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right), x\right)
\]
fma-def8.7%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\mathsf{fma}\left(x, x, 1\right)} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right), x\right)
\]
+-commutative8.7%
\[\leadsto \mathsf{copysign}\left(\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\sqrt{\color{blue}{1 + x \cdot x}} - x\right), x\right)
\]
hypot-1-def8.7%
\[\leadsto \mathsf{copysign}\left(\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\color{blue}{\mathsf{hypot}\left(1, x\right)} - x\right), x\right)
\]
Applied egg-rr 8.7%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Step-by-step derivation fma-udef8.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(x \cdot x + 1\right)} - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
+-commutative8.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(1 + x \cdot x\right)} - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
associate--l+44.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 + \left(x \cdot x - x \cdot x\right)\right)} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
+-inverses99.9%
\[\leadsto \mathsf{copysign}\left(\log \left(1 + \color{blue}{0}\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
metadata-eval99.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{1} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
metadata-eval99.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{0} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
neg-sub099.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-\log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Simplified99.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-\log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
if -0.100000001 < (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) < 0.0399999991 Initial program 21.0%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation *-un-lft-identity21.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 \cdot \left(\left|x\right| + \sqrt{x \cdot x + 1}\right)\right)}, x\right)
\]
*-commutative21.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\left(\left|x\right| + \sqrt{x \cdot x + 1}\right) \cdot 1\right)}, x\right)
\]
log-prod21.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right) + \log 1}, x\right)
\]
add-sqr-sqrt9.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
fabs-sqr9.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
add-sqr-sqrt21.3%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{x} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
+-commutative21.3%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \sqrt{\color{blue}{1 + x \cdot x}}\right) + \log 1, x\right)
\]
hypot-1-def21.3%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \color{blue}{\mathsf{hypot}\left(1, x\right)}\right) + \log 1, x\right)
\]
metadata-eval21.3%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + \color{blue}{0}, x\right)
\]
Applied egg-rr 21.3%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + 0}, x\right)
\]
Step-by-step derivation +-rgt-identity21.3%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Simplified21.3%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Taylor expanded in x around 0 100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-0.16666666666666666 \cdot {x}^{3} + \left(0.075 \cdot {x}^{5} + x\right)}, x\right)
\]
if 0.0399999991 < (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) Initial program 57.9%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation *-un-lft-identity57.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 \cdot \left(\left|x\right| + \sqrt{x \cdot x + 1}\right)\right)}, x\right)
\]
*-commutative57.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\left(\left|x\right| + \sqrt{x \cdot x + 1}\right) \cdot 1\right)}, x\right)
\]
log-prod57.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right) + \log 1}, x\right)
\]
add-sqr-sqrt57.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
fabs-sqr57.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
add-sqr-sqrt57.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{x} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
+-commutative57.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \sqrt{\color{blue}{1 + x \cdot x}}\right) + \log 1, x\right)
\]
hypot-1-def99.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \color{blue}{\mathsf{hypot}\left(1, x\right)}\right) + \log 1, x\right)
\]
metadata-eval99.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + \color{blue}{0}, x\right)
\]
Applied egg-rr 99.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + 0}, x\right)
\]
Step-by-step derivation +-rgt-identity99.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Simplified99.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Recombined 3 regimes into one program. Final simplification100.0%
\[\leadsto \begin{array}{l}
\mathbf{if}\;\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right) \leq -0.10000000149011612:\\
\;\;\;\;\mathsf{copysign}\left(-\log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)\\
\mathbf{elif}\;\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right) \leq 0.03999999910593033:\\
\;\;\;\;\mathsf{copysign}\left(-0.16666666666666666 \cdot {x}^{3} + \left(x + 0.075 \cdot {x}^{5}\right), x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right), x\right)\\
\end{array}
\]
Alternative 3: 98.1% accurate, 1.3× speedup? \[\begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(-\log \left(x \cdot -2 + 0.5 \cdot \frac{-1}{x}\right), x\right)\\
\mathbf{elif}\;x \leq 0.03999999910593033:\\
\;\;\;\;\mathsf{copysign}\left(x + -0.16666666666666666 \cdot {x}^{3}, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right), x\right)\\
\end{array}
\]
Derivation Split input into 3 regimes if x < -200 Initial program 46.1%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation +-commutative46.1%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\sqrt{x \cdot x + 1} + \left|x\right|\right)}, x\right)
\]
add-sqr-sqrt-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right|\right), x\right)
\]
fabs-sqr-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \color{blue}{\sqrt{x} \cdot \sqrt{x}}\right), x\right)
\]
add-sqr-sqrt7.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \color{blue}{x}\right), x\right)
\]
flip-+4.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\frac{\sqrt{x \cdot x + 1} \cdot \sqrt{x \cdot x + 1} - x \cdot x}{\sqrt{x \cdot x + 1} - x}\right)}, x\right)
\]
log-div4.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\sqrt{x \cdot x + 1} \cdot \sqrt{x \cdot x + 1} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right)}, x\right)
\]
add-sqr-sqrt5.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(x \cdot x + 1\right)} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right), x\right)
\]
fma-def6.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\mathsf{fma}\left(x, x, 1\right)} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right), x\right)
\]
+-commutative6.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\sqrt{\color{blue}{1 + x \cdot x}} - x\right), x\right)
\]
hypot-1-def6.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\color{blue}{\mathsf{hypot}\left(1, x\right)} - x\right), x\right)
\]
Applied egg-rr 6.1%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Step-by-step derivation fma-udef5.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(x \cdot x + 1\right)} - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
+-commutative5.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(1 + x \cdot x\right)} - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
associate--l+42.4%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 + \left(x \cdot x - x \cdot x\right)\right)} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
+-inverses100.0%
\[\leadsto \mathsf{copysign}\left(\log \left(1 + \color{blue}{0}\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
metadata-eval100.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{1} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
metadata-eval100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{0} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
neg-sub0100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-\log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Simplified100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-\log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Taylor expanded in x around -inf 100.0%
\[\leadsto \mathsf{copysign}\left(-\log \color{blue}{\left(-2 \cdot x - 0.5 \cdot \frac{1}{x}\right)}, x\right)
\]
if -200 < x < 0.0399999991 Initial program 22.2%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation *-un-lft-identity22.2%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 \cdot \left(\left|x\right| + \sqrt{x \cdot x + 1}\right)\right)}, x\right)
\]
*-commutative22.2%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\left(\left|x\right| + \sqrt{x \cdot x + 1}\right) \cdot 1\right)}, x\right)
\]
log-prod22.2%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right) + \log 1}, x\right)
\]
add-sqr-sqrt9.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
fabs-sqr9.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
add-sqr-sqrt22.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{x} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
+-commutative22.6%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \sqrt{\color{blue}{1 + x \cdot x}}\right) + \log 1, x\right)
\]
hypot-1-def22.5%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \color{blue}{\mathsf{hypot}\left(1, x\right)}\right) + \log 1, x\right)
\]
metadata-eval22.5%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + \color{blue}{0}, x\right)
\]
Applied egg-rr 22.5%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + 0}, x\right)
\]
Step-by-step derivation +-rgt-identity22.5%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Simplified22.5%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Taylor expanded in x around 0 99.1%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-0.16666666666666666 \cdot {x}^{3} + x}, x\right)
\]
if 0.0399999991 < x Initial program 57.9%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation *-un-lft-identity57.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 \cdot \left(\left|x\right| + \sqrt{x \cdot x + 1}\right)\right)}, x\right)
\]
*-commutative57.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\left(\left|x\right| + \sqrt{x \cdot x + 1}\right) \cdot 1\right)}, x\right)
\]
log-prod57.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right) + \log 1}, x\right)
\]
add-sqr-sqrt57.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
fabs-sqr57.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
add-sqr-sqrt57.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{x} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
+-commutative57.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \sqrt{\color{blue}{1 + x \cdot x}}\right) + \log 1, x\right)
\]
hypot-1-def99.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \color{blue}{\mathsf{hypot}\left(1, x\right)}\right) + \log 1, x\right)
\]
metadata-eval99.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + \color{blue}{0}, x\right)
\]
Applied egg-rr 99.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + 0}, x\right)
\]
Step-by-step derivation +-rgt-identity99.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Simplified99.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Recombined 3 regimes into one program. Final simplification99.6%
\[\leadsto \begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(-\log \left(x \cdot -2 + 0.5 \cdot \frac{-1}{x}\right), x\right)\\
\mathbf{elif}\;x \leq 0.03999999910593033:\\
\;\;\;\;\mathsf{copysign}\left(x + -0.16666666666666666 \cdot {x}^{3}, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right), x\right)\\
\end{array}
\]
Alternative 4: 99.6% accurate, 1.3× speedup? \[\begin{array}{l}
\mathbf{if}\;x \leq -0.05000000074505806:\\
\;\;\;\;\mathsf{copysign}\left(-\log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)\\
\mathbf{elif}\;x \leq 0.03999999910593033:\\
\;\;\;\;\mathsf{copysign}\left(x + -0.16666666666666666 \cdot {x}^{3}, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right), x\right)\\
\end{array}
\]
Derivation Split input into 3 regimes if x < -0.0500000007 Initial program 48.9%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation +-commutative48.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\sqrt{x \cdot x + 1} + \left|x\right|\right)}, x\right)
\]
add-sqr-sqrt-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right|\right), x\right)
\]
fabs-sqr-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \color{blue}{\sqrt{x} \cdot \sqrt{x}}\right), x\right)
\]
add-sqr-sqrt12.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \color{blue}{x}\right), x\right)
\]
flip-+9.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\frac{\sqrt{x \cdot x + 1} \cdot \sqrt{x \cdot x + 1} - x \cdot x}{\sqrt{x \cdot x + 1} - x}\right)}, x\right)
\]
log-div10.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\sqrt{x \cdot x + 1} \cdot \sqrt{x \cdot x + 1} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right)}, x\right)
\]
add-sqr-sqrt10.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(x \cdot x + 1\right)} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right), x\right)
\]
fma-def11.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\mathsf{fma}\left(x, x, 1\right)} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right), x\right)
\]
+-commutative11.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\sqrt{\color{blue}{1 + x \cdot x}} - x\right), x\right)
\]
hypot-1-def11.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\color{blue}{\mathsf{hypot}\left(1, x\right)} - x\right), x\right)
\]
Applied egg-rr 11.1%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Step-by-step derivation fma-udef10.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(x \cdot x + 1\right)} - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
+-commutative10.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(1 + x \cdot x\right)} - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
associate--l+45.3%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 + \left(x \cdot x - x \cdot x\right)\right)} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
+-inverses99.6%
\[\leadsto \mathsf{copysign}\left(\log \left(1 + \color{blue}{0}\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
metadata-eval99.6%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{1} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
metadata-eval99.6%
\[\leadsto \mathsf{copysign}\left(\color{blue}{0} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
neg-sub099.6%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-\log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Simplified99.6%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-\log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
if -0.0500000007 < x < 0.0399999991 Initial program 19.8%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation *-un-lft-identity19.8%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 \cdot \left(\left|x\right| + \sqrt{x \cdot x + 1}\right)\right)}, x\right)
\]
*-commutative19.8%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\left(\left|x\right| + \sqrt{x \cdot x + 1}\right) \cdot 1\right)}, x\right)
\]
log-prod19.8%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right) + \log 1}, x\right)
\]
add-sqr-sqrt9.3%
\[\leadsto \mathsf{copysign}\left(\log \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
fabs-sqr9.3%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
add-sqr-sqrt20.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{x} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
+-commutative20.1%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \sqrt{\color{blue}{1 + x \cdot x}}\right) + \log 1, x\right)
\]
hypot-1-def20.1%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \color{blue}{\mathsf{hypot}\left(1, x\right)}\right) + \log 1, x\right)
\]
metadata-eval20.1%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + \color{blue}{0}, x\right)
\]
Applied egg-rr 20.1%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + 0}, x\right)
\]
Step-by-step derivation +-rgt-identity20.1%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Simplified20.1%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Taylor expanded in x around 0 100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-0.16666666666666666 \cdot {x}^{3} + x}, x\right)
\]
if 0.0399999991 < x Initial program 57.9%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation *-un-lft-identity57.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 \cdot \left(\left|x\right| + \sqrt{x \cdot x + 1}\right)\right)}, x\right)
\]
*-commutative57.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\left(\left|x\right| + \sqrt{x \cdot x + 1}\right) \cdot 1\right)}, x\right)
\]
log-prod57.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right) + \log 1}, x\right)
\]
add-sqr-sqrt57.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
fabs-sqr57.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
add-sqr-sqrt57.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{x} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
+-commutative57.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \sqrt{\color{blue}{1 + x \cdot x}}\right) + \log 1, x\right)
\]
hypot-1-def99.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \color{blue}{\mathsf{hypot}\left(1, x\right)}\right) + \log 1, x\right)
\]
metadata-eval99.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + \color{blue}{0}, x\right)
\]
Applied egg-rr 99.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + 0}, x\right)
\]
Step-by-step derivation +-rgt-identity99.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Simplified99.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Recombined 3 regimes into one program. Final simplification99.9%
\[\leadsto \begin{array}{l}
\mathbf{if}\;x \leq -0.05000000074505806:\\
\;\;\;\;\mathsf{copysign}\left(-\log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)\\
\mathbf{elif}\;x \leq 0.03999999910593033:\\
\;\;\;\;\mathsf{copysign}\left(x + -0.16666666666666666 \cdot {x}^{3}, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right), x\right)\\
\end{array}
\]
Alternative 5: 97.6% accurate, 1.9× speedup? \[\begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(-\log \left(x \cdot -2 + 0.5 \cdot \frac{-1}{x}\right), x\right)\\
\mathbf{elif}\;x \leq 0.5:\\
\;\;\;\;\mathsf{copysign}\left(x + -0.16666666666666666 \cdot {x}^{3}, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(x + x\right)\right), x\right)\\
\end{array}
\]
Derivation Split input into 3 regimes if x < -200 Initial program 46.1%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation +-commutative46.1%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\sqrt{x \cdot x + 1} + \left|x\right|\right)}, x\right)
\]
add-sqr-sqrt-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right|\right), x\right)
\]
fabs-sqr-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \color{blue}{\sqrt{x} \cdot \sqrt{x}}\right), x\right)
\]
add-sqr-sqrt7.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \color{blue}{x}\right), x\right)
\]
flip-+4.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\frac{\sqrt{x \cdot x + 1} \cdot \sqrt{x \cdot x + 1} - x \cdot x}{\sqrt{x \cdot x + 1} - x}\right)}, x\right)
\]
log-div4.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\sqrt{x \cdot x + 1} \cdot \sqrt{x \cdot x + 1} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right)}, x\right)
\]
add-sqr-sqrt5.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(x \cdot x + 1\right)} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right), x\right)
\]
fma-def6.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\mathsf{fma}\left(x, x, 1\right)} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right), x\right)
\]
+-commutative6.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\sqrt{\color{blue}{1 + x \cdot x}} - x\right), x\right)
\]
hypot-1-def6.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\color{blue}{\mathsf{hypot}\left(1, x\right)} - x\right), x\right)
\]
Applied egg-rr 6.1%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Step-by-step derivation fma-udef5.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(x \cdot x + 1\right)} - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
+-commutative5.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(1 + x \cdot x\right)} - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
associate--l+42.4%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 + \left(x \cdot x - x \cdot x\right)\right)} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
+-inverses100.0%
\[\leadsto \mathsf{copysign}\left(\log \left(1 + \color{blue}{0}\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
metadata-eval100.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{1} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
metadata-eval100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{0} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
neg-sub0100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-\log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Simplified100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-\log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Taylor expanded in x around -inf 100.0%
\[\leadsto \mathsf{copysign}\left(-\log \color{blue}{\left(-2 \cdot x - 0.5 \cdot \frac{1}{x}\right)}, x\right)
\]
if -200 < x < 0.5 Initial program 22.9%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation *-un-lft-identity22.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 \cdot \left(\left|x\right| + \sqrt{x \cdot x + 1}\right)\right)}, x\right)
\]
*-commutative22.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\left(\left|x\right| + \sqrt{x \cdot x + 1}\right) \cdot 1\right)}, x\right)
\]
log-prod22.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right) + \log 1}, x\right)
\]
add-sqr-sqrt9.7%
\[\leadsto \mathsf{copysign}\left(\log \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
fabs-sqr9.7%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
add-sqr-sqrt23.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{x} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
+-commutative23.2%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \sqrt{\color{blue}{1 + x \cdot x}}\right) + \log 1, x\right)
\]
hypot-1-def23.2%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \color{blue}{\mathsf{hypot}\left(1, x\right)}\right) + \log 1, x\right)
\]
metadata-eval23.2%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + \color{blue}{0}, x\right)
\]
Applied egg-rr 23.2%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + 0}, x\right)
\]
Step-by-step derivation +-rgt-identity23.2%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Simplified23.2%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Taylor expanded in x around 0 98.8%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-0.16666666666666666 \cdot {x}^{3} + x}, x\right)
\]
if 0.5 < x Initial program 57.3%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Taylor expanded in x around inf 99.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(0.5 \cdot \frac{1}{x} + \left(\left|x\right| + x\right)\right)}, x\right)
\]
Step-by-step derivation associate-*r/99.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\frac{0.5 \cdot 1}{x}} + \left(\left|x\right| + x\right)\right), x\right)
\]
metadata-eval99.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{\color{blue}{0.5}}{x} + \left(\left|x\right| + x\right)\right), x\right)
\]
rem-square-sqrt99.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + x\right)\right), x\right)
\]
fabs-sqr99.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + x\right)\right), x\right)
\]
rem-square-sqrt99.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\color{blue}{x} + x\right)\right), x\right)
\]
Simplified99.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\frac{0.5}{x} + \left(x + x\right)\right)}, x\right)
\]
Recombined 3 regimes into one program. Final simplification99.1%
\[\leadsto \begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(-\log \left(x \cdot -2 + 0.5 \cdot \frac{-1}{x}\right), x\right)\\
\mathbf{elif}\;x \leq 0.5:\\
\;\;\;\;\mathsf{copysign}\left(x + -0.16666666666666666 \cdot {x}^{3}, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(x + x\right)\right), x\right)\\
\end{array}
\]
Alternative 6: 97.6% accurate, 1.9× speedup? \[\begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(-\log \left(x \cdot -2\right), x\right)\\
\mathbf{elif}\;x \leq 0.5:\\
\;\;\;\;\mathsf{copysign}\left(x + -0.16666666666666666 \cdot {x}^{3}, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(x + x\right)\right), x\right)\\
\end{array}
\]
Derivation Split input into 3 regimes if x < -200 Initial program 46.1%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation +-commutative46.1%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\sqrt{x \cdot x + 1} + \left|x\right|\right)}, x\right)
\]
add-sqr-sqrt-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right|\right), x\right)
\]
fabs-sqr-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \color{blue}{\sqrt{x} \cdot \sqrt{x}}\right), x\right)
\]
add-sqr-sqrt7.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \color{blue}{x}\right), x\right)
\]
flip-+4.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\frac{\sqrt{x \cdot x + 1} \cdot \sqrt{x \cdot x + 1} - x \cdot x}{\sqrt{x \cdot x + 1} - x}\right)}, x\right)
\]
log-div4.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\sqrt{x \cdot x + 1} \cdot \sqrt{x \cdot x + 1} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right)}, x\right)
\]
add-sqr-sqrt5.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(x \cdot x + 1\right)} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right), x\right)
\]
fma-def6.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\mathsf{fma}\left(x, x, 1\right)} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right), x\right)
\]
+-commutative6.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\sqrt{\color{blue}{1 + x \cdot x}} - x\right), x\right)
\]
hypot-1-def6.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\color{blue}{\mathsf{hypot}\left(1, x\right)} - x\right), x\right)
\]
Applied egg-rr 6.1%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Step-by-step derivation fma-udef5.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(x \cdot x + 1\right)} - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
+-commutative5.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(1 + x \cdot x\right)} - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
associate--l+42.4%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 + \left(x \cdot x - x \cdot x\right)\right)} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
+-inverses100.0%
\[\leadsto \mathsf{copysign}\left(\log \left(1 + \color{blue}{0}\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
metadata-eval100.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{1} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
metadata-eval100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{0} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
neg-sub0100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-\log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Simplified100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-\log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Taylor expanded in x around -inf 99.9%
\[\leadsto \mathsf{copysign}\left(-\log \color{blue}{\left(-2 \cdot x\right)}, x\right)
\]
if -200 < x < 0.5 Initial program 22.9%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation *-un-lft-identity22.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 \cdot \left(\left|x\right| + \sqrt{x \cdot x + 1}\right)\right)}, x\right)
\]
*-commutative22.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\left(\left|x\right| + \sqrt{x \cdot x + 1}\right) \cdot 1\right)}, x\right)
\]
log-prod22.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right) + \log 1}, x\right)
\]
add-sqr-sqrt9.7%
\[\leadsto \mathsf{copysign}\left(\log \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
fabs-sqr9.7%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
add-sqr-sqrt23.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{x} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
+-commutative23.2%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \sqrt{\color{blue}{1 + x \cdot x}}\right) + \log 1, x\right)
\]
hypot-1-def23.2%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \color{blue}{\mathsf{hypot}\left(1, x\right)}\right) + \log 1, x\right)
\]
metadata-eval23.2%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + \color{blue}{0}, x\right)
\]
Applied egg-rr 23.2%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + 0}, x\right)
\]
Step-by-step derivation +-rgt-identity23.2%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Simplified23.2%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Taylor expanded in x around 0 98.8%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-0.16666666666666666 \cdot {x}^{3} + x}, x\right)
\]
if 0.5 < x Initial program 57.3%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Taylor expanded in x around inf 99.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(0.5 \cdot \frac{1}{x} + \left(\left|x\right| + x\right)\right)}, x\right)
\]
Step-by-step derivation associate-*r/99.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\frac{0.5 \cdot 1}{x}} + \left(\left|x\right| + x\right)\right), x\right)
\]
metadata-eval99.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{\color{blue}{0.5}}{x} + \left(\left|x\right| + x\right)\right), x\right)
\]
rem-square-sqrt99.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + x\right)\right), x\right)
\]
fabs-sqr99.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + x\right)\right), x\right)
\]
rem-square-sqrt99.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\color{blue}{x} + x\right)\right), x\right)
\]
Simplified99.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\frac{0.5}{x} + \left(x + x\right)\right)}, x\right)
\]
Recombined 3 regimes into one program. Final simplification99.1%
\[\leadsto \begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(-\log \left(x \cdot -2\right), x\right)\\
\mathbf{elif}\;x \leq 0.5:\\
\;\;\;\;\mathsf{copysign}\left(x + -0.16666666666666666 \cdot {x}^{3}, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(x + x\right)\right), x\right)\\
\end{array}
\]
Alternative 7: 97.3% accurate, 1.9× speedup? \[\begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(-\log \left(x \cdot -2\right), x\right)\\
\mathbf{elif}\;x \leq 1:\\
\;\;\;\;\mathsf{copysign}\left(x + -0.16666666666666666 \cdot {x}^{3}, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(x + x\right), x\right)\\
\end{array}
\]
Derivation Split input into 3 regimes if x < -200 Initial program 46.1%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation +-commutative46.1%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\sqrt{x \cdot x + 1} + \left|x\right|\right)}, x\right)
\]
add-sqr-sqrt-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right|\right), x\right)
\]
fabs-sqr-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \color{blue}{\sqrt{x} \cdot \sqrt{x}}\right), x\right)
\]
add-sqr-sqrt7.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \color{blue}{x}\right), x\right)
\]
flip-+4.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\frac{\sqrt{x \cdot x + 1} \cdot \sqrt{x \cdot x + 1} - x \cdot x}{\sqrt{x \cdot x + 1} - x}\right)}, x\right)
\]
log-div4.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\sqrt{x \cdot x + 1} \cdot \sqrt{x \cdot x + 1} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right)}, x\right)
\]
add-sqr-sqrt5.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(x \cdot x + 1\right)} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right), x\right)
\]
fma-def6.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\mathsf{fma}\left(x, x, 1\right)} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right), x\right)
\]
+-commutative6.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\sqrt{\color{blue}{1 + x \cdot x}} - x\right), x\right)
\]
hypot-1-def6.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\color{blue}{\mathsf{hypot}\left(1, x\right)} - x\right), x\right)
\]
Applied egg-rr 6.1%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Step-by-step derivation fma-udef5.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(x \cdot x + 1\right)} - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
+-commutative5.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(1 + x \cdot x\right)} - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
associate--l+42.4%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 + \left(x \cdot x - x \cdot x\right)\right)} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
+-inverses100.0%
\[\leadsto \mathsf{copysign}\left(\log \left(1 + \color{blue}{0}\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
metadata-eval100.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{1} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
metadata-eval100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{0} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
neg-sub0100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-\log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Simplified100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-\log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Taylor expanded in x around -inf 99.9%
\[\leadsto \mathsf{copysign}\left(-\log \color{blue}{\left(-2 \cdot x\right)}, x\right)
\]
if -200 < x < 1 Initial program 23.5%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation *-un-lft-identity23.5%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 \cdot \left(\left|x\right| + \sqrt{x \cdot x + 1}\right)\right)}, x\right)
\]
*-commutative23.5%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\left(\left|x\right| + \sqrt{x \cdot x + 1}\right) \cdot 1\right)}, x\right)
\]
log-prod23.5%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right) + \log 1}, x\right)
\]
add-sqr-sqrt10.5%
\[\leadsto \mathsf{copysign}\left(\log \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
fabs-sqr10.5%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
add-sqr-sqrt23.8%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{x} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
+-commutative23.8%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \sqrt{\color{blue}{1 + x \cdot x}}\right) + \log 1, x\right)
\]
hypot-1-def23.8%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \color{blue}{\mathsf{hypot}\left(1, x\right)}\right) + \log 1, x\right)
\]
metadata-eval23.8%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + \color{blue}{0}, x\right)
\]
Applied egg-rr 23.8%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + 0}, x\right)
\]
Step-by-step derivation +-rgt-identity23.8%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Simplified23.8%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Taylor expanded in x around 0 98.3%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-0.16666666666666666 \cdot {x}^{3} + x}, x\right)
\]
if 1 < x Initial program 56.7%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Taylor expanded in x around inf 99.2%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\left|x\right| + x\right)}, x\right)
\]
Step-by-step derivation rem-square-sqrt99.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + x\right), x\right)
\]
fabs-sqr99.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + x\right), x\right)
\]
rem-square-sqrt99.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{x} + x\right), x\right)
\]
Simplified99.2%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(x + x\right)}, x\right)
\]
Recombined 3 regimes into one program. Final simplification98.9%
\[\leadsto \begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(-\log \left(x \cdot -2\right), x\right)\\
\mathbf{elif}\;x \leq 1:\\
\;\;\;\;\mathsf{copysign}\left(x + -0.16666666666666666 \cdot {x}^{3}, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(x + x\right), x\right)\\
\end{array}
\]
Alternative 8: 79.9% accurate, 2.0× speedup? \[\begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(15.333333333333334, x\right)\\
\mathbf{elif}\;x \leq 1:\\
\;\;\;\;\mathsf{copysign}\left(x, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(x + x\right), x\right)\\
\end{array}
\]
Derivation Split input into 3 regimes if x < -200 Initial program 46.1%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Taylor expanded in x around inf -0.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(0.5 \cdot \frac{1}{x} + \left(\left|x\right| + x\right)\right)}, x\right)
\]
Step-by-step derivation associate-*r/-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\frac{0.5 \cdot 1}{x}} + \left(\left|x\right| + x\right)\right), x\right)
\]
metadata-eval-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{\color{blue}{0.5}}{x} + \left(\left|x\right| + x\right)\right), x\right)
\]
rem-square-sqrt-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + x\right)\right), x\right)
\]
fabs-sqr-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + x\right)\right), x\right)
\]
rem-square-sqrt-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\color{blue}{x} + x\right)\right), x\right)
\]
Simplified-0.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\frac{0.5}{x} + \left(x + x\right)\right)}, x\right)
\]
Taylor expanded in x around 0 -0.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{4 \cdot {x}^{2} + \left(\log 0.5 + \left(-8 \cdot {x}^{4} + \left(21.333333333333332 \cdot {x}^{6} + -1 \cdot \log x\right)\right)\right)}, x\right)
\]
Simplified27.2%
\[\leadsto \mathsf{copysign}\left(\color{blue}{15.333333333333334}, x\right)
\]
if -200 < x < 1 Initial program 23.5%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Taylor expanded in x around 0 19.2%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(1 + \left|x\right|\right)}, x\right)
\]
Step-by-step derivation log1p-def92.8%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\mathsf{log1p}\left(\left|x\right|\right)}, x\right)
\]
rem-square-sqrt40.5%
\[\leadsto \mathsf{copysign}\left(\mathsf{log1p}\left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right|\right), x\right)
\]
fabs-sqr40.5%
\[\leadsto \mathsf{copysign}\left(\mathsf{log1p}\left(\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right), x\right)
\]
rem-square-sqrt92.7%
\[\leadsto \mathsf{copysign}\left(\mathsf{log1p}\left(\color{blue}{x}\right), x\right)
\]
Simplified92.7%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\mathsf{log1p}\left(x\right)}, x\right)
\]
Taylor expanded in x around 0 96.5%
\[\leadsto \mathsf{copysign}\left(\color{blue}{x}, x\right)
\]
if 1 < x Initial program 56.7%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Taylor expanded in x around inf 99.2%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\left|x\right| + x\right)}, x\right)
\]
Step-by-step derivation rem-square-sqrt99.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + x\right), x\right)
\]
fabs-sqr99.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + x\right), x\right)
\]
rem-square-sqrt99.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{x} + x\right), x\right)
\]
Simplified99.2%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(x + x\right)}, x\right)
\]
Recombined 3 regimes into one program. Final simplification79.3%
\[\leadsto \begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(15.333333333333334, x\right)\\
\mathbf{elif}\;x \leq 1:\\
\;\;\;\;\mathsf{copysign}\left(x, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(x + x\right), x\right)\\
\end{array}
\]
Alternative 9: 96.8% accurate, 2.0× speedup? \[\begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(\frac{-0.5}{x}\right), x\right)\\
\mathbf{elif}\;x \leq 1:\\
\;\;\;\;\mathsf{copysign}\left(x, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(x + x\right), x\right)\\
\end{array}
\]
Derivation Split input into 3 regimes if x < -200 Initial program 46.1%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation *-un-lft-identity46.1%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 \cdot \left(\left|x\right| + \sqrt{x \cdot x + 1}\right)\right)}, x\right)
\]
*-commutative46.1%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\left(\left|x\right| + \sqrt{x \cdot x + 1}\right) \cdot 1\right)}, x\right)
\]
log-prod46.1%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right) + \log 1}, x\right)
\]
add-sqr-sqrt-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
fabs-sqr-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
add-sqr-sqrt7.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{x} + \sqrt{x \cdot x + 1}\right) + \log 1, x\right)
\]
+-commutative7.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \sqrt{\color{blue}{1 + x \cdot x}}\right) + \log 1, x\right)
\]
hypot-1-def7.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \color{blue}{\mathsf{hypot}\left(1, x\right)}\right) + \log 1, x\right)
\]
metadata-eval7.9%
\[\leadsto \mathsf{copysign}\left(\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + \color{blue}{0}, x\right)
\]
Applied egg-rr 7.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right) + 0}, x\right)
\]
Step-by-step derivation +-rgt-identity7.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Simplified7.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(x + \mathsf{hypot}\left(1, x\right)\right)}, x\right)
\]
Taylor expanded in x around -inf 99.8%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\frac{-0.5}{x}\right)}, x\right)
\]
if -200 < x < 1 Initial program 23.5%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Taylor expanded in x around 0 19.2%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(1 + \left|x\right|\right)}, x\right)
\]
Step-by-step derivation log1p-def92.8%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\mathsf{log1p}\left(\left|x\right|\right)}, x\right)
\]
rem-square-sqrt40.5%
\[\leadsto \mathsf{copysign}\left(\mathsf{log1p}\left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right|\right), x\right)
\]
fabs-sqr40.5%
\[\leadsto \mathsf{copysign}\left(\mathsf{log1p}\left(\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right), x\right)
\]
rem-square-sqrt92.7%
\[\leadsto \mathsf{copysign}\left(\mathsf{log1p}\left(\color{blue}{x}\right), x\right)
\]
Simplified92.7%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\mathsf{log1p}\left(x\right)}, x\right)
\]
Taylor expanded in x around 0 96.5%
\[\leadsto \mathsf{copysign}\left(\color{blue}{x}, x\right)
\]
if 1 < x Initial program 56.7%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Taylor expanded in x around inf 99.2%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\left|x\right| + x\right)}, x\right)
\]
Step-by-step derivation rem-square-sqrt99.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + x\right), x\right)
\]
fabs-sqr99.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + x\right), x\right)
\]
rem-square-sqrt99.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{x} + x\right), x\right)
\]
Simplified99.2%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(x + x\right)}, x\right)
\]
Recombined 3 regimes into one program. Final simplification98.1%
\[\leadsto \begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(\frac{-0.5}{x}\right), x\right)\\
\mathbf{elif}\;x \leq 1:\\
\;\;\;\;\mathsf{copysign}\left(x, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(x + x\right), x\right)\\
\end{array}
\]
Alternative 10: 96.6% accurate, 2.0× speedup? \[\begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(-\log \left(x \cdot -2\right), x\right)\\
\mathbf{elif}\;x \leq 1:\\
\;\;\;\;\mathsf{copysign}\left(x, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(x + x\right), x\right)\\
\end{array}
\]
Derivation Split input into 3 regimes if x < -200 Initial program 46.1%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Step-by-step derivation +-commutative46.1%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\sqrt{x \cdot x + 1} + \left|x\right|\right)}, x\right)
\]
add-sqr-sqrt-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right|\right), x\right)
\]
fabs-sqr-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \color{blue}{\sqrt{x} \cdot \sqrt{x}}\right), x\right)
\]
add-sqr-sqrt7.9%
\[\leadsto \mathsf{copysign}\left(\log \left(\sqrt{x \cdot x + 1} + \color{blue}{x}\right), x\right)
\]
flip-+4.9%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\frac{\sqrt{x \cdot x + 1} \cdot \sqrt{x \cdot x + 1} - x \cdot x}{\sqrt{x \cdot x + 1} - x}\right)}, x\right)
\]
log-div4.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\sqrt{x \cdot x + 1} \cdot \sqrt{x \cdot x + 1} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right)}, x\right)
\]
add-sqr-sqrt5.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(x \cdot x + 1\right)} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right), x\right)
\]
fma-def6.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\mathsf{fma}\left(x, x, 1\right)} - x \cdot x\right) - \log \left(\sqrt{x \cdot x + 1} - x\right), x\right)
\]
+-commutative6.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\sqrt{\color{blue}{1 + x \cdot x}} - x\right), x\right)
\]
hypot-1-def6.1%
\[\leadsto \mathsf{copysign}\left(\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\color{blue}{\mathsf{hypot}\left(1, x\right)} - x\right), x\right)
\]
Applied egg-rr 6.1%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(\mathsf{fma}\left(x, x, 1\right) - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Step-by-step derivation fma-udef5.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(x \cdot x + 1\right)} - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
+-commutative5.6%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\left(1 + x \cdot x\right)} - x \cdot x\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
associate--l+42.4%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(1 + \left(x \cdot x - x \cdot x\right)\right)} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
+-inverses100.0%
\[\leadsto \mathsf{copysign}\left(\log \left(1 + \color{blue}{0}\right) - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
metadata-eval100.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{1} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
metadata-eval100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{0} - \log \left(\mathsf{hypot}\left(1, x\right) - x\right), x\right)
\]
neg-sub0100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-\log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Simplified100.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-\log \left(\mathsf{hypot}\left(1, x\right) - x\right)}, x\right)
\]
Taylor expanded in x around -inf 99.9%
\[\leadsto \mathsf{copysign}\left(-\log \color{blue}{\left(-2 \cdot x\right)}, x\right)
\]
if -200 < x < 1 Initial program 23.5%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Taylor expanded in x around 0 19.2%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(1 + \left|x\right|\right)}, x\right)
\]
Step-by-step derivation log1p-def92.8%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\mathsf{log1p}\left(\left|x\right|\right)}, x\right)
\]
rem-square-sqrt40.5%
\[\leadsto \mathsf{copysign}\left(\mathsf{log1p}\left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right|\right), x\right)
\]
fabs-sqr40.5%
\[\leadsto \mathsf{copysign}\left(\mathsf{log1p}\left(\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right), x\right)
\]
rem-square-sqrt92.7%
\[\leadsto \mathsf{copysign}\left(\mathsf{log1p}\left(\color{blue}{x}\right), x\right)
\]
Simplified92.7%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\mathsf{log1p}\left(x\right)}, x\right)
\]
Taylor expanded in x around 0 96.5%
\[\leadsto \mathsf{copysign}\left(\color{blue}{x}, x\right)
\]
if 1 < x Initial program 56.7%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Taylor expanded in x around inf 99.2%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\left|x\right| + x\right)}, x\right)
\]
Step-by-step derivation rem-square-sqrt99.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + x\right), x\right)
\]
fabs-sqr99.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + x\right), x\right)
\]
rem-square-sqrt99.2%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{x} + x\right), x\right)
\]
Simplified99.2%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(x + x\right)}, x\right)
\]
Recombined 3 regimes into one program. Final simplification98.1%
\[\leadsto \begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(-\log \left(x \cdot -2\right), x\right)\\
\mathbf{elif}\;x \leq 1:\\
\;\;\;\;\mathsf{copysign}\left(x, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\log \left(x + x\right), x\right)\\
\end{array}
\]
Alternative 11: 64.3% accurate, 2.0× speedup? \[\begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(15.333333333333334, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\mathsf{log1p}\left(x\right), x\right)\\
\end{array}
\]
Derivation Split input into 2 regimes if x < -200 Initial program 46.1%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Taylor expanded in x around inf -0.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(0.5 \cdot \frac{1}{x} + \left(\left|x\right| + x\right)\right)}, x\right)
\]
Step-by-step derivation associate-*r/-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\frac{0.5 \cdot 1}{x}} + \left(\left|x\right| + x\right)\right), x\right)
\]
metadata-eval-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{\color{blue}{0.5}}{x} + \left(\left|x\right| + x\right)\right), x\right)
\]
rem-square-sqrt-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + x\right)\right), x\right)
\]
fabs-sqr-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + x\right)\right), x\right)
\]
rem-square-sqrt-0.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\color{blue}{x} + x\right)\right), x\right)
\]
Simplified-0.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\frac{0.5}{x} + \left(x + x\right)\right)}, x\right)
\]
Taylor expanded in x around 0 -0.0%
\[\leadsto \mathsf{copysign}\left(\color{blue}{4 \cdot {x}^{2} + \left(\log 0.5 + \left(-8 \cdot {x}^{4} + \left(21.333333333333332 \cdot {x}^{6} + -1 \cdot \log x\right)\right)\right)}, x\right)
\]
Simplified27.2%
\[\leadsto \mathsf{copysign}\left(\color{blue}{15.333333333333334}, x\right)
\]
if -200 < x Initial program 35.2%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Taylor expanded in x around 0 28.1%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(1 + \left|x\right|\right)}, x\right)
\]
Step-by-step derivation log1p-def75.8%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\mathsf{log1p}\left(\left|x\right|\right)}, x\right)
\]
rem-square-sqrt41.9%
\[\leadsto \mathsf{copysign}\left(\mathsf{log1p}\left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right|\right), x\right)
\]
fabs-sqr41.9%
\[\leadsto \mathsf{copysign}\left(\mathsf{log1p}\left(\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right), x\right)
\]
rem-square-sqrt75.7%
\[\leadsto \mathsf{copysign}\left(\mathsf{log1p}\left(\color{blue}{x}\right), x\right)
\]
Simplified75.7%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\mathsf{log1p}\left(x\right)}, x\right)
\]
Recombined 2 regimes into one program. Final simplification63.2%
\[\leadsto \begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(15.333333333333334, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(\mathsf{log1p}\left(x\right), x\right)\\
\end{array}
\]
Alternative 12: 62.1% accurate, 3.8× speedup? \[\begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(15.333333333333334, x\right)\\
\mathbf{elif}\;x \leq 20:\\
\;\;\;\;\mathsf{copysign}\left(x, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(15.333333333333334, x\right)\\
\end{array}
\]
Derivation Split input into 2 regimes if x < -200 or 20 < x Initial program 51.1%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Taylor expanded in x around inf 50.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(0.5 \cdot \frac{1}{x} + \left(\left|x\right| + x\right)\right)}, x\right)
\]
Step-by-step derivation associate-*r/50.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\frac{0.5 \cdot 1}{x}} + \left(\left|x\right| + x\right)\right), x\right)
\]
metadata-eval50.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{\color{blue}{0.5}}{x} + \left(\left|x\right| + x\right)\right), x\right)
\]
rem-square-sqrt50.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + x\right)\right), x\right)
\]
fabs-sqr50.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + x\right)\right), x\right)
\]
rem-square-sqrt50.0%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\color{blue}{x} + x\right)\right), x\right)
\]
Simplified50.0%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\frac{0.5}{x} + \left(x + x\right)\right)}, x\right)
\]
Taylor expanded in x around 0 0.8%
\[\leadsto \mathsf{copysign}\left(\color{blue}{4 \cdot {x}^{2} + \left(\log 0.5 + \left(-8 \cdot {x}^{4} + \left(21.333333333333332 \cdot {x}^{6} + -1 \cdot \log x\right)\right)\right)}, x\right)
\]
Simplified27.6%
\[\leadsto \mathsf{copysign}\left(\color{blue}{15.333333333333334}, x\right)
\]
if -200 < x < 20 Initial program 24.1%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Taylor expanded in x around 0 19.3%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\log \left(1 + \left|x\right|\right)}, x\right)
\]
Step-by-step derivation log1p-def92.3%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\mathsf{log1p}\left(\left|x\right|\right)}, x\right)
\]
rem-square-sqrt40.4%
\[\leadsto \mathsf{copysign}\left(\mathsf{log1p}\left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right|\right), x\right)
\]
fabs-sqr40.4%
\[\leadsto \mathsf{copysign}\left(\mathsf{log1p}\left(\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right), x\right)
\]
rem-square-sqrt92.2%
\[\leadsto \mathsf{copysign}\left(\mathsf{log1p}\left(\color{blue}{x}\right), x\right)
\]
Simplified92.2%
\[\leadsto \mathsf{copysign}\left(\color{blue}{\mathsf{log1p}\left(x\right)}, x\right)
\]
Taylor expanded in x around 0 95.9%
\[\leadsto \mathsf{copysign}\left(\color{blue}{x}, x\right)
\]
Recombined 2 regimes into one program. Final simplification60.7%
\[\leadsto \begin{array}{l}
\mathbf{if}\;x \leq -200:\\
\;\;\;\;\mathsf{copysign}\left(15.333333333333334, x\right)\\
\mathbf{elif}\;x \leq 20:\\
\;\;\;\;\mathsf{copysign}\left(x, x\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{copysign}\left(15.333333333333334, x\right)\\
\end{array}
\]
Alternative 13: 17.4% accurate, 4.0× speedup? \[\mathsf{copysign}\left(-6, x\right)
\]
Derivation Initial program 38.0%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Taylor expanded in x around inf 28.4%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(0.5 \cdot \frac{1}{x} + \left(\left|x\right| + x\right)\right)}, x\right)
\]
Step-by-step derivation associate-*r/28.4%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\frac{0.5 \cdot 1}{x}} + \left(\left|x\right| + x\right)\right), x\right)
\]
metadata-eval28.4%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{\color{blue}{0.5}}{x} + \left(\left|x\right| + x\right)\right), x\right)
\]
rem-square-sqrt28.4%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + x\right)\right), x\right)
\]
fabs-sqr28.4%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + x\right)\right), x\right)
\]
rem-square-sqrt28.4%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\color{blue}{x} + x\right)\right), x\right)
\]
Simplified28.4%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\frac{0.5}{x} + \left(x + x\right)\right)}, x\right)
\]
Taylor expanded in x around 0 3.3%
\[\leadsto \mathsf{copysign}\left(\color{blue}{4 \cdot {x}^{2} + \left(\log 0.5 + \left(-8 \cdot {x}^{4} + -1 \cdot \log x\right)\right)}, x\right)
\]
Simplified17.6%
\[\leadsto \mathsf{copysign}\left(\color{blue}{-6}, x\right)
\]
Final simplification17.6%
\[\leadsto \mathsf{copysign}\left(-6, x\right)
\]
Alternative 14: 18.7% accurate, 4.0× speedup? \[\mathsf{copysign}\left(15.333333333333334, x\right)
\]
Derivation Initial program 38.0%
\[\mathsf{copysign}\left(\log \left(\left|x\right| + \sqrt{x \cdot x + 1}\right), x\right)
\]
Taylor expanded in x around inf 28.4%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(0.5 \cdot \frac{1}{x} + \left(\left|x\right| + x\right)\right)}, x\right)
\]
Step-by-step derivation associate-*r/28.4%
\[\leadsto \mathsf{copysign}\left(\log \left(\color{blue}{\frac{0.5 \cdot 1}{x}} + \left(\left|x\right| + x\right)\right), x\right)
\]
metadata-eval28.4%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{\color{blue}{0.5}}{x} + \left(\left|x\right| + x\right)\right), x\right)
\]
rem-square-sqrt28.4%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\left|\color{blue}{\sqrt{x} \cdot \sqrt{x}}\right| + x\right)\right), x\right)
\]
fabs-sqr28.4%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\color{blue}{\sqrt{x} \cdot \sqrt{x}} + x\right)\right), x\right)
\]
rem-square-sqrt28.4%
\[\leadsto \mathsf{copysign}\left(\log \left(\frac{0.5}{x} + \left(\color{blue}{x} + x\right)\right), x\right)
\]
Simplified28.4%
\[\leadsto \mathsf{copysign}\left(\log \color{blue}{\left(\frac{0.5}{x} + \left(x + x\right)\right)}, x\right)
\]
Taylor expanded in x around 0 2.7%
\[\leadsto \mathsf{copysign}\left(\color{blue}{4 \cdot {x}^{2} + \left(\log 0.5 + \left(-8 \cdot {x}^{4} + \left(21.333333333333332 \cdot {x}^{6} + -1 \cdot \log x\right)\right)\right)}, x\right)
\]
Simplified19.3%
\[\leadsto \mathsf{copysign}\left(\color{blue}{15.333333333333334}, x\right)
\]
Final simplification19.3%
\[\leadsto \mathsf{copysign}\left(15.333333333333334, x\right)
\]
Developer target: 99.7% accurate, 0.6× speedup? \[\mathsf{copysign}\left(\mathsf{log1p}\left(\left|x\right| + \frac{\left|x\right|}{\mathsf{hypot}\left(1, \frac{1}{\left|x\right|}\right) + \frac{1}{\left|x\right|}}\right), x\right)
\]
Reproduce ? herbie shell --seed 2023167
(FPCore (x)
:name "Rust f32::asinh"
:precision binary32
:herbie-target
(copysign (log1p (+ (fabs x) (/ (fabs x) (+ (hypot 1.0 (/ 1.0 (fabs x))) (/ 1.0 (fabs x)))))) x)
(copysign (log (+ (fabs x) (sqrt (+ (* x x) 1.0)))) x))