\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{\frac{Om}{Omc} + 1}{\sqrt{\mathsf{fma}\left(2, \frac{t}{\ell} \cdot \frac{t}{\ell}, 1\right)}} \cdot \frac{1 - \frac{Om}{Omc}}{\sqrt{\mathsf{fma}\left(2, \frac{t}{\ell} \cdot \frac{t}{\ell}, 1\right)}}}\right)double f(double t, double l, double Om, double Omc) {
double r2430417 = 1.0;
double r2430418 = Om;
double r2430419 = Omc;
double r2430420 = r2430418 / r2430419;
double r2430421 = 2.0;
double r2430422 = pow(r2430420, r2430421);
double r2430423 = r2430417 - r2430422;
double r2430424 = t;
double r2430425 = l;
double r2430426 = r2430424 / r2430425;
double r2430427 = pow(r2430426, r2430421);
double r2430428 = r2430421 * r2430427;
double r2430429 = r2430417 + r2430428;
double r2430430 = r2430423 / r2430429;
double r2430431 = sqrt(r2430430);
double r2430432 = asin(r2430431);
return r2430432;
}
double f(double t, double l, double Om, double Omc) {
double r2430433 = Om;
double r2430434 = Omc;
double r2430435 = r2430433 / r2430434;
double r2430436 = 1.0;
double r2430437 = r2430435 + r2430436;
double r2430438 = 2.0;
double r2430439 = t;
double r2430440 = l;
double r2430441 = r2430439 / r2430440;
double r2430442 = r2430441 * r2430441;
double r2430443 = fma(r2430438, r2430442, r2430436);
double r2430444 = sqrt(r2430443);
double r2430445 = r2430437 / r2430444;
double r2430446 = r2430436 - r2430435;
double r2430447 = r2430446 / r2430444;
double r2430448 = r2430445 * r2430447;
double r2430449 = sqrt(r2430448);
double r2430450 = asin(r2430449);
return r2430450;
}



Bits error versus t



Bits error versus l



Bits error versus Om



Bits error versus Omc
Initial program 10.4
Simplified10.4
rmApplied add-sqr-sqrt10.4
Applied *-un-lft-identity10.4
Applied difference-of-squares10.5
Applied times-frac10.5
Final simplification10.5
herbie shell --seed 2019163 +o rules:numerics
(FPCore (t l Om Omc)
:name "Toniolo and Linder, Equation (2)"
(asin (sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))))