Average Error: 4.1 → 1.7
Time: 30.3s
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, \left(\frac{5.0}{6.0} + a\right) - \frac{2.0}{t \cdot 3.0}, \frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}}\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, \left(\frac{5.0}{6.0} + a\right) - \frac{2.0}{t \cdot 3.0}, \frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}}\right)}, x\right)}
double f(double x, double y, double z, double t, double a, double b, double c) {
        double r1210763 = x;
        double r1210764 = y;
        double r1210765 = 2.0;
        double r1210766 = z;
        double r1210767 = t;
        double r1210768 = a;
        double r1210769 = r1210767 + r1210768;
        double r1210770 = sqrt(r1210769);
        double r1210771 = r1210766 * r1210770;
        double r1210772 = r1210771 / r1210767;
        double r1210773 = b;
        double r1210774 = c;
        double r1210775 = r1210773 - r1210774;
        double r1210776 = 5.0;
        double r1210777 = 6.0;
        double r1210778 = r1210776 / r1210777;
        double r1210779 = r1210768 + r1210778;
        double r1210780 = 3.0;
        double r1210781 = r1210767 * r1210780;
        double r1210782 = r1210765 / r1210781;
        double r1210783 = r1210779 - r1210782;
        double r1210784 = r1210775 * r1210783;
        double r1210785 = r1210772 - r1210784;
        double r1210786 = r1210765 * r1210785;
        double r1210787 = exp(r1210786);
        double r1210788 = r1210764 * r1210787;
        double r1210789 = r1210763 + r1210788;
        double r1210790 = r1210763 / r1210789;
        return r1210790;
}

double f(double x, double y, double z, double t, double a, double b, double c) {
        double r1210791 = x;
        double r1210792 = y;
        double r1210793 = 2.0;
        double r1210794 = c;
        double r1210795 = b;
        double r1210796 = r1210794 - r1210795;
        double r1210797 = 5.0;
        double r1210798 = 6.0;
        double r1210799 = r1210797 / r1210798;
        double r1210800 = a;
        double r1210801 = r1210799 + r1210800;
        double r1210802 = t;
        double r1210803 = 3.0;
        double r1210804 = r1210802 * r1210803;
        double r1210805 = r1210793 / r1210804;
        double r1210806 = r1210801 - r1210805;
        double r1210807 = z;
        double r1210808 = cbrt(r1210802);
        double r1210809 = r1210808 * r1210808;
        double r1210810 = r1210807 / r1210809;
        double r1210811 = r1210802 + r1210800;
        double r1210812 = sqrt(r1210811);
        double r1210813 = r1210812 / r1210808;
        double r1210814 = r1210810 * r1210813;
        double r1210815 = fma(r1210796, r1210806, r1210814);
        double r1210816 = r1210793 * r1210815;
        double r1210817 = exp(r1210816);
        double r1210818 = fma(r1210792, r1210817, r1210791);
        double r1210819 = r1210791 / r1210818;
        return r1210819;
}

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 4.1

    \[\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. Simplified2.8

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

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

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

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

Reproduce

herbie shell --seed 2019152 +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)))))))))))