\sin^{-1} \left(\sqrt{\frac{1 - {\left(\frac{Om}{Omc}\right)}^{2}}{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}\right)\sin^{-1} \left(\sqrt{\frac{1 - {\left(\frac{Om}{Omc}\right)}^{2}}{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}\right)double f(double t, double l, double Om, double Omc) {
double r61748 = 1.0;
double r61749 = Om;
double r61750 = Omc;
double r61751 = r61749 / r61750;
double r61752 = 2.0;
double r61753 = pow(r61751, r61752);
double r61754 = r61748 - r61753;
double r61755 = t;
double r61756 = l;
double r61757 = r61755 / r61756;
double r61758 = pow(r61757, r61752);
double r61759 = r61752 * r61758;
double r61760 = r61748 + r61759;
double r61761 = r61754 / r61760;
double r61762 = sqrt(r61761);
double r61763 = asin(r61762);
return r61763;
}
double f(double t, double l, double Om, double Omc) {
double r61764 = 1.0;
double r61765 = Om;
double r61766 = Omc;
double r61767 = r61765 / r61766;
double r61768 = 2.0;
double r61769 = pow(r61767, r61768);
double r61770 = r61764 - r61769;
double r61771 = t;
double r61772 = l;
double r61773 = r61771 / r61772;
double r61774 = pow(r61773, r61768);
double r61775 = r61768 * r61774;
double r61776 = r61764 + r61775;
double r61777 = r61770 / r61776;
double r61778 = sqrt(r61777);
double r61779 = asin(r61778);
return r61779;
}



Bits error versus t



Bits error versus l



Bits error versus Om



Bits error versus Omc
Results
Initial program 10.1
Final simplification10.1
herbie shell --seed 2019308
(FPCore (t l Om Omc)
:name "Toniolo and Linder, Equation (2)"
:precision binary64
(asin (sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))))