\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(\sqrt{\frac{\frac{2}{r}}{r}} \cdot \sqrt{\frac{\frac{2}{r}}{r}} - \left(\left(r \cdot \left(\frac{3 - 2 \cdot v}{1 - v} \cdot 0.125\right)\right) \cdot w\right) \cdot \left(r \cdot w\right)\right) + \left(3 - 4.5\right)double f(double v, double w, double r) {
double r1081739 = 3.0;
double r1081740 = 2.0;
double r1081741 = r;
double r1081742 = r1081741 * r1081741;
double r1081743 = r1081740 / r1081742;
double r1081744 = r1081739 + r1081743;
double r1081745 = 0.125;
double r1081746 = v;
double r1081747 = r1081740 * r1081746;
double r1081748 = r1081739 - r1081747;
double r1081749 = r1081745 * r1081748;
double r1081750 = w;
double r1081751 = r1081750 * r1081750;
double r1081752 = r1081751 * r1081741;
double r1081753 = r1081752 * r1081741;
double r1081754 = r1081749 * r1081753;
double r1081755 = 1.0;
double r1081756 = r1081755 - r1081746;
double r1081757 = r1081754 / r1081756;
double r1081758 = r1081744 - r1081757;
double r1081759 = 4.5;
double r1081760 = r1081758 - r1081759;
return r1081760;
}
double f(double v, double w, double r) {
double r1081761 = 2.0;
double r1081762 = r;
double r1081763 = r1081761 / r1081762;
double r1081764 = r1081763 / r1081762;
double r1081765 = sqrt(r1081764);
double r1081766 = r1081765 * r1081765;
double r1081767 = 3.0;
double r1081768 = v;
double r1081769 = r1081761 * r1081768;
double r1081770 = r1081767 - r1081769;
double r1081771 = 1.0;
double r1081772 = r1081771 - r1081768;
double r1081773 = r1081770 / r1081772;
double r1081774 = 0.125;
double r1081775 = r1081773 * r1081774;
double r1081776 = r1081762 * r1081775;
double r1081777 = w;
double r1081778 = r1081776 * r1081777;
double r1081779 = r1081762 * r1081777;
double r1081780 = r1081778 * r1081779;
double r1081781 = r1081766 - r1081780;
double r1081782 = 4.5;
double r1081783 = r1081767 - r1081782;
double r1081784 = r1081781 + r1081783;
return r1081784;
}



Bits error versus v



Bits error versus w



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