\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 - \frac{Om}{Omc} \cdot \frac{Om}{Omc}}{1 + \left(\frac{t}{\ell} \cdot \frac{t}{\ell} + \frac{t}{\ell} \cdot \frac{t}{\ell}\right)}}\right)double f(double t, double l, double Om, double Omc) {
double r2559318 = 1.0;
double r2559319 = Om;
double r2559320 = Omc;
double r2559321 = r2559319 / r2559320;
double r2559322 = 2.0;
double r2559323 = pow(r2559321, r2559322);
double r2559324 = r2559318 - r2559323;
double r2559325 = t;
double r2559326 = l;
double r2559327 = r2559325 / r2559326;
double r2559328 = pow(r2559327, r2559322);
double r2559329 = r2559322 * r2559328;
double r2559330 = r2559318 + r2559329;
double r2559331 = r2559324 / r2559330;
double r2559332 = sqrt(r2559331);
double r2559333 = asin(r2559332);
return r2559333;
}
double f(double t, double l, double Om, double Omc) {
double r2559334 = 1.0;
double r2559335 = Om;
double r2559336 = Omc;
double r2559337 = r2559335 / r2559336;
double r2559338 = r2559337 * r2559337;
double r2559339 = r2559334 - r2559338;
double r2559340 = t;
double r2559341 = l;
double r2559342 = r2559340 / r2559341;
double r2559343 = r2559342 * r2559342;
double r2559344 = r2559343 + r2559343;
double r2559345 = r2559334 + r2559344;
double r2559346 = r2559339 / r2559345;
double r2559347 = sqrt(r2559346);
double r2559348 = asin(r2559347);
return r2559348;
}



Bits error versus t



Bits error versus l



Bits error versus Om



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