Average Error: 1.9 → 1.5
Time: 34.7s
Precision: 64
\[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}\]
\[\frac{x}{\left(y \cdot e^{\left(b - \log a \cdot t\right) - \log z \cdot y}\right) \cdot \frac{1}{{a}^{\left(-1\right)}}}\]
\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}
\frac{x}{\left(y \cdot e^{\left(b - \log a \cdot t\right) - \log z \cdot y}\right) \cdot \frac{1}{{a}^{\left(-1\right)}}}
double f(double x, double y, double z, double t, double a, double b) {
        double r71346 = x;
        double r71347 = y;
        double r71348 = z;
        double r71349 = log(r71348);
        double r71350 = r71347 * r71349;
        double r71351 = t;
        double r71352 = 1.0;
        double r71353 = r71351 - r71352;
        double r71354 = a;
        double r71355 = log(r71354);
        double r71356 = r71353 * r71355;
        double r71357 = r71350 + r71356;
        double r71358 = b;
        double r71359 = r71357 - r71358;
        double r71360 = exp(r71359);
        double r71361 = r71346 * r71360;
        double r71362 = r71361 / r71347;
        return r71362;
}

double f(double x, double y, double z, double t, double a, double b) {
        double r71363 = x;
        double r71364 = y;
        double r71365 = b;
        double r71366 = a;
        double r71367 = log(r71366);
        double r71368 = t;
        double r71369 = r71367 * r71368;
        double r71370 = r71365 - r71369;
        double r71371 = z;
        double r71372 = log(r71371);
        double r71373 = r71372 * r71364;
        double r71374 = r71370 - r71373;
        double r71375 = exp(r71374);
        double r71376 = r71364 * r71375;
        double r71377 = 1.0;
        double r71378 = 1.0;
        double r71379 = -r71378;
        double r71380 = pow(r71366, r71379);
        double r71381 = r71377 / r71380;
        double r71382 = r71376 * r71381;
        double r71383 = r71363 / r71382;
        return r71383;
}

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.1

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

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

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

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

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

Reproduce

herbie shell --seed 2019209 
(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))