\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{\frac{2}{r}}{r}\right) - \left(0.125 \cdot \left(3 - 2 \cdot v\right)\right) \cdot \frac{\left|w \cdot r\right|}{\frac{1 - v}{\left|w \cdot r\right|}}\right) - 4.5double f(double v, double w, double r) {
double r17358 = 3.0;
double r17359 = 2.0;
double r17360 = r;
double r17361 = r17360 * r17360;
double r17362 = r17359 / r17361;
double r17363 = r17358 + r17362;
double r17364 = 0.125;
double r17365 = v;
double r17366 = r17359 * r17365;
double r17367 = r17358 - r17366;
double r17368 = r17364 * r17367;
double r17369 = w;
double r17370 = r17369 * r17369;
double r17371 = r17370 * r17360;
double r17372 = r17371 * r17360;
double r17373 = r17368 * r17372;
double r17374 = 1.0;
double r17375 = r17374 - r17365;
double r17376 = r17373 / r17375;
double r17377 = r17363 - r17376;
double r17378 = 4.5;
double r17379 = r17377 - r17378;
return r17379;
}
double f(double v, double w, double r) {
double r17380 = 3.0;
double r17381 = 2.0;
double r17382 = r;
double r17383 = r17381 / r17382;
double r17384 = r17383 / r17382;
double r17385 = r17380 + r17384;
double r17386 = 0.125;
double r17387 = v;
double r17388 = r17381 * r17387;
double r17389 = r17380 - r17388;
double r17390 = r17386 * r17389;
double r17391 = w;
double r17392 = r17391 * r17382;
double r17393 = fabs(r17392);
double r17394 = 1.0;
double r17395 = r17394 - r17387;
double r17396 = r17395 / r17393;
double r17397 = r17393 / r17396;
double r17398 = r17390 * r17397;
double r17399 = r17385 - r17398;
double r17400 = 4.5;
double r17401 = r17399 - r17400;
return r17401;
}



Bits error versus v



Bits error versus w



Bits error versus r
Results
Initial program 13.2
rmApplied add-sqr-sqrt13.2
Simplified13.2
Simplified6.9
rmApplied *-un-lft-identity6.9
Applied times-frac0.4
Simplified0.4
Simplified0.4
rmApplied associate-/r*0.4
rmApplied unpow20.4
Applied associate-/l*0.4
Final simplification0.4
herbie shell --seed 2019362
(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))