Average Error: 2.1 → 0.5
Time: 30.2s
Precision: 64
\[x \cdot e^{y \cdot \left(\log z - t\right) + a \cdot \left(\log \left(1 - z\right) - b\right)}\]
\[\left(x \cdot \sqrt{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}}\right) \cdot \sqrt{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}}\]
x \cdot e^{y \cdot \left(\log z - t\right) + a \cdot \left(\log \left(1 - z\right) - b\right)}
\left(x \cdot \sqrt{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}}\right) \cdot \sqrt{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}}
double f(double x, double y, double z, double t, double a, double b) {
        double r108367 = x;
        double r108368 = y;
        double r108369 = z;
        double r108370 = log(r108369);
        double r108371 = t;
        double r108372 = r108370 - r108371;
        double r108373 = r108368 * r108372;
        double r108374 = a;
        double r108375 = 1.0;
        double r108376 = r108375 - r108369;
        double r108377 = log(r108376);
        double r108378 = b;
        double r108379 = r108377 - r108378;
        double r108380 = r108374 * r108379;
        double r108381 = r108373 + r108380;
        double r108382 = exp(r108381);
        double r108383 = r108367 * r108382;
        return r108383;
}

double f(double x, double y, double z, double t, double a, double b) {
        double r108384 = x;
        double r108385 = y;
        double r108386 = z;
        double r108387 = log(r108386);
        double r108388 = t;
        double r108389 = r108387 - r108388;
        double r108390 = r108385 * r108389;
        double r108391 = a;
        double r108392 = 1.0;
        double r108393 = log(r108392);
        double r108394 = 0.5;
        double r108395 = 2.0;
        double r108396 = pow(r108386, r108395);
        double r108397 = pow(r108392, r108395);
        double r108398 = r108396 / r108397;
        double r108399 = r108394 * r108398;
        double r108400 = r108392 * r108386;
        double r108401 = r108399 + r108400;
        double r108402 = r108393 - r108401;
        double r108403 = b;
        double r108404 = r108402 - r108403;
        double r108405 = r108391 * r108404;
        double r108406 = r108390 + r108405;
        double r108407 = exp(r108406);
        double r108408 = sqrt(r108407);
        double r108409 = r108384 * r108408;
        double r108410 = r108409 * r108408;
        return r108410;
}

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 2.1

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

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

    \[\leadsto x \cdot \color{blue}{\left(\sqrt{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}} \cdot \sqrt{e^{y \cdot \left(\log z - t\right) + a \cdot \left(\left(\log 1 - \left(\frac{1}{2} \cdot \frac{{z}^{2}}{{1}^{2}} + 1 \cdot z\right)\right) - b\right)}}\right)}\]
  5. Applied associate-*r*0.5

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

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

Reproduce

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