\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{1 - \frac{Om}{Omc} \cdot \frac{Om}{Omc}}{\sqrt{1 + \left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot 2}}}{\sqrt{1 + \left(\frac{t}{\ell} \cdot \frac{t}{\ell}\right) \cdot 2}}}\right)double f(double t, double l, double Om, double Omc) {
double r10489187 = 1.0;
double r10489188 = Om;
double r10489189 = Omc;
double r10489190 = r10489188 / r10489189;
double r10489191 = 2.0;
double r10489192 = pow(r10489190, r10489191);
double r10489193 = r10489187 - r10489192;
double r10489194 = t;
double r10489195 = l;
double r10489196 = r10489194 / r10489195;
double r10489197 = pow(r10489196, r10489191);
double r10489198 = r10489191 * r10489197;
double r10489199 = r10489187 + r10489198;
double r10489200 = r10489193 / r10489199;
double r10489201 = sqrt(r10489200);
double r10489202 = asin(r10489201);
return r10489202;
}
double f(double t, double l, double Om, double Omc) {
double r10489203 = 1.0;
double r10489204 = Om;
double r10489205 = Omc;
double r10489206 = r10489204 / r10489205;
double r10489207 = r10489206 * r10489206;
double r10489208 = r10489203 - r10489207;
double r10489209 = t;
double r10489210 = l;
double r10489211 = r10489209 / r10489210;
double r10489212 = r10489211 * r10489211;
double r10489213 = 2.0;
double r10489214 = r10489212 * r10489213;
double r10489215 = r10489203 + r10489214;
double r10489216 = sqrt(r10489215);
double r10489217 = r10489208 / r10489216;
double r10489218 = r10489217 / r10489216;
double r10489219 = sqrt(r10489218);
double r10489220 = asin(r10489219);
return r10489220;
}



Bits error versus t



Bits error versus l



Bits error versus Om



Bits error versus Omc
Results
Initial program 10.5
Simplified10.5
rmApplied add-sqr-sqrt10.5
Applied associate-/r*10.5
Final simplification10.5
herbie shell --seed 2019112
(FPCore (t l Om Omc)
:name "Toniolo and Linder, Equation (2)"
(asin (sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))))