\left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(1 - m\right)\left(\left(m - \frac{m \cdot m}{v}\right) + \frac{{m}^{3}}{v}\right) + \left(\frac{\left(1 - m\right) \cdot m}{v} - 1\right)double f(double m, double v) {
double r780925 = m;
double r780926 = 1.0;
double r780927 = r780926 - r780925;
double r780928 = r780925 * r780927;
double r780929 = v;
double r780930 = r780928 / r780929;
double r780931 = r780930 - r780926;
double r780932 = r780931 * r780927;
return r780932;
}
double f(double m, double v) {
double r780933 = m;
double r780934 = r780933 * r780933;
double r780935 = v;
double r780936 = r780934 / r780935;
double r780937 = r780933 - r780936;
double r780938 = 3.0;
double r780939 = pow(r780933, r780938);
double r780940 = r780939 / r780935;
double r780941 = r780937 + r780940;
double r780942 = 1.0;
double r780943 = r780942 - r780933;
double r780944 = r780943 * r780933;
double r780945 = r780944 / r780935;
double r780946 = r780945 - r780942;
double r780947 = r780941 + r780946;
return r780947;
}



Bits error versus m



Bits error versus v
Results
Initial program 0.1
rmApplied sub-neg0.1
Applied distribute-rgt-in0.1
Taylor expanded around 0 0.1
Simplified0.1
rmApplied pow10.1
Applied pow10.1
Applied pow10.1
Applied pow-prod-up0.1
Applied pow-prod-up0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019152 +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)))