\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{1}{\frac{\sqrt{\frac{1 - v}{0.125 \cdot \left(3 - 2 \cdot v\right)}}}{\sqrt[3]{{\left(\left|w \cdot r\right|\right)}^{2}} \cdot \sqrt[3]{{\left(\left|w \cdot r\right|\right)}^{2}}}} \cdot \frac{1}{\frac{\sqrt{\frac{1 - v}{0.125 \cdot \left(3 - 2 \cdot v\right)}}}{\sqrt[3]{{\left(\left|w \cdot r\right|\right)}^{2}}}}\right) - 4.5double f(double v, double w, double r) {
double r29164 = 3.0;
double r29165 = 2.0;
double r29166 = r;
double r29167 = r29166 * r29166;
double r29168 = r29165 / r29167;
double r29169 = r29164 + r29168;
double r29170 = 0.125;
double r29171 = v;
double r29172 = r29165 * r29171;
double r29173 = r29164 - r29172;
double r29174 = r29170 * r29173;
double r29175 = w;
double r29176 = r29175 * r29175;
double r29177 = r29176 * r29166;
double r29178 = r29177 * r29166;
double r29179 = r29174 * r29178;
double r29180 = 1.0;
double r29181 = r29180 - r29171;
double r29182 = r29179 / r29181;
double r29183 = r29169 - r29182;
double r29184 = 4.5;
double r29185 = r29183 - r29184;
return r29185;
}
double f(double v, double w, double r) {
double r29186 = 3.0;
double r29187 = 2.0;
double r29188 = r;
double r29189 = r29188 * r29188;
double r29190 = r29187 / r29189;
double r29191 = r29186 + r29190;
double r29192 = 1.0;
double r29193 = 1.0;
double r29194 = v;
double r29195 = r29193 - r29194;
double r29196 = 0.125;
double r29197 = r29187 * r29194;
double r29198 = r29186 - r29197;
double r29199 = r29196 * r29198;
double r29200 = r29195 / r29199;
double r29201 = sqrt(r29200);
double r29202 = w;
double r29203 = r29202 * r29188;
double r29204 = fabs(r29203);
double r29205 = 2.0;
double r29206 = pow(r29204, r29205);
double r29207 = cbrt(r29206);
double r29208 = r29207 * r29207;
double r29209 = r29201 / r29208;
double r29210 = r29192 / r29209;
double r29211 = r29201 / r29207;
double r29212 = r29192 / r29211;
double r29213 = r29210 * r29212;
double r29214 = r29191 - r29213;
double r29215 = 4.5;
double r29216 = r29214 - r29215;
return r29216;
}



Bits error versus v



Bits error versus w



Bits error versus r
Results
Initial program 12.7
rmApplied add-sqr-sqrt12.7
Simplified12.7
Simplified6.6
rmApplied clear-num6.6
Simplified0.4
rmApplied add-cube-cbrt0.6
Applied add-sqr-sqrt0.6
Applied times-frac0.6
Applied *-un-lft-identity0.6
Applied times-frac0.6
Final simplification0.6
herbie shell --seed 2020001
(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))