\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 r72163 = 1.0;
double r72164 = Om;
double r72165 = Omc;
double r72166 = r72164 / r72165;
double r72167 = 2.0;
double r72168 = pow(r72166, r72167);
double r72169 = r72163 - r72168;
double r72170 = t;
double r72171 = l;
double r72172 = r72170 / r72171;
double r72173 = pow(r72172, r72167);
double r72174 = r72167 * r72173;
double r72175 = r72163 + r72174;
double r72176 = r72169 / r72175;
double r72177 = sqrt(r72176);
double r72178 = asin(r72177);
return r72178;
}
double f(double t, double l, double Om, double Omc) {
double r72179 = 1.0;
double r72180 = Om;
double r72181 = Omc;
double r72182 = r72180 / r72181;
double r72183 = 2.0;
double r72184 = pow(r72182, r72183);
double r72185 = r72179 - r72184;
double r72186 = t;
double r72187 = l;
double r72188 = r72186 / r72187;
double r72189 = pow(r72188, r72183);
double r72190 = r72183 * r72189;
double r72191 = r72179 + r72190;
double r72192 = r72185 / r72191;
double r72193 = sqrt(r72192);
double r72194 = asin(r72193);
return r72194;
}



Bits error versus t



Bits error versus l



Bits error versus Om



Bits error versus Omc
Results
Initial program 9.9
Final simplification9.9
herbie shell --seed 2020024 +o rules:numerics
(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)))))))