Average Error: 3.7 → 1.5
Time: 42.7s
Precision: 64
\[\frac{x}{x + y \cdot e^{2.0 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5.0}{6.0}\right) - \frac{2.0}{t \cdot 3.0}\right)\right)}}\]
\[\frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\sqrt{\sqrt[3]{a + t}}}{\frac{t}{\sqrt[3]{z}}} \cdot \frac{\sqrt{\sqrt[3]{a + t} \cdot \sqrt[3]{a + t}}}{\frac{1}{\sqrt[3]{z} \cdot \sqrt[3]{z}}}\right)}, x\right)}\]
\frac{x}{x + y \cdot e^{2.0 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5.0}{6.0}\right) - \frac{2.0}{t \cdot 3.0}\right)\right)}}
\frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\sqrt{\sqrt[3]{a + t}}}{\frac{t}{\sqrt[3]{z}}} \cdot \frac{\sqrt{\sqrt[3]{a + t} \cdot \sqrt[3]{a + t}}}{\frac{1}{\sqrt[3]{z} \cdot \sqrt[3]{z}}}\right)}, x\right)}
double f(double x, double y, double z, double t, double a, double b, double c) {
        double r2937751 = x;
        double r2937752 = y;
        double r2937753 = 2.0;
        double r2937754 = z;
        double r2937755 = t;
        double r2937756 = a;
        double r2937757 = r2937755 + r2937756;
        double r2937758 = sqrt(r2937757);
        double r2937759 = r2937754 * r2937758;
        double r2937760 = r2937759 / r2937755;
        double r2937761 = b;
        double r2937762 = c;
        double r2937763 = r2937761 - r2937762;
        double r2937764 = 5.0;
        double r2937765 = 6.0;
        double r2937766 = r2937764 / r2937765;
        double r2937767 = r2937756 + r2937766;
        double r2937768 = 3.0;
        double r2937769 = r2937755 * r2937768;
        double r2937770 = r2937753 / r2937769;
        double r2937771 = r2937767 - r2937770;
        double r2937772 = r2937763 * r2937771;
        double r2937773 = r2937760 - r2937772;
        double r2937774 = r2937753 * r2937773;
        double r2937775 = exp(r2937774);
        double r2937776 = r2937752 * r2937775;
        double r2937777 = r2937751 + r2937776;
        double r2937778 = r2937751 / r2937777;
        return r2937778;
}

double f(double x, double y, double z, double t, double a, double b, double c) {
        double r2937779 = x;
        double r2937780 = y;
        double r2937781 = 2.0;
        double r2937782 = c;
        double r2937783 = b;
        double r2937784 = r2937782 - r2937783;
        double r2937785 = 5.0;
        double r2937786 = 6.0;
        double r2937787 = r2937785 / r2937786;
        double r2937788 = t;
        double r2937789 = r2937781 / r2937788;
        double r2937790 = 3.0;
        double r2937791 = r2937789 / r2937790;
        double r2937792 = a;
        double r2937793 = r2937791 - r2937792;
        double r2937794 = r2937787 - r2937793;
        double r2937795 = r2937792 + r2937788;
        double r2937796 = cbrt(r2937795);
        double r2937797 = sqrt(r2937796);
        double r2937798 = z;
        double r2937799 = cbrt(r2937798);
        double r2937800 = r2937788 / r2937799;
        double r2937801 = r2937797 / r2937800;
        double r2937802 = r2937796 * r2937796;
        double r2937803 = sqrt(r2937802);
        double r2937804 = 1.0;
        double r2937805 = r2937799 * r2937799;
        double r2937806 = r2937804 / r2937805;
        double r2937807 = r2937803 / r2937806;
        double r2937808 = r2937801 * r2937807;
        double r2937809 = fma(r2937784, r2937794, r2937808);
        double r2937810 = r2937781 * r2937809;
        double r2937811 = exp(r2937810);
        double r2937812 = fma(r2937780, r2937811, r2937779);
        double r2937813 = r2937779 / r2937812;
        return r2937813;
}

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

    \[\frac{x}{x + y \cdot e^{2.0 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5.0}{6.0}\right) - \frac{2.0}{t \cdot 3.0}\right)\right)}}\]
  2. Simplified1.8

    \[\leadsto \color{blue}{\frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\sqrt{a + t}}{\frac{t}{z}}\right)}, x\right)}}\]
  3. Using strategy rm
  4. Applied add-cube-cbrt1.8

    \[\leadsto \frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\sqrt{a + t}}{\frac{t}{\color{blue}{\left(\sqrt[3]{z} \cdot \sqrt[3]{z}\right) \cdot \sqrt[3]{z}}}}\right)}, x\right)}\]
  5. Applied *-un-lft-identity1.8

    \[\leadsto \frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\sqrt{a + t}}{\frac{\color{blue}{1 \cdot t}}{\left(\sqrt[3]{z} \cdot \sqrt[3]{z}\right) \cdot \sqrt[3]{z}}}\right)}, x\right)}\]
  6. Applied times-frac1.8

    \[\leadsto \frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\sqrt{a + t}}{\color{blue}{\frac{1}{\sqrt[3]{z} \cdot \sqrt[3]{z}} \cdot \frac{t}{\sqrt[3]{z}}}}\right)}, x\right)}\]
  7. Applied add-cube-cbrt1.8

    \[\leadsto \frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\sqrt{\color{blue}{\left(\sqrt[3]{a + t} \cdot \sqrt[3]{a + t}\right) \cdot \sqrt[3]{a + t}}}}{\frac{1}{\sqrt[3]{z} \cdot \sqrt[3]{z}} \cdot \frac{t}{\sqrt[3]{z}}}\right)}, x\right)}\]
  8. Applied sqrt-prod1.8

    \[\leadsto \frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\color{blue}{\sqrt{\sqrt[3]{a + t} \cdot \sqrt[3]{a + t}} \cdot \sqrt{\sqrt[3]{a + t}}}}{\frac{1}{\sqrt[3]{z} \cdot \sqrt[3]{z}} \cdot \frac{t}{\sqrt[3]{z}}}\right)}, x\right)}\]
  9. Applied times-frac1.5

    \[\leadsto \frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \color{blue}{\frac{\sqrt{\sqrt[3]{a + t} \cdot \sqrt[3]{a + t}}}{\frac{1}{\sqrt[3]{z} \cdot \sqrt[3]{z}}} \cdot \frac{\sqrt{\sqrt[3]{a + t}}}{\frac{t}{\sqrt[3]{z}}}}\right)}, x\right)}\]
  10. Final simplification1.5

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

Reproduce

herbie shell --seed 2019162 +o rules:numerics
(FPCore (x y z t a b c)
  :name "Numeric.SpecFunctions:invIncompleteBetaWorker from math-functions-0.1.5.2"
  (/ x (+ x (* y (exp (* 2.0 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0)))))))))))