\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 - \log \left(e^{{\left(\frac{Om}{Omc}\right)}^{2}}\right)}{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}\right)double f(double t, double l, double Om, double Omc) {
double r67525 = 1.0;
double r67526 = Om;
double r67527 = Omc;
double r67528 = r67526 / r67527;
double r67529 = 2.0;
double r67530 = pow(r67528, r67529);
double r67531 = r67525 - r67530;
double r67532 = t;
double r67533 = l;
double r67534 = r67532 / r67533;
double r67535 = pow(r67534, r67529);
double r67536 = r67529 * r67535;
double r67537 = r67525 + r67536;
double r67538 = r67531 / r67537;
double r67539 = sqrt(r67538);
double r67540 = asin(r67539);
return r67540;
}
double f(double t, double l, double Om, double Omc) {
double r67541 = 1.0;
double r67542 = Om;
double r67543 = Omc;
double r67544 = r67542 / r67543;
double r67545 = 2.0;
double r67546 = pow(r67544, r67545);
double r67547 = exp(r67546);
double r67548 = log(r67547);
double r67549 = r67541 - r67548;
double r67550 = t;
double r67551 = l;
double r67552 = r67550 / r67551;
double r67553 = pow(r67552, r67545);
double r67554 = r67545 * r67553;
double r67555 = r67541 + r67554;
double r67556 = r67549 / r67555;
double r67557 = sqrt(r67556);
double r67558 = asin(r67557);
return r67558;
}



Bits error versus t



Bits error versus l



Bits error versus Om



Bits error versus Omc
Results
Initial program 10.0
rmApplied add-log-exp10.0
Final simplification10.0
herbie shell --seed 2020046
(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)))))))