\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}{\mathsf{fma}\left(y, {\left(e^{2}\right)}^{\left(\mathsf{fma}\left(\frac{\frac{2}{t}}{3} - \left(a + \frac{5}{6}\right), b - c, \frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}}\right)\right)}, x\right)}double f(double x, double y, double z, double t, double a, double b, double c) {
double r85248 = x;
double r85249 = y;
double r85250 = 2.0;
double r85251 = z;
double r85252 = t;
double r85253 = a;
double r85254 = r85252 + r85253;
double r85255 = sqrt(r85254);
double r85256 = r85251 * r85255;
double r85257 = r85256 / r85252;
double r85258 = b;
double r85259 = c;
double r85260 = r85258 - r85259;
double r85261 = 5.0;
double r85262 = 6.0;
double r85263 = r85261 / r85262;
double r85264 = r85253 + r85263;
double r85265 = 3.0;
double r85266 = r85252 * r85265;
double r85267 = r85250 / r85266;
double r85268 = r85264 - r85267;
double r85269 = r85260 * r85268;
double r85270 = r85257 - r85269;
double r85271 = r85250 * r85270;
double r85272 = exp(r85271);
double r85273 = r85249 * r85272;
double r85274 = r85248 + r85273;
double r85275 = r85248 / r85274;
return r85275;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r85276 = x;
double r85277 = y;
double r85278 = 2.0;
double r85279 = exp(r85278);
double r85280 = t;
double r85281 = r85278 / r85280;
double r85282 = 3.0;
double r85283 = r85281 / r85282;
double r85284 = a;
double r85285 = 5.0;
double r85286 = 6.0;
double r85287 = r85285 / r85286;
double r85288 = r85284 + r85287;
double r85289 = r85283 - r85288;
double r85290 = b;
double r85291 = c;
double r85292 = r85290 - r85291;
double r85293 = z;
double r85294 = cbrt(r85280);
double r85295 = r85294 * r85294;
double r85296 = r85293 / r85295;
double r85297 = r85280 + r85284;
double r85298 = sqrt(r85297);
double r85299 = r85298 / r85294;
double r85300 = r85296 * r85299;
double r85301 = fma(r85289, r85292, r85300);
double r85302 = pow(r85279, r85301);
double r85303 = fma(r85277, r85302, r85276);
double r85304 = r85276 / r85303;
return r85304;
}



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
Initial program 3.7
Simplified2.4
rmApplied add-cube-cbrt2.4
Applied times-frac1.3
Final simplification1.3
herbie shell --seed 2019303 +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)))))))))))