Average Error: 2.1 → 2.0
Time: 1.4m
Precision: 64
\[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}\]
\[\frac{x \cdot \left(\left(\sqrt[3]{e^{\left(\log a \cdot \left(t - 1\right) + \log z \cdot y\right) - b}} \cdot \sqrt[3]{e^{\left(\log a \cdot \left(t - 1\right) + \log z \cdot y\right) - b}}\right) \cdot \sqrt[3]{\left(\sqrt[3]{e^{\left(\log a \cdot \left(t - 1\right) + \log z \cdot y\right) - b}} \cdot \sqrt[3]{e^{\left(\log a \cdot \left(t - 1\right) + \log z \cdot y\right) - b}}\right) \cdot \sqrt[3]{{\left(\sqrt{e}\right)}^{\left(\left(\log a \cdot \left(t - 1\right) + \log z \cdot y\right) - b\right)} \cdot {\left(\sqrt{e}\right)}^{\left(\left(\log a \cdot \left(t - 1\right) + \log z \cdot y\right) - b\right)}}}\right)}{y}\]
\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}
\frac{x \cdot \left(\left(\sqrt[3]{e^{\left(\log a \cdot \left(t - 1\right) + \log z \cdot y\right) - b}} \cdot \sqrt[3]{e^{\left(\log a \cdot \left(t - 1\right) + \log z \cdot y\right) - b}}\right) \cdot \sqrt[3]{\left(\sqrt[3]{e^{\left(\log a \cdot \left(t - 1\right) + \log z \cdot y\right) - b}} \cdot \sqrt[3]{e^{\left(\log a \cdot \left(t - 1\right) + \log z \cdot y\right) - b}}\right) \cdot \sqrt[3]{{\left(\sqrt{e}\right)}^{\left(\left(\log a \cdot \left(t - 1\right) + \log z \cdot y\right) - b\right)} \cdot {\left(\sqrt{e}\right)}^{\left(\left(\log a \cdot \left(t - 1\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 r21388064 = x;
        double r21388065 = y;
        double r21388066 = z;
        double r21388067 = log(r21388066);
        double r21388068 = r21388065 * r21388067;
        double r21388069 = t;
        double r21388070 = 1.0;
        double r21388071 = r21388069 - r21388070;
        double r21388072 = a;
        double r21388073 = log(r21388072);
        double r21388074 = r21388071 * r21388073;
        double r21388075 = r21388068 + r21388074;
        double r21388076 = b;
        double r21388077 = r21388075 - r21388076;
        double r21388078 = exp(r21388077);
        double r21388079 = r21388064 * r21388078;
        double r21388080 = r21388079 / r21388065;
        return r21388080;
}

double f(double x, double y, double z, double t, double a, double b) {
        double r21388081 = x;
        double r21388082 = a;
        double r21388083 = log(r21388082);
        double r21388084 = t;
        double r21388085 = 1.0;
        double r21388086 = r21388084 - r21388085;
        double r21388087 = r21388083 * r21388086;
        double r21388088 = z;
        double r21388089 = log(r21388088);
        double r21388090 = y;
        double r21388091 = r21388089 * r21388090;
        double r21388092 = r21388087 + r21388091;
        double r21388093 = b;
        double r21388094 = r21388092 - r21388093;
        double r21388095 = exp(r21388094);
        double r21388096 = cbrt(r21388095);
        double r21388097 = r21388096 * r21388096;
        double r21388098 = exp(1.0);
        double r21388099 = sqrt(r21388098);
        double r21388100 = pow(r21388099, r21388094);
        double r21388101 = r21388100 * r21388100;
        double r21388102 = cbrt(r21388101);
        double r21388103 = r21388097 * r21388102;
        double r21388104 = cbrt(r21388103);
        double r21388105 = r21388097 * r21388104;
        double r21388106 = r21388081 * r21388105;
        double r21388107 = r21388106 / r21388090;
        return r21388107;
}

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.9
Herbie2.0
\[\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.1

    \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\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\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\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\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{\color{blue}{\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\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\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{e^{\color{blue}{1 \cdot \left(\left(y \cdot \log z + \left(t - 1\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\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\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\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\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{{\color{blue}{e}}^{\left(\left(y \cdot \log z + \left(t - 1\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\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\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\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\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}\right) \cdot \sqrt[3]{\left(\sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}} \cdot \sqrt[3]{e^{\left(y \cdot \log z + \left(t - 1\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\right) \cdot \log a\right) - b\right)} \cdot {\left(\sqrt{e}\right)}^{\left(\left(y \cdot \log z + \left(t - 1\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\right) + \log z \cdot y\right) - b}} \cdot \sqrt[3]{e^{\left(\log a \cdot \left(t - 1\right) + \log z \cdot y\right) - b}}\right) \cdot \sqrt[3]{\left(\sqrt[3]{e^{\left(\log a \cdot \left(t - 1\right) + \log z \cdot y\right) - b}} \cdot \sqrt[3]{e^{\left(\log a \cdot \left(t - 1\right) + \log z \cdot y\right) - b}}\right) \cdot \sqrt[3]{{\left(\sqrt{e}\right)}^{\left(\left(\log a \cdot \left(t - 1\right) + \log z \cdot y\right) - b\right)} \cdot {\left(\sqrt{e}\right)}^{\left(\left(\log a \cdot \left(t - 1\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.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))