\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 \log \left(e^{\frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{t + a}}{\sqrt[3]{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 r68682 = x;
double r68683 = y;
double r68684 = 2.0;
double r68685 = z;
double r68686 = t;
double r68687 = a;
double r68688 = r68686 + r68687;
double r68689 = sqrt(r68688);
double r68690 = r68685 * r68689;
double r68691 = r68690 / r68686;
double r68692 = b;
double r68693 = c;
double r68694 = r68692 - r68693;
double r68695 = 5.0;
double r68696 = 6.0;
double r68697 = r68695 / r68696;
double r68698 = r68687 + r68697;
double r68699 = 3.0;
double r68700 = r68686 * r68699;
double r68701 = r68684 / r68700;
double r68702 = r68698 - r68701;
double r68703 = r68694 * r68702;
double r68704 = r68691 - r68703;
double r68705 = r68684 * r68704;
double r68706 = exp(r68705);
double r68707 = r68683 * r68706;
double r68708 = r68682 + r68707;
double r68709 = r68682 / r68708;
return r68709;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r68710 = x;
double r68711 = y;
double r68712 = 2.0;
double r68713 = z;
double r68714 = t;
double r68715 = cbrt(r68714);
double r68716 = r68715 * r68715;
double r68717 = r68713 / r68716;
double r68718 = a;
double r68719 = r68714 + r68718;
double r68720 = sqrt(r68719);
double r68721 = r68720 / r68715;
double r68722 = r68717 * r68721;
double r68723 = b;
double r68724 = c;
double r68725 = r68723 - r68724;
double r68726 = 5.0;
double r68727 = 6.0;
double r68728 = r68726 / r68727;
double r68729 = r68718 + r68728;
double r68730 = 3.0;
double r68731 = r68714 * r68730;
double r68732 = r68712 / r68731;
double r68733 = r68729 - r68732;
double r68734 = r68725 * r68733;
double r68735 = r68722 - r68734;
double r68736 = exp(r68735);
double r68737 = log(r68736);
double r68738 = r68712 * r68737;
double r68739 = exp(r68738);
double r68740 = r68711 * r68739;
double r68741 = r68710 + r68740;
double r68742 = r68710 / r68741;
return r68742;
}



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
Results
Initial program 3.8
rmApplied add-cube-cbrt3.8
Applied times-frac2.7
rmApplied add-log-exp7.1
Applied add-log-exp17.1
Applied diff-log17.1
Simplified2.7
Final simplification2.7
herbie shell --seed 2019350
(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)))))))))))