\left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(1 - m\right)\left(\frac{\left(1 - m \cdot m\right) \cdot m}{\mathsf{fma}\left(v, m, v\right)} - 1\right) + \left(-m\right) \cdot \left(\frac{m}{\frac{v}{1 - m}} - 1\right)double f(double m, double v) {
double r952919 = m;
double r952920 = 1.0;
double r952921 = r952920 - r952919;
double r952922 = r952919 * r952921;
double r952923 = v;
double r952924 = r952922 / r952923;
double r952925 = r952924 - r952920;
double r952926 = r952925 * r952921;
return r952926;
}
double f(double m, double v) {
double r952927 = 1.0;
double r952928 = m;
double r952929 = r952928 * r952928;
double r952930 = r952927 - r952929;
double r952931 = r952930 * r952928;
double r952932 = v;
double r952933 = fma(r952932, r952928, r952932);
double r952934 = r952931 / r952933;
double r952935 = r952934 - r952927;
double r952936 = -r952928;
double r952937 = r952927 - r952928;
double r952938 = r952932 / r952937;
double r952939 = r952928 / r952938;
double r952940 = r952939 - r952927;
double r952941 = r952936 * r952940;
double r952942 = r952935 + r952941;
return r952942;
}



Bits error versus m



Bits error versus v
Initial program 0.1
rmApplied sub-neg0.1
Applied distribute-lft-in0.1
Simplified0.1
rmApplied associate-/l*0.1
rmApplied flip--0.1
Applied associate-*r/0.1
Applied associate-/l/0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019162 +o rules:numerics
(FPCore (m v)
:name "b parameter of renormalized beta distribution"
:pre (and (< 0 m) (< 0 v) (< v 0.25))
(* (- (/ (* m (- 1 m)) v) 1) (- 1 m)))