\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 r3896192 = 1.0;
double r3896193 = Om;
double r3896194 = Omc;
double r3896195 = r3896193 / r3896194;
double r3896196 = 2.0;
double r3896197 = pow(r3896195, r3896196);
double r3896198 = r3896192 - r3896197;
double r3896199 = t;
double r3896200 = l;
double r3896201 = r3896199 / r3896200;
double r3896202 = pow(r3896201, r3896196);
double r3896203 = r3896196 * r3896202;
double r3896204 = r3896192 + r3896203;
double r3896205 = r3896198 / r3896204;
double r3896206 = sqrt(r3896205);
double r3896207 = asin(r3896206);
return r3896207;
}
double f(double t, double l, double Om, double Omc) {
double r3896208 = 1.0;
double r3896209 = Om;
double r3896210 = Omc;
double r3896211 = r3896209 / r3896210;
double r3896212 = 2.0;
double r3896213 = pow(r3896211, r3896212);
double r3896214 = r3896208 - r3896213;
double r3896215 = t;
double r3896216 = l;
double r3896217 = r3896215 / r3896216;
double r3896218 = pow(r3896217, r3896212);
double r3896219 = r3896212 * r3896218;
double r3896220 = r3896208 + r3896219;
double r3896221 = r3896214 / r3896220;
double r3896222 = sqrt(r3896221);
double r3896223 = asin(r3896222);
return r3896223;
}



Bits error versus t



Bits error versus l



Bits error versus Om



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