Average Error: 3.6 → 2.1
Time: 8.2s
Precision: 64
\[\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\]
\[\frac{x}{x + y \cdot e^{2 \cdot \mathsf{fma}\left(\frac{z}{1}, \frac{\sqrt{t + a}}{t}, -\left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\]
\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}
\frac{x}{x + y \cdot e^{2 \cdot \mathsf{fma}\left(\frac{z}{1}, \frac{\sqrt{t + a}}{t}, -\left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}
double f(double x, double y, double z, double t, double a, double b, double c) {
        double r83582 = x;
        double r83583 = y;
        double r83584 = 2.0;
        double r83585 = z;
        double r83586 = t;
        double r83587 = a;
        double r83588 = r83586 + r83587;
        double r83589 = sqrt(r83588);
        double r83590 = r83585 * r83589;
        double r83591 = r83590 / r83586;
        double r83592 = b;
        double r83593 = c;
        double r83594 = r83592 - r83593;
        double r83595 = 5.0;
        double r83596 = 6.0;
        double r83597 = r83595 / r83596;
        double r83598 = r83587 + r83597;
        double r83599 = 3.0;
        double r83600 = r83586 * r83599;
        double r83601 = r83584 / r83600;
        double r83602 = r83598 - r83601;
        double r83603 = r83594 * r83602;
        double r83604 = r83591 - r83603;
        double r83605 = r83584 * r83604;
        double r83606 = exp(r83605);
        double r83607 = r83583 * r83606;
        double r83608 = r83582 + r83607;
        double r83609 = r83582 / r83608;
        return r83609;
}

double f(double x, double y, double z, double t, double a, double b, double c) {
        double r83610 = x;
        double r83611 = y;
        double r83612 = 2.0;
        double r83613 = z;
        double r83614 = 1.0;
        double r83615 = r83613 / r83614;
        double r83616 = t;
        double r83617 = a;
        double r83618 = r83616 + r83617;
        double r83619 = sqrt(r83618);
        double r83620 = r83619 / r83616;
        double r83621 = b;
        double r83622 = c;
        double r83623 = r83621 - r83622;
        double r83624 = 5.0;
        double r83625 = 6.0;
        double r83626 = r83624 / r83625;
        double r83627 = r83617 + r83626;
        double r83628 = 3.0;
        double r83629 = r83616 * r83628;
        double r83630 = r83612 / r83629;
        double r83631 = r83627 - r83630;
        double r83632 = r83623 * r83631;
        double r83633 = -r83632;
        double r83634 = fma(r83615, r83620, r83633);
        double r83635 = r83612 * r83634;
        double r83636 = exp(r83635);
        double r83637 = r83611 * r83636;
        double r83638 = r83610 + r83637;
        double r83639 = r83610 / r83638;
        return r83639;
}

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

Bits error versus c

Derivation

  1. Initial program 3.6

    \[\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\]
  2. Using strategy rm
  3. Applied *-un-lft-identity3.6

    \[\leadsto \frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{\color{blue}{1 \cdot t}} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\]
  4. Applied times-frac3.2

    \[\leadsto \frac{x}{x + y \cdot e^{2 \cdot \left(\color{blue}{\frac{z}{1} \cdot \frac{\sqrt{t + a}}{t}} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\]
  5. Applied fma-neg2.1

    \[\leadsto \frac{x}{x + y \cdot e^{2 \cdot \color{blue}{\mathsf{fma}\left(\frac{z}{1}, \frac{\sqrt{t + a}}{t}, -\left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}}\]
  6. Final simplification2.1

    \[\leadsto \frac{x}{x + y \cdot e^{2 \cdot \mathsf{fma}\left(\frac{z}{1}, \frac{\sqrt{t + a}}{t}, -\left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\]

Reproduce

herbie shell --seed 2020056 +o rules:numerics
(FPCore (x y z t a b c)
  :name "Numeric.SpecFunctions:invIncompleteBetaWorker from math-functions-0.1.5.2"
  :precision binary64
  (/ x (+ x (* y (exp (* 2 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5 6)) (/ 2 (* t 3)))))))))))