\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) - \left(0.125 \cdot \left|w \cdot r\right|\right) \cdot \frac{3 - 2 \cdot v}{\frac{1 - v}{\left|w \cdot r\right|}}\right) - 4.5double f(double v, double w, double r) {
double r15444 = 3.0;
double r15445 = 2.0;
double r15446 = r;
double r15447 = r15446 * r15446;
double r15448 = r15445 / r15447;
double r15449 = r15444 + r15448;
double r15450 = 0.125;
double r15451 = v;
double r15452 = r15445 * r15451;
double r15453 = r15444 - r15452;
double r15454 = r15450 * r15453;
double r15455 = w;
double r15456 = r15455 * r15455;
double r15457 = r15456 * r15446;
double r15458 = r15457 * r15446;
double r15459 = r15454 * r15458;
double r15460 = 1.0;
double r15461 = r15460 - r15451;
double r15462 = r15459 / r15461;
double r15463 = r15449 - r15462;
double r15464 = 4.5;
double r15465 = r15463 - r15464;
return r15465;
}
double f(double v, double w, double r) {
double r15466 = 3.0;
double r15467 = 2.0;
double r15468 = r;
double r15469 = r15468 * r15468;
double r15470 = r15467 / r15469;
double r15471 = r15466 + r15470;
double r15472 = 0.125;
double r15473 = w;
double r15474 = r15473 * r15468;
double r15475 = fabs(r15474);
double r15476 = r15472 * r15475;
double r15477 = v;
double r15478 = r15467 * r15477;
double r15479 = r15466 - r15478;
double r15480 = 1.0;
double r15481 = r15480 - r15477;
double r15482 = r15481 / r15475;
double r15483 = r15479 / r15482;
double r15484 = r15476 * r15483;
double r15485 = r15471 - r15484;
double r15486 = 4.5;
double r15487 = r15485 - r15486;
return r15487;
}



Bits error versus v



Bits error versus w



Bits error versus r
Results
Initial program 12.6
rmApplied associate-/l*8.4
rmApplied associate-*l*2.4
rmApplied add-sqr-sqrt2.5
Simplified2.5
Simplified0.4
rmApplied *-un-lft-identity0.4
Applied times-frac0.4
Applied times-frac0.4
Simplified0.4
Final simplification0.4
herbie shell --seed 2020045
(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))