Average Error: 2.7 → 3.1
Time: 14.0s
Precision: 64
\[x + \frac{y}{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y}\]
\[\frac{\sqrt[3]{y}}{\sqrt[3]{e^{z} \cdot 1.128379167095512558560699289955664426088 - x \cdot y}} \cdot \frac{1}{\frac{\sqrt[3]{e^{z} \cdot 1.128379167095512558560699289955664426088 - x \cdot y}}{\sqrt[3]{y}} \cdot \frac{\sqrt[3]{e^{z} \cdot 1.128379167095512558560699289955664426088 - x \cdot y}}{\sqrt[3]{y}}} + x\]
x + \frac{y}{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y}
\frac{\sqrt[3]{y}}{\sqrt[3]{e^{z} \cdot 1.128379167095512558560699289955664426088 - x \cdot y}} \cdot \frac{1}{\frac{\sqrt[3]{e^{z} \cdot 1.128379167095512558560699289955664426088 - x \cdot y}}{\sqrt[3]{y}} \cdot \frac{\sqrt[3]{e^{z} \cdot 1.128379167095512558560699289955664426088 - x \cdot y}}{\sqrt[3]{y}}} + x
double f(double x, double y, double z) {
        double r16898886 = x;
        double r16898887 = y;
        double r16898888 = 1.1283791670955126;
        double r16898889 = z;
        double r16898890 = exp(r16898889);
        double r16898891 = r16898888 * r16898890;
        double r16898892 = r16898886 * r16898887;
        double r16898893 = r16898891 - r16898892;
        double r16898894 = r16898887 / r16898893;
        double r16898895 = r16898886 + r16898894;
        return r16898895;
}

double f(double x, double y, double z) {
        double r16898896 = y;
        double r16898897 = cbrt(r16898896);
        double r16898898 = z;
        double r16898899 = exp(r16898898);
        double r16898900 = 1.1283791670955126;
        double r16898901 = r16898899 * r16898900;
        double r16898902 = x;
        double r16898903 = r16898902 * r16898896;
        double r16898904 = r16898901 - r16898903;
        double r16898905 = cbrt(r16898904);
        double r16898906 = r16898897 / r16898905;
        double r16898907 = 1.0;
        double r16898908 = r16898905 / r16898897;
        double r16898909 = r16898908 * r16898908;
        double r16898910 = r16898907 / r16898909;
        double r16898911 = r16898906 * r16898910;
        double r16898912 = r16898911 + r16898902;
        return r16898912;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

Original2.7
Target0.0
Herbie3.1
\[x + \frac{1}{\frac{1.128379167095512558560699289955664426088}{y} \cdot e^{z} - x}\]

Derivation

  1. Initial program 2.7

    \[x + \frac{y}{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y}\]
  2. Using strategy rm
  3. Applied add-cube-cbrt3.1

    \[\leadsto x + \frac{y}{\color{blue}{\left(\sqrt[3]{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y} \cdot \sqrt[3]{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y}\right) \cdot \sqrt[3]{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y}}}\]
  4. Applied add-cube-cbrt3.1

    \[\leadsto x + \frac{\color{blue}{\left(\sqrt[3]{y} \cdot \sqrt[3]{y}\right) \cdot \sqrt[3]{y}}}{\left(\sqrt[3]{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y} \cdot \sqrt[3]{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y}\right) \cdot \sqrt[3]{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y}}\]
  5. Applied times-frac3.1

    \[\leadsto x + \color{blue}{\frac{\sqrt[3]{y} \cdot \sqrt[3]{y}}{\sqrt[3]{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y} \cdot \sqrt[3]{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y}} \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y}}}\]
  6. Using strategy rm
  7. Applied clear-num3.1

    \[\leadsto x + \color{blue}{\frac{1}{\frac{\sqrt[3]{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y} \cdot \sqrt[3]{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y}}{\sqrt[3]{y} \cdot \sqrt[3]{y}}}} \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y}}\]
  8. Simplified3.1

    \[\leadsto x + \frac{1}{\color{blue}{\frac{\sqrt[3]{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y}}{\sqrt[3]{y}} \cdot \frac{\sqrt[3]{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y}}{\sqrt[3]{y}}}} \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{1.128379167095512558560699289955664426088 \cdot e^{z} - x \cdot y}}\]
  9. Final simplification3.1

    \[\leadsto \frac{\sqrt[3]{y}}{\sqrt[3]{e^{z} \cdot 1.128379167095512558560699289955664426088 - x \cdot y}} \cdot \frac{1}{\frac{\sqrt[3]{e^{z} \cdot 1.128379167095512558560699289955664426088 - x \cdot y}}{\sqrt[3]{y}} \cdot \frac{\sqrt[3]{e^{z} \cdot 1.128379167095512558560699289955664426088 - x \cdot y}}{\sqrt[3]{y}}} + x\]

Reproduce

herbie shell --seed 2019179 +o rules:numerics
(FPCore (x y z)
  :name "Numeric.SpecFunctions:invErfc from math-functions-0.1.5.2, A"

  :herbie-target
  (+ x (/ 1.0 (- (* (/ 1.1283791670955126 y) (exp z)) x)))

  (+ x (/ y (- (* 1.1283791670955126 (exp z)) (* x y)))))