\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 r16354 = 3.0;
double r16355 = 2.0;
double r16356 = r;
double r16357 = r16356 * r16356;
double r16358 = r16355 / r16357;
double r16359 = r16354 + r16358;
double r16360 = 0.125;
double r16361 = v;
double r16362 = r16355 * r16361;
double r16363 = r16354 - r16362;
double r16364 = r16360 * r16363;
double r16365 = w;
double r16366 = r16365 * r16365;
double r16367 = r16366 * r16356;
double r16368 = r16367 * r16356;
double r16369 = r16364 * r16368;
double r16370 = 1.0;
double r16371 = r16370 - r16361;
double r16372 = r16369 / r16371;
double r16373 = r16359 - r16372;
double r16374 = 4.5;
double r16375 = r16373 - r16374;
return r16375;
}
double f(double v, double w, double r) {
double r16376 = 3.0;
double r16377 = 2.0;
double r16378 = r;
double r16379 = r16378 * r16378;
double r16380 = r16377 / r16379;
double r16381 = r16376 + r16380;
double r16382 = 1.0;
double r16383 = 1.0;
double r16384 = v;
double r16385 = r16383 - r16384;
double r16386 = 0.125;
double r16387 = r16377 * r16384;
double r16388 = r16376 - r16387;
double r16389 = r16386 * r16388;
double r16390 = r16385 / r16389;
double r16391 = w;
double r16392 = r16391 * r16378;
double r16393 = fabs(r16392);
double r16394 = 2.0;
double r16395 = pow(r16393, r16394);
double r16396 = r16390 / r16395;
double r16397 = r16382 / r16396;
double r16398 = r16381 - r16397;
double r16399 = 4.5;
double r16400 = r16398 - r16399;
return r16400;
}



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