\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(\frac{\left(\sqrt[3]{\sqrt{2}} \cdot \sqrt[3]{\frac{2}{r}}\right) \cdot \sqrt[3]{\frac{\sqrt{2}}{r}}}{\frac{r}{\sqrt[3]{\frac{2}{r}}}} + \left(3 - 4.5\right)\right) - \frac{r \cdot w}{\frac{\sqrt{\frac{1 - v}{0.125 \cdot \left(3 - 2 \cdot v\right)}}}{w} \cdot \frac{\sqrt{\frac{1 - v}{0.125 \cdot \left(3 - 2 \cdot v\right)}}}{r}}double f(double v, double w, double r) {
double r1803438 = 3.0;
double r1803439 = 2.0;
double r1803440 = r;
double r1803441 = r1803440 * r1803440;
double r1803442 = r1803439 / r1803441;
double r1803443 = r1803438 + r1803442;
double r1803444 = 0.125;
double r1803445 = v;
double r1803446 = r1803439 * r1803445;
double r1803447 = r1803438 - r1803446;
double r1803448 = r1803444 * r1803447;
double r1803449 = w;
double r1803450 = r1803449 * r1803449;
double r1803451 = r1803450 * r1803440;
double r1803452 = r1803451 * r1803440;
double r1803453 = r1803448 * r1803452;
double r1803454 = 1.0;
double r1803455 = r1803454 - r1803445;
double r1803456 = r1803453 / r1803455;
double r1803457 = r1803443 - r1803456;
double r1803458 = 4.5;
double r1803459 = r1803457 - r1803458;
return r1803459;
}
double f(double v, double w, double r) {
double r1803460 = 2.0;
double r1803461 = sqrt(r1803460);
double r1803462 = cbrt(r1803461);
double r1803463 = r;
double r1803464 = r1803460 / r1803463;
double r1803465 = cbrt(r1803464);
double r1803466 = r1803462 * r1803465;
double r1803467 = r1803461 / r1803463;
double r1803468 = cbrt(r1803467);
double r1803469 = r1803466 * r1803468;
double r1803470 = r1803463 / r1803465;
double r1803471 = r1803469 / r1803470;
double r1803472 = 3.0;
double r1803473 = 4.5;
double r1803474 = r1803472 - r1803473;
double r1803475 = r1803471 + r1803474;
double r1803476 = w;
double r1803477 = r1803463 * r1803476;
double r1803478 = 1.0;
double r1803479 = v;
double r1803480 = r1803478 - r1803479;
double r1803481 = 0.125;
double r1803482 = r1803460 * r1803479;
double r1803483 = r1803472 - r1803482;
double r1803484 = r1803481 * r1803483;
double r1803485 = r1803480 / r1803484;
double r1803486 = sqrt(r1803485);
double r1803487 = r1803486 / r1803476;
double r1803488 = r1803486 / r1803463;
double r1803489 = r1803487 * r1803488;
double r1803490 = r1803477 / r1803489;
double r1803491 = r1803475 - r1803490;
return r1803491;
}



Bits error versus v



Bits error versus w



Bits error versus r
Results
Initial program 11.8
Simplified0.3
rmApplied add-sqr-sqrt0.4
Applied times-frac0.3
rmApplied add-cube-cbrt0.7
Applied associate-/l*0.7
rmApplied *-un-lft-identity0.7
Applied add-sqr-sqrt0.7
Applied times-frac0.7
Applied cbrt-prod0.7
Applied associate-*r*0.7
Simplified0.7
Final simplification0.7
herbie shell --seed 2019146
(FPCore (v w r)
:name "Rosa's TurbineBenchmark"
(- (- (+ 3 (/ 2 (* r r))) (/ (* (* 0.125 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))) 4.5))