Average Error: 20.1 → 20.1
Time: 6.9s
Precision: binary64
Cost: 7104
\[2 \cdot \sqrt{\left(x \cdot y + x \cdot z\right) + y \cdot z}\]
↓
\[2 \cdot \sqrt{x \cdot \left(y + z\right) + y \cdot z}\]
2 \cdot \sqrt{\left(x \cdot y + x \cdot z\right) + y \cdot z}↓
2 \cdot \sqrt{x \cdot \left(y + z\right) + y \cdot z}(FPCore (x y z)
:precision binary64
(* 2.0 (sqrt (+ (+ (* x y) (* x z)) (* y z)))))
↓
(FPCore (x y z) :precision binary64 (* 2.0 (sqrt (+ (* x (+ y z)) (* y z)))))
double code(double x, double y, double z) {
return 2.0 * sqrt(((x * y) + (x * z)) + (y * z));
}
↓
double code(double x, double y, double z) {
return 2.0 * sqrt((x * (y + z)) + (y * z));
}
Try it out
Enter valid numbers for all inputs
Target
| Original | 20.1 |
|---|
| Target | 19.4 |
|---|
| Herbie | 20.1 |
|---|
\[\begin{array}{l}
\mathbf{if}\;z < 7.636950090573675 \cdot 10^{+176}:\\
\;\;\;\;2 \cdot \sqrt{\left(x + y\right) \cdot z + x \cdot y}\\
\mathbf{else}:\\
\;\;\;\;\left(\left(0.25 \cdot \left(\left({y}^{-0.75} \cdot \left({z}^{-0.75} \cdot x\right)\right) \cdot \left(y + z\right)\right) + {z}^{0.25} \cdot {y}^{0.25}\right) \cdot \left(0.25 \cdot \left(\left({y}^{-0.75} \cdot \left({z}^{-0.75} \cdot x\right)\right) \cdot \left(y + z\right)\right) + {z}^{0.25} \cdot {y}^{0.25}\right)\right) \cdot 2\\
\end{array}\]
Alternatives
| Alternative 1 |
|---|
| Error | 50.5 |
|---|
| Cost | 92864 |
|---|
\[2 \cdot \left(\sqrt{\sqrt{x \cdot \left(y + z\right) + y \cdot z}} \cdot \sqrt{\sqrt{\sqrt[3]{x \cdot \left(y + z\right) + y \cdot z}} \cdot \left|\sqrt[3]{e^{\log \left(-\left(x + z\right)\right) - \log \left(\frac{-1}{y}\right)}} + 0.3333333333333333 \cdot \frac{\sqrt[3]{e^{\log \left(-\left(x + z\right)\right) - \log \left(\frac{-1}{y}\right)}}}{\frac{y}{\frac{x \cdot z}{x + z}}}\right|}\right)\]
| Alternative 2 |
|---|
| Error | 20.5 |
|---|
| Cost | 60224 |
|---|
\[2 \cdot \left(\sqrt{\sqrt{x \cdot \left(y + z\right) + y \cdot z}} \cdot \sqrt{\left|\sqrt[3]{x \cdot \left(y + z\right) + y \cdot z}\right| \cdot \sqrt{\sqrt[3]{\sqrt{x \cdot \left(y + z\right) + y \cdot z} \cdot \sqrt{x \cdot \left(y + z\right) + y \cdot z}}}}\right)\]
| Alternative 3 |
|---|
| Error | 22.3 |
|---|
| Cost | 59584 |
|---|
\[2 \cdot \left(\sqrt{\sqrt{x \cdot \left(y + z\right) + y \cdot z}} \cdot \sqrt{\sqrt{\sqrt[3]{x \cdot \left(y + z\right) + y \cdot z}} \cdot \left|e^{\log \left(\sqrt[3]{x \cdot \left(y + z\right) + y \cdot z}\right)}\right|}\right)\]
| Alternative 4 |
|---|
| Error | 21.7 |
|---|
| Cost | 59584 |
|---|
\[2 \cdot \left(\sqrt{\sqrt{x \cdot \left(y + z\right) + y \cdot z}} \cdot \sqrt{\left|\sqrt[3]{x \cdot \left(y + z\right) + y \cdot z}\right| \cdot \sqrt{e^{\log \left(\sqrt[3]{x \cdot \left(y + z\right) + y \cdot z}\right)}}}\right)\]
| Alternative 5 |
|---|
| Error | 20.5 |
|---|
| Cost | 46784 |
|---|
\[2 \cdot \left(\sqrt{\sqrt{x \cdot \left(y + z\right) + y \cdot z}} \cdot \sqrt{\left|\sqrt[3]{x \cdot \left(y + z\right) + y \cdot z}\right| \cdot \sqrt{\sqrt[3]{x \cdot y + z \cdot \left(x + y\right)}}}\right)\]
| Alternative 6 |
|---|
| Error | 20.5 |
|---|
| Cost | 46784 |
|---|
\[2 \cdot \left(\sqrt{\sqrt{x \cdot \left(y + z\right) + y \cdot z}} \cdot \sqrt{\left|\sqrt[3]{x \cdot \left(y + z\right) + y \cdot z}\right| \cdot \sqrt{\sqrt[3]{x \cdot \left(y + z\right) + y \cdot z}}}\right)\]
| Alternative 7 |
|---|
| Error | 48.9 |
|---|
| Cost | 46400 |
|---|
\[2 \cdot \left(\sqrt{\sqrt{x \cdot \left(y + z\right) + y \cdot z}} \cdot \sqrt{\left|\sqrt[3]{x \cdot \left(y + z\right) + y \cdot z}\right| \cdot \sqrt{\sqrt[3]{x \cdot y}}}\right)\]
| Alternative 8 |
|---|
| Error | 48.1 |
|---|
| Cost | 46400 |
|---|
\[2 \cdot \left(\sqrt{\sqrt{x \cdot \left(y + z\right) + y \cdot z}} \cdot \sqrt{\left|\sqrt[3]{x \cdot \left(y + z\right) + y \cdot z}\right| \cdot \sqrt{\sqrt[3]{y \cdot z}}}\right)\]
| Alternative 9 |
|---|
| Error | 20.9 |
|---|
| Cost | 40384 |
|---|
\[2 \cdot \left(\sqrt[3]{\sqrt{x \cdot \left(y + z\right) + y \cdot z}} \cdot \left(\sqrt[3]{\sqrt{x \cdot \left(y + z\right) + y \cdot z}} \cdot \sqrt[3]{\sqrt{x \cdot \left(y + z\right) + y \cdot z}}\right)\right)\]
| Alternative 10 |
|---|
| Error | 22.6 |
|---|
| Cost | 39744 |
|---|
\[2 \cdot \left(\sqrt{\sqrt{x \cdot \left(y + z\right) + y \cdot z}} \cdot \sqrt{e^{\log \left(\sqrt{x \cdot y + z \cdot \left(x + y\right)}\right)}}\right)\]
| Alternative 11 |
|---|
| Error | 20.6 |
|---|
| Cost | 26944 |
|---|
\[2 \cdot \left(\left|\sqrt[3]{x \cdot \left(y + z\right) + y \cdot z}\right| \cdot \sqrt{\sqrt[3]{x \cdot \left(y + z\right) + y \cdot z}}\right)\]
| Alternative 12 |
|---|
| Error | 20.4 |
|---|
| Cost | 26944 |
|---|
\[2 \cdot \left(\sqrt{\sqrt{x \cdot \left(y + z\right) + y \cdot z}} \cdot \sqrt{\sqrt{x \cdot \left(y + z\right) + y \cdot z}}\right)\]
| Alternative 13 |
|---|
| Error | 20.4 |
|---|
| Cost | 26944 |
|---|
\[2 \cdot \left(\sqrt{\sqrt{x \cdot \left(y + z\right) + y \cdot z}} \cdot \sqrt{\sqrt{x \cdot y + z \cdot \left(x + y\right)}}\right)\]
| Alternative 14 |
|---|
| Error | 49.2 |
|---|
| Cost | 26560 |
|---|
\[2 \cdot \left(\sqrt{\sqrt{x \cdot \left(y + z\right) + y \cdot z}} \cdot \sqrt{\sqrt{x \cdot y}}\right)\]
| Alternative 15 |
|---|
| Error | 48.4 |
|---|
| Cost | 26560 |
|---|
\[2 \cdot \left(\sqrt{\sqrt{x \cdot \left(y + z\right) + y \cdot z}} \cdot \sqrt{\sqrt{y \cdot z}}\right)\]
| Alternative 16 |
|---|
| Error | 52.3 |
|---|
| Cost | 20288 |
|---|
\[2 \cdot \left(\sqrt{x \cdot y} + z \cdot \left(0.5 \cdot \left(\sqrt{\frac{x}{y}} + \sqrt{\frac{y}{x}}\right)\right)\right)\]
| Alternative 17 |
|---|
| Error | 51.5 |
|---|
| Cost | 20288 |
|---|
\[2 \cdot \left(\sqrt{x \cdot z} + \left(y \cdot 0.5\right) \cdot \left(\sqrt{\frac{x}{z}} + \sqrt{\frac{z}{x}}\right)\right)\]
| Alternative 18 |
|---|
| Error | 51.6 |
|---|
| Cost | 20288 |
|---|
\[2 \cdot \left(\sqrt{y \cdot z} + x \cdot \left(0.5 \cdot \left(\sqrt{\frac{y}{z}} + \sqrt{\frac{z}{y}}\right)\right)\right)\]
| Alternative 19 |
|---|
| Error | 32.7 |
|---|
| Cost | 19968 |
|---|
\[2 \cdot \sqrt[3]{{\left(\sqrt{x \cdot \left(y + z\right) + y \cdot z}\right)}^{3}}\]
| Alternative 20 |
|---|
| Error | 48.1 |
|---|
| Cost | 14784 |
|---|
\[2 \cdot \frac{\sqrt{\left(x \cdot \left(y + z\right)\right) \cdot \left(x \cdot \left(y + z\right)\right) - \left(y \cdot z\right) \cdot \left(y \cdot z\right)}}{\sqrt{x \cdot \left(y + z\right) - y \cdot z}}\]
| Alternative 21 |
|---|
| Error | 39.7 |
|---|
| Cost | 8384 |
|---|
\[2 \cdot \sqrt{\frac{\left(x \cdot \left(y + z\right)\right) \cdot \left(x \cdot \left(y + z\right)\right) - \left(y \cdot z\right) \cdot \left(y \cdot z\right)}{x \cdot \left(y + z\right) - y \cdot z}}\]
| Alternative 22 |
|---|
| Error | 20.1 |
|---|
| Cost | 7232 |
|---|
\[2 \cdot \sqrt{y \cdot z + \left(x \cdot y + x \cdot z\right)}\]
| Alternative 23 |
|---|
| Error | 20.1 |
|---|
| Cost | 7104 |
|---|
\[2 \cdot \sqrt{x \cdot y + z \cdot \left(x + y\right)}\]
| Alternative 24 |
|---|
| Error | 34.0 |
|---|
| Cost | 6848 |
|---|
\[2 \cdot \sqrt{z \cdot \left(x + y\right)}\]
| Alternative 25 |
|---|
| Error | 34.8 |
|---|
| Cost | 6848 |
|---|
\[2 \cdot \sqrt{y \cdot \left(x + z\right)}\]
| Alternative 26 |
|---|
| Error | 34.7 |
|---|
| Cost | 6848 |
|---|
\[2 \cdot \sqrt{x \cdot \left(y + z\right)}\]
| Alternative 27 |
|---|
| Error | 49.1 |
|---|
| Cost | 6720 |
|---|
\[2 \cdot \sqrt{x \cdot y}\]
| Alternative 28 |
|---|
| Error | 48.3 |
|---|
| Cost | 6720 |
|---|
\[2 \cdot \sqrt{x \cdot z}\]
| Alternative 29 |
|---|
| Error | 48.2 |
|---|
| Cost | 6720 |
|---|
\[2 \cdot \sqrt{y \cdot z}\]
| Alternative 30 |
|---|
| Error | 64.0 |
|---|
| Cost | 448 |
|---|
\[2 \cdot \left(\left(y + z\right) \cdot \mathsf{NaN}\right)\]
| Alternative 31 |
|---|
| Error | 60.1 |
|---|
| Cost | 64 |
|---|
\[1\]
| Alternative 32 |
|---|
| Error | 62.2 |
|---|
| Cost | 64 |
|---|
\[0\]
| Alternative 33 |
|---|
| Error | 63.1 |
|---|
| Cost | 64 |
|---|
\[-1\]
Error

Derivation
Initial program 20.1
\[2 \cdot \sqrt{\left(x \cdot y + x \cdot z\right) + y \cdot z}\]
Simplified20.1
\[\leadsto \color{blue}{2 \cdot \sqrt{x \cdot \left(y + z\right) + y \cdot z}}\]
Simplified20.1
\[\leadsto \color{blue}{2 \cdot \sqrt{x \cdot \left(y + z\right) + y \cdot z}}\]
Final simplification20.1
\[\leadsto 2 \cdot \sqrt{x \cdot \left(y + z\right) + y \cdot z}\]
Reproduce
herbie shell --seed 2021042
(FPCore (x y z)
:name "Diagrams.TwoD.Apollonian:descartes from diagrams-contrib-1.3.0.5"
:precision binary64
:herbie-target
(if (< z 7.636950090573675e+176) (* 2.0 (sqrt (+ (* (+ x y) z) (* x y)))) (* (* (+ (* 0.25 (* (* (pow y -0.75) (* (pow z -0.75) x)) (+ y z))) (* (pow z 0.25) (pow y 0.25))) (+ (* 0.25 (* (* (pow y -0.75) (* (pow z -0.75) x)) (+ y z))) (* (pow z 0.25) (pow y 0.25)))) 2.0))
(* 2.0 (sqrt (+ (+ (* x y) (* x z)) (* y z)))))