\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|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 r17505 = 3.0;
double r17506 = 2.0;
double r17507 = r;
double r17508 = r17507 * r17507;
double r17509 = r17506 / r17508;
double r17510 = r17505 + r17509;
double r17511 = 0.125;
double r17512 = v;
double r17513 = r17506 * r17512;
double r17514 = r17505 - r17513;
double r17515 = r17511 * r17514;
double r17516 = w;
double r17517 = r17516 * r17516;
double r17518 = r17517 * r17507;
double r17519 = r17518 * r17507;
double r17520 = r17515 * r17519;
double r17521 = 1.0;
double r17522 = r17521 - r17512;
double r17523 = r17520 / r17522;
double r17524 = r17510 - r17523;
double r17525 = 4.5;
double r17526 = r17524 - r17525;
return r17526;
}
double f(double v, double w, double r) {
double r17527 = 3.0;
double r17528 = 2.0;
double r17529 = r;
double r17530 = r17528 / r17529;
double r17531 = r17530 / r17529;
double r17532 = r17527 + r17531;
double r17533 = 0.125;
double r17534 = w;
double r17535 = r17534 * r17529;
double r17536 = fabs(r17535);
double r17537 = r17533 * r17536;
double r17538 = v;
double r17539 = r17528 * r17538;
double r17540 = r17527 - r17539;
double r17541 = 1.0;
double r17542 = r17541 - r17538;
double r17543 = r17542 / r17536;
double r17544 = r17540 / r17543;
double r17545 = r17537 * r17544;
double r17546 = r17532 - r17545;
double r17547 = 4.5;
double r17548 = r17546 - r17547;
return r17548;
}



Bits error versus v



Bits error versus w



Bits error versus r
Results
Initial program 12.6
rmApplied add-sqr-sqrt12.7
Simplified12.6
Simplified6.4
rmApplied associate-/l*0.4
Simplified0.4
rmApplied associate-/r*0.4
rmApplied add-sqr-sqrt0.5
Applied unpow-prod-down0.5
Applied *-un-lft-identity0.5
Applied times-frac0.5
Applied times-frac0.5
Simplified0.4
Simplified0.3
Final simplification0.3
herbie shell --seed 2020024
(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))