Average Error: 2.1 → 2.0
Time: 44.5s
Precision: 64
\[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}{y}\]
\[\frac{x \cdot \left(\left(\sqrt[3]{e^{\left(\log a \cdot \left(t - 1.0\right) + \log z \cdot y\right) - b}} \cdot \sqrt[3]{e^{\left(\log a \cdot \left(t - 1.0\right) + \log z \cdot y\right) - b}}\right) \cdot \sqrt[3]{\left(\sqrt[3]{e^{\left(\log a \cdot \left(t - 1.0\right) + \log z \cdot y\right) - b}} \cdot \sqrt[3]{e^{\left(\log a \cdot \left(t - 1.0\right) + \log z \cdot y\right) - b}}\right) \cdot \sqrt[3]{{\left(\sqrt{e}\right)}^{\left(\left(\log a \cdot \left(t - 1.0\right) + \log z \cdot y\right) - b\right)} \cdot {\left(\sqrt{e}\right)}^{\left(\left(\log a \cdot \left(t - 1.0\right) + \log z \cdot y\right) - b\right)}}}\right)}{y}\]
\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}{y}
\frac{x \cdot \left(\left(\sqrt[3]{e^{\left(\log a \cdot \left(t - 1.0\right) + \log z \cdot y\right) - b}} \cdot \sqrt[3]{e^{\left(\log a \cdot \left(t - 1.0\right) + \log z \cdot y\right) - b}}\right) \cdot \sqrt[3]{\left(\sqrt[3]{e^{\left(\log a \cdot \left(t - 1.0\right) + \log z \cdot y\right) - b}} \cdot \sqrt[3]{e^{\left(\log a \cdot \left(t - 1.0\right) + \log z \cdot y\right) - b}}\right) \cdot \sqrt[3]{{\left(\sqrt{e}\right)}^{\left(\left(\log a \cdot \left(t - 1.0\right) + \log z \cdot y\right) - b\right)} \cdot {\left(\sqrt{e}\right)}^{\left(\left(\log a \cdot \left(t - 1.0\right) + \log z \cdot y\right) - b\right)}}}\right)}{y}
double f(double x, double y, double z, double t, double a, double b) {
        double r19587378 = x;
        double r19587379 = y;
        double r19587380 = z;
        double r19587381 = log(r19587380);
        double r19587382 = r19587379 * r19587381;
        double r19587383 = t;
        double r19587384 = 1.0;
        double r19587385 = r19587383 - r19587384;
        double r19587386 = a;
        double r19587387 = log(r19587386);
        double r19587388 = r19587385 * r19587387;
        double r19587389 = r19587382 + r19587388;
        double r19587390 = b;
        double r19587391 = r19587389 - r19587390;
        double r19587392 = exp(r19587391);
        double r19587393 = r19587378 * r19587392;
        double r19587394 = r19587393 / r19587379;
        return r19587394;
}

double f(double x, double y, double z, double t, double a, double b) {
        double r19587395 = x;
        double r19587396 = a;
        double r19587397 = log(r19587396);
        double r19587398 = t;
        double r19587399 = 1.0;
        double r19587400 = r19587398 - r19587399;
        double r19587401 = r19587397 * r19587400;
        double r19587402 = z;
        double r19587403 = log(r19587402);
        double r19587404 = y;
        double r19587405 = r19587403 * r19587404;
        double r19587406 = r19587401 + r19587405;
        double r19587407 = b;
        double r19587408 = r19587406 - r19587407;
        double r19587409 = exp(r19587408);
        double r19587410 = cbrt(r19587409);
        double r19587411 = r19587410 * r19587410;
        double r19587412 = exp(1.0);
        double r19587413 = sqrt(r19587412);
        double r19587414 = pow(r19587413, r19587408);
        double r19587415 = r19587414 * r19587414;
        double r19587416 = cbrt(r19587415);
        double r19587417 = r19587411 * r19587416;
        double r19587418 = cbrt(r19587417);
        double r19587419 = r19587411 * r19587418;
        double r19587420 = r19587395 * r19587419;
        double r19587421 = r19587420 / r19587404;
        return r19587421;
}

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

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

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

Derivation

  1. Initial program 2.1

    \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}{y}\]
  2. Using strategy rm
  3. Applied add-cube-cbrt2.1

    \[\leadsto \frac{x \cdot \color{blue}{\left(\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}\right)}}{y}\]
  4. Using strategy rm
  5. Applied add-cube-cbrt2.1

    \[\leadsto \frac{x \cdot \left(\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{\color{blue}{\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}}}\right)}{y}\]
  6. Using strategy rm
  7. Applied *-un-lft-identity2.1

    \[\leadsto \frac{x \cdot \left(\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{e^{\color{blue}{1 \cdot \left(\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b\right)}}}}\right)}{y}\]
  8. Applied exp-prod2.1

    \[\leadsto \frac{x \cdot \left(\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{\color{blue}{{\left(e^{1}\right)}^{\left(\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b\right)}}}}\right)}{y}\]
  9. Simplified2.1

    \[\leadsto \frac{x \cdot \left(\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{{\color{blue}{e}}^{\left(\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b\right)}}}\right)}{y}\]
  10. Using strategy rm
  11. Applied add-sqr-sqrt2.0

    \[\leadsto \frac{x \cdot \left(\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{{\color{blue}{\left(\sqrt{e} \cdot \sqrt{e}\right)}}^{\left(\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b\right)}}}\right)}{y}\]
  12. Applied unpow-prod-down2.0

    \[\leadsto \frac{x \cdot \left(\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{\color{blue}{{\left(\sqrt{e}\right)}^{\left(\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b\right)} \cdot {\left(\sqrt{e}\right)}^{\left(\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b\right)}}}}\right)}{y}\]
  13. Final simplification2.0

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

Reproduce

herbie shell --seed 2019168 +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) (* 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) (* y (log z))))))

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