Average Error: 1.9 → 1.2
Time: 13.6s
Precision: 64
\[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}\]
\[\left(x \cdot \frac{{\left(\frac{1}{a}\right)}^{1}}{e^{y \cdot \log \left(\frac{1}{z}\right) + \left(\log \left(\frac{1}{a}\right) \cdot t + b\right)}}\right) \cdot \frac{1}{y}\]
\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}
\left(x \cdot \frac{{\left(\frac{1}{a}\right)}^{1}}{e^{y \cdot \log \left(\frac{1}{z}\right) + \left(\log \left(\frac{1}{a}\right) \cdot t + b\right)}}\right) \cdot \frac{1}{y}
double f(double x, double y, double z, double t, double a, double b) {
        double r111688 = x;
        double r111689 = y;
        double r111690 = z;
        double r111691 = log(r111690);
        double r111692 = r111689 * r111691;
        double r111693 = t;
        double r111694 = 1.0;
        double r111695 = r111693 - r111694;
        double r111696 = a;
        double r111697 = log(r111696);
        double r111698 = r111695 * r111697;
        double r111699 = r111692 + r111698;
        double r111700 = b;
        double r111701 = r111699 - r111700;
        double r111702 = exp(r111701);
        double r111703 = r111688 * r111702;
        double r111704 = r111703 / r111689;
        return r111704;
}

double f(double x, double y, double z, double t, double a, double b) {
        double r111705 = x;
        double r111706 = 1.0;
        double r111707 = a;
        double r111708 = r111706 / r111707;
        double r111709 = 1.0;
        double r111710 = pow(r111708, r111709);
        double r111711 = y;
        double r111712 = z;
        double r111713 = r111706 / r111712;
        double r111714 = log(r111713);
        double r111715 = r111711 * r111714;
        double r111716 = log(r111708);
        double r111717 = t;
        double r111718 = r111716 * r111717;
        double r111719 = b;
        double r111720 = r111718 + r111719;
        double r111721 = r111715 + r111720;
        double r111722 = exp(r111721);
        double r111723 = r111710 / r111722;
        double r111724 = r111705 * r111723;
        double r111725 = r111706 / r111711;
        double r111726 = r111724 * r111725;
        return r111726;
}

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

Derivation

  1. Initial program 1.9

    \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}\]
  2. Taylor expanded around inf 1.9

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

    \[\leadsto \frac{x \cdot \color{blue}{\frac{{\left(\frac{1}{a}\right)}^{1}}{e^{y \cdot \log \left(\frac{1}{z}\right) + \left(\log \left(\frac{1}{a}\right) \cdot t + b\right)}}}}{y}\]
  4. Using strategy rm
  5. Applied div-inv1.2

    \[\leadsto \color{blue}{\left(x \cdot \frac{{\left(\frac{1}{a}\right)}^{1}}{e^{y \cdot \log \left(\frac{1}{z}\right) + \left(\log \left(\frac{1}{a}\right) \cdot t + b\right)}}\right) \cdot \frac{1}{y}}\]
  6. Final simplification1.2

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

Reproduce

herbie shell --seed 2020046 
(FPCore (x y z t a b)
  :name "Numeric.SpecFunctions:incompleteBetaWorker from math-functions-0.1.5.2"
  :precision binary64
  (/ (* x (exp (- (+ (* y (log z)) (* (- t 1) (log a))) b))) y))