Average Error: 2.0 → 1.1
Time: 41.0s
Precision: 64
\[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}\]
\[\frac{\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \frac{x}{\frac{\left(\sqrt[3]{\sqrt[3]{y}} \cdot \sqrt[3]{\sqrt[3]{y}}\right) \cdot \sqrt[3]{\sqrt[3]{y}}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}}\]
\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}
\frac{\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \frac{x}{\frac{\left(\sqrt[3]{\sqrt[3]{y}} \cdot \sqrt[3]{\sqrt[3]{y}}\right) \cdot \sqrt[3]{\sqrt[3]{y}}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}}
double f(double x, double y, double z, double t, double a, double b) {
        double r28777202 = x;
        double r28777203 = y;
        double r28777204 = z;
        double r28777205 = log(r28777204);
        double r28777206 = r28777203 * r28777205;
        double r28777207 = t;
        double r28777208 = 1.0;
        double r28777209 = r28777207 - r28777208;
        double r28777210 = a;
        double r28777211 = log(r28777210);
        double r28777212 = r28777209 * r28777211;
        double r28777213 = r28777206 + r28777212;
        double r28777214 = b;
        double r28777215 = r28777213 - r28777214;
        double r28777216 = exp(r28777215);
        double r28777217 = r28777202 * r28777216;
        double r28777218 = r28777217 / r28777203;
        return r28777218;
}

double f(double x, double y, double z, double t, double a, double b) {
        double r28777219 = y;
        double r28777220 = z;
        double r28777221 = log(r28777220);
        double r28777222 = t;
        double r28777223 = 1.0;
        double r28777224 = r28777222 - r28777223;
        double r28777225 = a;
        double r28777226 = log(r28777225);
        double r28777227 = r28777224 * r28777226;
        double r28777228 = fma(r28777219, r28777221, r28777227);
        double r28777229 = b;
        double r28777230 = r28777228 - r28777229;
        double r28777231 = exp(r28777230);
        double r28777232 = cbrt(r28777231);
        double r28777233 = r28777232 * r28777232;
        double r28777234 = cbrt(r28777219);
        double r28777235 = r28777234 * r28777234;
        double r28777236 = r28777233 / r28777235;
        double r28777237 = x;
        double r28777238 = cbrt(r28777234);
        double r28777239 = r28777238 * r28777238;
        double r28777240 = r28777239 * r28777238;
        double r28777241 = r28777240 / r28777232;
        double r28777242 = r28777237 / r28777241;
        double r28777243 = r28777236 * r28777242;
        return r28777243;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Bits error versus a

Bits error versus b

Target

Original2.0
Target10.8
Herbie1.1
\[\begin{array}{l} \mathbf{if}\;t \lt -0.8845848504127471478852839936735108494759:\\ \;\;\;\;\frac{x \cdot \frac{{a}^{\left(t - 1\right)}}{y}}{\left(b + 1\right) - y \cdot \log z}\\ \mathbf{elif}\;t \lt 852031.228837407310493290424346923828125:\\ \;\;\;\;\frac{\frac{x}{y} \cdot {a}^{\left(t - 1\right)}}{e^{b - \log z \cdot y}}\\ \mathbf{else}:\\ \;\;\;\;\frac{x \cdot \frac{{a}^{\left(t - 1\right)}}{y}}{\left(b + 1\right) - y \cdot \log z}\\ \end{array}\]

Derivation

  1. Initial program 2.0

    \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}\]
  2. Simplified2.0

    \[\leadsto \color{blue}{\frac{x \cdot e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}{y}}\]
  3. Using strategy rm
  4. Applied associate-/l*1.9

    \[\leadsto \color{blue}{\frac{x}{\frac{y}{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}}\]
  5. Using strategy rm
  6. Applied add-cube-cbrt1.9

    \[\leadsto \frac{x}{\frac{y}{\color{blue}{\left(\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}}}\]
  7. Applied add-cube-cbrt1.9

    \[\leadsto \frac{x}{\frac{\color{blue}{\left(\sqrt[3]{y} \cdot \sqrt[3]{y}\right) \cdot \sqrt[3]{y}}}{\left(\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}}\]
  8. Applied times-frac1.9

    \[\leadsto \frac{x}{\color{blue}{\frac{\sqrt[3]{y} \cdot \sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}} \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}}}\]
  9. Applied *-un-lft-identity1.9

    \[\leadsto \frac{\color{blue}{1 \cdot x}}{\frac{\sqrt[3]{y} \cdot \sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}} \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}}\]
  10. Applied times-frac1.1

    \[\leadsto \color{blue}{\frac{1}{\frac{\sqrt[3]{y} \cdot \sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}} \cdot \frac{x}{\frac{\sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}}}\]
  11. Simplified1.1

    \[\leadsto \color{blue}{\frac{\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}{\sqrt[3]{y} \cdot \sqrt[3]{y}}} \cdot \frac{x}{\frac{\sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}}\]
  12. Using strategy rm
  13. Applied add-cube-cbrt1.1

    \[\leadsto \frac{\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \frac{x}{\frac{\color{blue}{\left(\sqrt[3]{\sqrt[3]{y}} \cdot \sqrt[3]{\sqrt[3]{y}}\right) \cdot \sqrt[3]{\sqrt[3]{y}}}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}}\]
  14. Final simplification1.1

    \[\leadsto \frac{\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \frac{x}{\frac{\left(\sqrt[3]{\sqrt[3]{y}} \cdot \sqrt[3]{\sqrt[3]{y}}\right) \cdot \sqrt[3]{\sqrt[3]{y}}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \log z, \left(t - 1\right) \cdot \log a\right) - b}}}}\]

Reproduce

herbie shell --seed 2019174 +o rules:numerics
(FPCore (x y z t a b)
  :name "Numeric.SpecFunctions:incompleteBetaWorker from math-functions-0.1.5.2, A"

  :herbie-target
  (if (< t -0.8845848504127471) (/ (* x (/ (pow a (- t 1.0)) y)) (- (+ b 1.0) (* y (log z)))) (if (< t 852031.2288374073) (/ (* (/ x y) (pow a (- t 1.0))) (exp (- b (* (log z) y)))) (/ (* x (/ (pow a (- t 1.0)) y)) (- (+ b 1.0) (* y (log z))))))

  (/ (* x (exp (- (+ (* y (log z)) (* (- t 1.0) (log a))) b))) y))