\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(\left|\left|w \cdot r\right|\right| \cdot \frac{0.125 \cdot \left(3 - 2 \cdot v\right)}{1 - v}\right) \cdot \sqrt{{\left(\left|w \cdot r\right|\right)}^{2}}\right) - 4.5double f(double v, double w, double r) {
double r39467 = 3.0;
double r39468 = 2.0;
double r39469 = r;
double r39470 = r39469 * r39469;
double r39471 = r39468 / r39470;
double r39472 = r39467 + r39471;
double r39473 = 0.125;
double r39474 = v;
double r39475 = r39468 * r39474;
double r39476 = r39467 - r39475;
double r39477 = r39473 * r39476;
double r39478 = w;
double r39479 = r39478 * r39478;
double r39480 = r39479 * r39469;
double r39481 = r39480 * r39469;
double r39482 = r39477 * r39481;
double r39483 = 1.0;
double r39484 = r39483 - r39474;
double r39485 = r39482 / r39484;
double r39486 = r39472 - r39485;
double r39487 = 4.5;
double r39488 = r39486 - r39487;
return r39488;
}
double f(double v, double w, double r) {
double r39489 = 3.0;
double r39490 = 2.0;
double r39491 = r;
double r39492 = r39491 * r39491;
double r39493 = r39490 / r39492;
double r39494 = r39489 + r39493;
double r39495 = w;
double r39496 = r39495 * r39491;
double r39497 = fabs(r39496);
double r39498 = fabs(r39497);
double r39499 = 0.125;
double r39500 = v;
double r39501 = r39490 * r39500;
double r39502 = r39489 - r39501;
double r39503 = r39499 * r39502;
double r39504 = 1.0;
double r39505 = r39504 - r39500;
double r39506 = r39503 / r39505;
double r39507 = r39498 * r39506;
double r39508 = 2.0;
double r39509 = pow(r39497, r39508);
double r39510 = sqrt(r39509);
double r39511 = r39507 * r39510;
double r39512 = r39494 - r39511;
double r39513 = 4.5;
double r39514 = r39512 - r39513;
return r39514;
}



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.8
rmApplied add-sqr-sqrt6.8
Simplified6.8
Simplified0.5
rmApplied associate-/r/0.4
Applied sqrt-prod0.4
Simplified0.4
rmApplied associate-/r/0.4
Applied sqrt-prod0.5
Applied associate-*r*0.5
Simplified0.4
Final simplification0.4
herbie shell --seed 2019323
(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))