\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 r58545 = 1.0;
double r58546 = Om;
double r58547 = Omc;
double r58548 = r58546 / r58547;
double r58549 = 2.0;
double r58550 = pow(r58548, r58549);
double r58551 = r58545 - r58550;
double r58552 = t;
double r58553 = l;
double r58554 = r58552 / r58553;
double r58555 = pow(r58554, r58549);
double r58556 = r58549 * r58555;
double r58557 = r58545 + r58556;
double r58558 = r58551 / r58557;
double r58559 = sqrt(r58558);
double r58560 = asin(r58559);
return r58560;
}
double f(double t, double l, double Om, double Omc) {
double r58561 = 1.0;
double r58562 = Om;
double r58563 = Omc;
double r58564 = r58562 / r58563;
double r58565 = 2.0;
double r58566 = pow(r58564, r58565);
double r58567 = r58561 - r58566;
double r58568 = t;
double r58569 = l;
double r58570 = r58568 / r58569;
double r58571 = pow(r58570, r58565);
double r58572 = r58565 * r58571;
double r58573 = r58561 + r58572;
double r58574 = r58567 / r58573;
double r58575 = sqrt(r58574);
double r58576 = asin(r58575);
return r58576;
}



Bits error versus t



Bits error versus l



Bits error versus Om



Bits error versus Omc
Results
Initial program 10.4
Final simplification10.4
herbie shell --seed 2020021
(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)))))))