\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 r54256 = 1.0;
double r54257 = Om;
double r54258 = Omc;
double r54259 = r54257 / r54258;
double r54260 = 2.0;
double r54261 = pow(r54259, r54260);
double r54262 = r54256 - r54261;
double r54263 = t;
double r54264 = l;
double r54265 = r54263 / r54264;
double r54266 = pow(r54265, r54260);
double r54267 = r54260 * r54266;
double r54268 = r54256 + r54267;
double r54269 = r54262 / r54268;
double r54270 = sqrt(r54269);
double r54271 = asin(r54270);
return r54271;
}
double f(double t, double l, double Om, double Omc) {
double r54272 = 1.0;
double r54273 = Om;
double r54274 = Omc;
double r54275 = r54273 / r54274;
double r54276 = 2.0;
double r54277 = pow(r54275, r54276);
double r54278 = r54272 - r54277;
double r54279 = t;
double r54280 = l;
double r54281 = r54279 / r54280;
double r54282 = pow(r54281, r54276);
double r54283 = r54276 * r54282;
double r54284 = r54272 + r54283;
double r54285 = r54278 / r54284;
double r54286 = sqrt(r54285);
double r54287 = asin(r54286);
return r54287;
}



Bits error versus t



Bits error versus l



Bits error versus Om



Bits error versus Omc
Results
Initial program 10.3
Final simplification10.3
herbie shell --seed 2019326
(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)))))))