\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}}{2 \cdot {\left(\frac{1}{\frac{\ell}{t}}\right)}^{2} + 1}}\right)double f(double t, double l, double Om, double Omc) {
double r54760 = 1.0;
double r54761 = Om;
double r54762 = Omc;
double r54763 = r54761 / r54762;
double r54764 = 2.0;
double r54765 = pow(r54763, r54764);
double r54766 = r54760 - r54765;
double r54767 = t;
double r54768 = l;
double r54769 = r54767 / r54768;
double r54770 = pow(r54769, r54764);
double r54771 = r54764 * r54770;
double r54772 = r54760 + r54771;
double r54773 = r54766 / r54772;
double r54774 = sqrt(r54773);
double r54775 = asin(r54774);
return r54775;
}
double f(double t, double l, double Om, double Omc) {
double r54776 = 1.0;
double r54777 = Om;
double r54778 = Omc;
double r54779 = r54777 / r54778;
double r54780 = 2.0;
double r54781 = pow(r54779, r54780);
double r54782 = r54776 - r54781;
double r54783 = 1.0;
double r54784 = l;
double r54785 = t;
double r54786 = r54784 / r54785;
double r54787 = r54783 / r54786;
double r54788 = pow(r54787, r54780);
double r54789 = r54780 * r54788;
double r54790 = r54789 + r54776;
double r54791 = r54782 / r54790;
double r54792 = sqrt(r54791);
double r54793 = asin(r54792);
return r54793;
}



Bits error versus t



Bits error versus l



Bits error versus Om



Bits error versus Omc
Results
Initial program 10.1
Taylor expanded around -inf 51.2
Simplified10.2
rmApplied *-un-lft-identity10.2
Applied *-un-lft-identity10.2
Applied times-frac10.2
Applied associate-/l*10.2
Simplified10.1
Final simplification10.1
herbie shell --seed 2019323
(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)))))))