\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{\frac{2}{r}}{r} + \left(3 - 4.5\right)\right) - \sqrt{\frac{\left(w \cdot r\right) \cdot \left(w \cdot r\right)}{\frac{1 - v}{\left(3 - v \cdot 2\right) \cdot 0.125}}} \cdot \sqrt{\frac{\left(w \cdot r\right) \cdot \left(w \cdot r\right)}{\frac{1 - v}{\left(3 - v \cdot 2\right) \cdot 0.125}}}double f(double v, double w, double r) {
double r866390 = 3.0;
double r866391 = 2.0;
double r866392 = r;
double r866393 = r866392 * r866392;
double r866394 = r866391 / r866393;
double r866395 = r866390 + r866394;
double r866396 = 0.125;
double r866397 = v;
double r866398 = r866391 * r866397;
double r866399 = r866390 - r866398;
double r866400 = r866396 * r866399;
double r866401 = w;
double r866402 = r866401 * r866401;
double r866403 = r866402 * r866392;
double r866404 = r866403 * r866392;
double r866405 = r866400 * r866404;
double r866406 = 1.0;
double r866407 = r866406 - r866397;
double r866408 = r866405 / r866407;
double r866409 = r866395 - r866408;
double r866410 = 4.5;
double r866411 = r866409 - r866410;
return r866411;
}
double f(double v, double w, double r) {
double r866412 = 2.0;
double r866413 = r;
double r866414 = r866412 / r866413;
double r866415 = r866414 / r866413;
double r866416 = 3.0;
double r866417 = 4.5;
double r866418 = r866416 - r866417;
double r866419 = r866415 + r866418;
double r866420 = w;
double r866421 = r866420 * r866413;
double r866422 = r866421 * r866421;
double r866423 = 1.0;
double r866424 = v;
double r866425 = r866423 - r866424;
double r866426 = r866424 * r866412;
double r866427 = r866416 - r866426;
double r866428 = 0.125;
double r866429 = r866427 * r866428;
double r866430 = r866425 / r866429;
double r866431 = r866422 / r866430;
double r866432 = sqrt(r866431);
double r866433 = r866432 * r866432;
double r866434 = r866419 - r866433;
return r866434;
}



Bits error versus v



Bits error versus w



Bits error versus r
Results
Initial program 11.7
Simplified5.9
rmApplied associate-/l*0.3
rmApplied associate-/r*0.3
rmApplied add-sqr-sqrt0.4
Final simplification0.4
herbie shell --seed 2019153
(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))