\left(\left(3 + \frac{2}{r \cdot r}\right) - \frac{\left(0.125 \cdot \left(3 - 2 \cdot v\right)\right) \cdot \left(\left(\left(w \cdot w\right) \cdot r\right) \cdot r\right)}{1 - v}\right) - 4.5\left(\left(3 + \frac{2}{r \cdot r}\right) - \frac{1}{\frac{\frac{1 - v}{0.125 \cdot \left(3 - 2 \cdot v\right)}}{{\left(\left|w \cdot r\right|\right)}^{2}}}\right) - 4.5double f(double v, double w, double r) {
double r16358 = 3.0;
double r16359 = 2.0;
double r16360 = r;
double r16361 = r16360 * r16360;
double r16362 = r16359 / r16361;
double r16363 = r16358 + r16362;
double r16364 = 0.125;
double r16365 = v;
double r16366 = r16359 * r16365;
double r16367 = r16358 - r16366;
double r16368 = r16364 * r16367;
double r16369 = w;
double r16370 = r16369 * r16369;
double r16371 = r16370 * r16360;
double r16372 = r16371 * r16360;
double r16373 = r16368 * r16372;
double r16374 = 1.0;
double r16375 = r16374 - r16365;
double r16376 = r16373 / r16375;
double r16377 = r16363 - r16376;
double r16378 = 4.5;
double r16379 = r16377 - r16378;
return r16379;
}
double f(double v, double w, double r) {
double r16380 = 3.0;
double r16381 = 2.0;
double r16382 = r;
double r16383 = r16382 * r16382;
double r16384 = r16381 / r16383;
double r16385 = r16380 + r16384;
double r16386 = 1.0;
double r16387 = 1.0;
double r16388 = v;
double r16389 = r16387 - r16388;
double r16390 = 0.125;
double r16391 = r16381 * r16388;
double r16392 = r16380 - r16391;
double r16393 = r16390 * r16392;
double r16394 = r16389 / r16393;
double r16395 = w;
double r16396 = r16395 * r16382;
double r16397 = fabs(r16396);
double r16398 = 2.0;
double r16399 = pow(r16397, r16398);
double r16400 = r16394 / r16399;
double r16401 = r16386 / r16400;
double r16402 = r16385 - r16401;
double r16403 = 4.5;
double r16404 = r16402 - r16403;
return r16404;
}



Bits error versus v



Bits error versus w



Bits error versus r
Results
Initial program 12.8
rmApplied add-sqr-sqrt12.8
Simplified12.8
Simplified6.7
rmApplied clear-num6.7
Simplified0.4
Final simplification0.4
herbie shell --seed 2020062
(FPCore (v w r)
:name "Rosa's TurbineBenchmark"
:precision binary64
(- (- (+ 3 (/ 2 (* r r))) (/ (* (* 0.125 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))) 4.5))