Average Error: 60.3 → 3.4
Time: 24.8s
Precision: binary64
Cost: 448
\[-1 < \varepsilon \land \varepsilon < 1\]
\[\frac{\varepsilon \cdot \left(e^{\left(a + b\right) \cdot \varepsilon} - 1\right)}{\left(e^{a \cdot \varepsilon} - 1\right) \cdot \left(e^{b \cdot \varepsilon} - 1\right)}\]
↓
\[\frac{1}{a} + \frac{1}{b}\]
\frac{\varepsilon \cdot \left(e^{\left(a + b\right) \cdot \varepsilon} - 1\right)}{\left(e^{a \cdot \varepsilon} - 1\right) \cdot \left(e^{b \cdot \varepsilon} - 1\right)}↓
\frac{1}{a} + \frac{1}{b}(FPCore (a b eps)
:precision binary64
(/
(* eps (- (exp (* (+ a b) eps)) 1.0))
(* (- (exp (* a eps)) 1.0) (- (exp (* b eps)) 1.0))))
↓
(FPCore (a b eps) :precision binary64 (+ (/ 1.0 a) (/ 1.0 b)))
double code(double a, double b, double eps) {
return (eps * (exp((a + b) * eps) - 1.0)) / ((exp(a * eps) - 1.0) * (exp(b * eps) - 1.0));
}
↓
double code(double a, double b, double eps) {
return (1.0 / a) + (1.0 / b);
}
Try it out
Enter valid numbers for all inputs
Target
| Original | 60.3 |
|---|
| Target | 15.0 |
|---|
| Herbie | 3.4 |
|---|
\[\frac{a + b}{a \cdot b}\]
Alternatives
| Alternative 1 |
|---|
| Error | 55.1 |
|---|
| Cost | 60608 |
|---|
\[\sqrt[3]{\frac{-1 + e^{\varepsilon \cdot \left(b + a\right)}}{b \cdot \left(-1 + e^{\varepsilon \cdot a}\right)}} \cdot \left(\sqrt[3]{\frac{-1 + e^{\varepsilon \cdot \left(b + a\right)}}{b \cdot \left(-1 + e^{\varepsilon \cdot a}\right)}} \cdot \sqrt[3]{\frac{-1 + e^{\varepsilon \cdot \left(b + a\right)}}{b \cdot \left(-1 + e^{\varepsilon \cdot a}\right)}}\right)\]
| Alternative 2 |
|---|
| Error | 60.3 |
|---|
| Cost | 53312 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{\left(-1 + e^{\varepsilon \cdot a}\right) \cdot \left(\sqrt[3]{-1 + e^{\varepsilon \cdot b}} \cdot \left(\sqrt[3]{-1 + e^{\varepsilon \cdot b}} \cdot \sqrt[3]{-1 + e^{\varepsilon \cdot b}}\right)\right)}\]
| Alternative 3 |
|---|
| Error | 63.4 |
|---|
| Cost | 48832 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{\left({\varepsilon}^{4} \cdot \left(b \cdot \left(0.16666666666666666 \cdot {a}^{3}\right) + \left(a \cdot 0.16666666666666666\right) \cdot {b}^{3}\right) + b \cdot \left(a \cdot \left(\varepsilon \cdot \varepsilon\right) + 0.5 \cdot \left(a \cdot \left(a \cdot {\varepsilon}^{3}\right)\right)\right)\right) + \left(b \cdot b\right) \cdot \left(0.5 \cdot \left(a \cdot {\varepsilon}^{3}\right) + 0.25 \cdot \left(\left(a \cdot a\right) \cdot {\varepsilon}^{4}\right)\right)}\]
| Alternative 4 |
|---|
| Error | 61.7 |
|---|
| Cost | 47040 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{\frac{\left(-1 + {\left(e^{b}\right)}^{\left(\varepsilon + \varepsilon\right)}\right) \cdot \left(-1 + {\left(e^{a}\right)}^{\left(\varepsilon + \varepsilon\right)}\right)}{\left(e^{\varepsilon \cdot b} + 1\right) \cdot \left(e^{\varepsilon \cdot a} + 1\right)}}\]
| Alternative 5 |
|---|
| Error | 61.1 |
|---|
| Cost | 40576 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{\left(-1 + e^{\varepsilon \cdot b}\right) \cdot \frac{-1 + {\left(e^{\varepsilon \cdot a}\right)}^{3}}{1 + e^{\varepsilon \cdot a} \cdot \left(e^{\varepsilon \cdot a} + 1\right)}}\]
| Alternative 6 |
|---|
| Error | 61.1 |
|---|
| Cost | 40576 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{\left(-1 + e^{\varepsilon \cdot a}\right) \cdot \frac{-1 + {\left(e^{\varepsilon \cdot b}\right)}^{3}}{1 + e^{\varepsilon \cdot b} \cdot \left(e^{\varepsilon \cdot b} + 1\right)}}\]
| Alternative 7 |
|---|
| Error | 59.1 |
|---|
| Cost | 40384 |
|---|
\[\sqrt{\frac{-1 + e^{\varepsilon \cdot \left(b + a\right)}}{b \cdot \left(-1 + e^{\varepsilon \cdot a}\right)}} \cdot \sqrt{\frac{-1 + e^{\varepsilon \cdot \left(b + a\right)}}{b \cdot \left(-1 + e^{\varepsilon \cdot a}\right)}}\]
| Alternative 8 |
|---|
| Error | 55.9 |
|---|
| Cost | 40320 |
|---|
\[\frac{-1 + e^{\varepsilon \cdot \left(b + a\right)}}{b \cdot \left(-1 + {\left(e^{\varepsilon \cdot a}\right)}^{3}\right)} \cdot \left(\left(e^{\varepsilon \cdot a} + 1\right) + e^{\varepsilon \cdot a} \cdot e^{\varepsilon \cdot a}\right)\]
| Alternative 9 |
|---|
| Error | 61.1 |
|---|
| Cost | 33792 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{\left(-1 + e^{\varepsilon \cdot b}\right) \cdot \frac{-1 + {\left(e^{a}\right)}^{\left(\varepsilon + \varepsilon\right)}}{e^{\varepsilon \cdot a} + 1}}\]
| Alternative 10 |
|---|
| Error | 61.2 |
|---|
| Cost | 33792 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{\left(-1 + e^{\varepsilon \cdot a}\right) \cdot \frac{-1 + {\left(e^{b}\right)}^{\left(\varepsilon + \varepsilon\right)}}{e^{\varepsilon \cdot b} + 1}}\]
| Alternative 11 |
|---|
| Error | 60.3 |
|---|
| Cost | 33344 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{\left(-1 + e^{\varepsilon \cdot b}\right) \cdot \log \left(e^{-1 + e^{\varepsilon \cdot a}}\right)}\]
| Alternative 12 |
|---|
| Error | 56.6 |
|---|
| Cost | 27008 |
|---|
\[\left(e^{\varepsilon \cdot a} + 1\right) \cdot \frac{-1 + e^{\varepsilon \cdot \left(b + a\right)}}{b \cdot \left(-1 + {\left(e^{a}\right)}^{\left(\varepsilon + \varepsilon\right)}\right)}\]
| Alternative 13 |
|---|
| Error | 59.1 |
|---|
| Cost | 26624 |
|---|
\[\sqrt[3]{{\left(\frac{-1 + e^{\varepsilon \cdot \left(b + a\right)}}{b \cdot \left(-1 + e^{\varepsilon \cdot a}\right)}\right)}^{3}}\]
| Alternative 14 |
|---|
| Error | 59.4 |
|---|
| Cost | 26560 |
|---|
\[e^{\log \left(\frac{-1 + e^{\varepsilon \cdot \left(b + a\right)}}{b \cdot \left(-1 + e^{\varepsilon \cdot a}\right)}\right)}\]
| Alternative 15 |
|---|
| Error | 11.7 |
|---|
| Cost | 22592 |
|---|
\[\sqrt[3]{\frac{1}{a} + \left(\frac{1}{b} + 0.5 \cdot \left(\varepsilon + \frac{\varepsilon \cdot b}{a}\right)\right)} \cdot \left(\sqrt[3]{\frac{1}{a} + \left(\frac{1}{b} + 0.5 \cdot \left(\varepsilon + \frac{\varepsilon \cdot b}{a}\right)\right)} \cdot \sqrt[3]{\frac{1}{a} + \left(\frac{1}{b} + 0.5 \cdot \left(\varepsilon + \frac{\varepsilon \cdot b}{a}\right)\right)}\right)\]
| Alternative 16 |
|---|
| Error | 60.3 |
|---|
| Cost | 20544 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{\left(-1 + e^{\varepsilon \cdot b}\right) \cdot \left(-1 + e^{\varepsilon \cdot a}\right)}\]
| Alternative 17 |
|---|
| Error | 61.3 |
|---|
| Cost | 20416 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot b}\right)}{\left(-1 + e^{\varepsilon \cdot b}\right) \cdot \left(-1 + e^{\varepsilon \cdot a}\right)}\]
| Alternative 18 |
|---|
| Error | 61.2 |
|---|
| Cost | 20416 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot a}\right)}{\left(-1 + e^{\varepsilon \cdot b}\right) \cdot \left(-1 + e^{\varepsilon \cdot a}\right)}\]
| Alternative 19 |
|---|
| Error | 57.3 |
|---|
| Cost | 20352 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{\left(\varepsilon \cdot b\right) \cdot \left(-1 + {\left(e^{a}\right)}^{\varepsilon}\right)}\]
| Alternative 20 |
|---|
| Error | 63.2 |
|---|
| Cost | 15104 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{a \cdot \left(b \cdot \left(\varepsilon \cdot \varepsilon\right)\right) + {\varepsilon}^{3} \cdot \left(b \cdot \left(0.5 \cdot \left(a \cdot a\right)\right) + \left(b \cdot b\right) \cdot \left(a \cdot 0.5\right)\right)}\]
| Alternative 21 |
|---|
| Error | 57.0 |
|---|
| Cost | 14528 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{\left(-1 + e^{\varepsilon \cdot b}\right) \cdot \left(\varepsilon \cdot \left(a + \varepsilon \cdot \left(0.5 \cdot \left(a \cdot a\right)\right)\right)\right)}\]
| Alternative 22 |
|---|
| Error | 57.0 |
|---|
| Cost | 14016 |
|---|
\[\frac{\varepsilon}{-1 + e^{\varepsilon \cdot a}} \cdot \frac{-1 + e^{\varepsilon \cdot \left(b + a\right)}}{\varepsilon \cdot b}\]
| Alternative 23 |
|---|
| Error | 57.1 |
|---|
| Cost | 14016 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{b \cdot \left(\varepsilon \cdot e^{\varepsilon \cdot a} - \varepsilon\right)}\]
| Alternative 24 |
|---|
| Error | 57.1 |
|---|
| Cost | 14016 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{\left(-1 + e^{\varepsilon \cdot b}\right) \cdot \left(\varepsilon \cdot a\right)}\]
| Alternative 25 |
|---|
| Error | 56.9 |
|---|
| Cost | 14016 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{\left(\varepsilon \cdot b\right) \cdot \left(-1 + e^{\varepsilon \cdot a}\right)}\]
| Alternative 26 |
|---|
| Error | 62.3 |
|---|
| Cost | 14016 |
|---|
\[\frac{\varepsilon \cdot \left(\varepsilon \cdot \left(b + a\right)\right)}{\left(-1 + e^{\varepsilon \cdot b}\right) \cdot \left(-1 + e^{\varepsilon \cdot a}\right)}\]
| Alternative 27 |
|---|
| Error | 54.9 |
|---|
| Cost | 13888 |
|---|
\[\frac{1}{\frac{b \cdot \left(-1 + e^{\varepsilon \cdot a}\right)}{-1 + e^{\varepsilon \cdot \left(b + a\right)}}}\]
| Alternative 28 |
|---|
| Error | 19.2 |
|---|
| Cost | 13888 |
|---|
\[\frac{1}{a} + \left(\frac{1}{b} + 0.5 \cdot \left(\varepsilon + \log \left(e^{\frac{\varepsilon \cdot b}{a}}\right)\right)\right)\]
| Alternative 29 |
|---|
| Error | 61.2 |
|---|
| Cost | 8000 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{\left(\varepsilon \cdot b\right) \cdot \left(\varepsilon \cdot \left(a + \varepsilon \cdot \left(0.5 \cdot \left(a \cdot a\right)\right)\right)\right)}\]
| Alternative 30 |
|---|
| Error | 61.4 |
|---|
| Cost | 7488 |
|---|
\[\frac{\varepsilon \cdot \left(\varepsilon \cdot \left(b + a\right)\right)}{\left(\varepsilon \cdot b\right) \cdot \left(-1 + e^{\varepsilon \cdot a}\right)}\]
| Alternative 31 |
|---|
| Error | 62.2 |
|---|
| Cost | 7488 |
|---|
\[\frac{\varepsilon \cdot \left(-1 + e^{\varepsilon \cdot \left(b + a\right)}\right)}{a \cdot \left(b \cdot \left(\varepsilon \cdot \varepsilon\right)\right)}\]
| Alternative 32 |
|---|
| Error | 26.8 |
|---|
| Cost | 3008 |
|---|
\[\frac{\left(\frac{1}{b} - 0.5 \cdot \left(\varepsilon + \frac{\varepsilon \cdot b}{a}\right)\right) \cdot \left(1 + a \cdot \left(\frac{1}{b} + 0.5 \cdot \left(\varepsilon + \frac{\varepsilon \cdot b}{a}\right)\right)\right)}{a \cdot \left(\frac{1}{b} - 0.5 \cdot \left(\varepsilon + \frac{\varepsilon \cdot b}{a}\right)\right)}\]
| Alternative 33 |
|---|
| Error | 31.4 |
|---|
| Cost | 2240 |
|---|
\[\frac{1}{a} + \frac{\left(\varepsilon - \frac{\varepsilon \cdot b}{a}\right) \cdot \left(1 + \left(b \cdot 0.5\right) \cdot \left(\varepsilon + \frac{\varepsilon \cdot b}{a}\right)\right)}{b \cdot \left(\varepsilon - \frac{\varepsilon \cdot b}{a}\right)}\]
| Alternative 34 |
|---|
| Error | 10.6 |
|---|
| Cost | 1088 |
|---|
\[\frac{1}{a} + \left(\frac{1}{b} + 0.5 \cdot \left(\varepsilon + \frac{\varepsilon \cdot b}{a}\right)\right)\]
| Alternative 35 |
|---|
| Error | 10.2 |
|---|
| Cost | 1088 |
|---|
\[\frac{1}{a} + \left(\frac{1}{b} + 0.5 \cdot \left(\varepsilon + b \cdot \frac{\varepsilon}{a}\right)\right)\]
| Alternative 36 |
|---|
| Error | 3.5 |
|---|
| Cost | 704 |
|---|
\[\frac{1}{a} + \left(\frac{1}{b} + \varepsilon \cdot 0.5\right)\]
| Alternative 37 |
|---|
| Error | 40.5 |
|---|
| Cost | 576 |
|---|
\[\frac{1 + b \cdot \left(\varepsilon \cdot 0.5\right)}{a}\]
| Alternative 38 |
|---|
| Error | 15.0 |
|---|
| Cost | 448 |
|---|
\[\frac{b + a}{b \cdot a}\]
| Alternative 39 |
|---|
| Error | 33.1 |
|---|
| Cost | 192 |
|---|
\[\frac{1}{b}\]
| Alternative 40 |
|---|
| Error | 33.3 |
|---|
| Cost | 192 |
|---|
\[\frac{1}{a}\]
| Alternative 41 |
|---|
| Error | 61.9 |
|---|
| Cost | 64 |
|---|
\[1\]
| Alternative 42 |
|---|
| Error | 60.9 |
|---|
| Cost | 64 |
|---|
\[0\]
| Alternative 43 |
|---|
| Error | 61.9 |
|---|
| Cost | 64 |
|---|
\[-1\]
Error

Derivation
Initial program 60.3
\[\frac{\varepsilon \cdot \left(e^{\left(a + b\right) \cdot \varepsilon} - 1\right)}{\left(e^{a \cdot \varepsilon} - 1\right) \cdot \left(e^{b \cdot \varepsilon} - 1\right)}\]
Taylor expanded around 0 56.9
\[\leadsto \frac{\varepsilon \cdot \left(e^{\left(a + b\right) \cdot \varepsilon} - 1\right)}{\left(e^{a \cdot \varepsilon} - 1\right) \cdot \color{blue}{\left(\varepsilon \cdot b\right)}}\]
Simplified56.9
\[\leadsto \frac{\varepsilon \cdot \left(e^{\left(a + b\right) \cdot \varepsilon} - 1\right)}{\left(e^{a \cdot \varepsilon} - 1\right) \cdot \color{blue}{\left(b \cdot \varepsilon\right)}}\]
Taylor expanded around 0 10.6
\[\leadsto \color{blue}{\frac{1}{a} + \left(\frac{1}{b} + \left(0.5 \cdot \frac{\varepsilon \cdot b}{a} + 0.5 \cdot \varepsilon\right)\right)}\]
Simplified10.6
\[\leadsto \color{blue}{\frac{1}{a} + \left(\frac{1}{b} + 0.5 \cdot \left(\varepsilon + \frac{b \cdot \varepsilon}{a}\right)\right)}\]
Taylor expanded around 0 3.4
\[\leadsto \color{blue}{\frac{1}{b} + \frac{1}{a}}\]
Simplified3.4
\[\leadsto \color{blue}{\frac{1}{a} + \frac{1}{b}}\]
Simplified3.4
\[\leadsto \color{blue}{\frac{1}{a} + \frac{1}{b}}\]
Final simplification3.4
\[\leadsto \frac{1}{a} + \frac{1}{b}\]
Reproduce
herbie shell --seed 2021042
(FPCore (a b eps)
:name "expq3 (problem 3.4.2)"
:precision binary64
:pre (and (< -1.0 eps) (< eps 1.0))
:herbie-target
(/ (+ a b) (* a b))
(/ (* eps (- (exp (* (+ a b) eps)) 1.0)) (* (- (exp (* a eps)) 1.0) (- (exp (* b eps)) 1.0))))