\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) - \frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{\sqrt{\frac{\frac{1 - v}{0.125 \cdot \left(3 - 2 \cdot v\right)}}{{\left(\left|w \cdot r\right|\right)}^{2}}}} \cdot \frac{\sqrt[3]{1}}{\sqrt{\frac{\frac{1 - v}{0.125 \cdot \left(3 - 2 \cdot v\right)}}{{\left(\left|w \cdot r\right|\right)}^{2}}}}\right) - 4.5double f(double v, double w, double r) {
double r27453 = 3.0;
double r27454 = 2.0;
double r27455 = r;
double r27456 = r27455 * r27455;
double r27457 = r27454 / r27456;
double r27458 = r27453 + r27457;
double r27459 = 0.125;
double r27460 = v;
double r27461 = r27454 * r27460;
double r27462 = r27453 - r27461;
double r27463 = r27459 * r27462;
double r27464 = w;
double r27465 = r27464 * r27464;
double r27466 = r27465 * r27455;
double r27467 = r27466 * r27455;
double r27468 = r27463 * r27467;
double r27469 = 1.0;
double r27470 = r27469 - r27460;
double r27471 = r27468 / r27470;
double r27472 = r27458 - r27471;
double r27473 = 4.5;
double r27474 = r27472 - r27473;
return r27474;
}
double f(double v, double w, double r) {
double r27475 = 3.0;
double r27476 = 2.0;
double r27477 = r;
double r27478 = r27477 * r27477;
double r27479 = r27476 / r27478;
double r27480 = r27475 + r27479;
double r27481 = 1.0;
double r27482 = cbrt(r27481);
double r27483 = r27482 * r27482;
double r27484 = 1.0;
double r27485 = v;
double r27486 = r27484 - r27485;
double r27487 = 0.125;
double r27488 = r27476 * r27485;
double r27489 = r27475 - r27488;
double r27490 = r27487 * r27489;
double r27491 = r27486 / r27490;
double r27492 = w;
double r27493 = r27492 * r27477;
double r27494 = fabs(r27493);
double r27495 = 2.0;
double r27496 = pow(r27494, r27495);
double r27497 = r27491 / r27496;
double r27498 = sqrt(r27497);
double r27499 = r27483 / r27498;
double r27500 = r27482 / r27498;
double r27501 = r27499 * r27500;
double r27502 = r27480 - r27501;
double r27503 = 4.5;
double r27504 = r27502 - r27503;
return r27504;
}



Bits error versus v



Bits error versus w



Bits error versus r
Results
Initial program 12.9
rmApplied add-sqr-sqrt13.0
Simplified12.9
Simplified6.6
rmApplied clear-num6.7
Simplified0.4
rmApplied add-sqr-sqrt0.4
Applied add-cube-cbrt0.4
Applied times-frac0.4
Final simplification0.4
herbie shell --seed 2020064
(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))