\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{\sqrt{1} + {\left(\frac{Om}{Omc}\right)}^{\left(\frac{2}{2}\right)}}{\sqrt{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}} \cdot \frac{\sqrt{1} - {\left(\frac{Om}{Omc}\right)}^{\left(\frac{2}{2}\right)}}{\sqrt{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}}\right)double f(double t, double l, double Om, double Omc) {
double r54639 = 1.0;
double r54640 = Om;
double r54641 = Omc;
double r54642 = r54640 / r54641;
double r54643 = 2.0;
double r54644 = pow(r54642, r54643);
double r54645 = r54639 - r54644;
double r54646 = t;
double r54647 = l;
double r54648 = r54646 / r54647;
double r54649 = pow(r54648, r54643);
double r54650 = r54643 * r54649;
double r54651 = r54639 + r54650;
double r54652 = r54645 / r54651;
double r54653 = sqrt(r54652);
double r54654 = asin(r54653);
return r54654;
}
double f(double t, double l, double Om, double Omc) {
double r54655 = 1.0;
double r54656 = sqrt(r54655);
double r54657 = Om;
double r54658 = Omc;
double r54659 = r54657 / r54658;
double r54660 = 2.0;
double r54661 = 2.0;
double r54662 = r54660 / r54661;
double r54663 = pow(r54659, r54662);
double r54664 = r54656 + r54663;
double r54665 = t;
double r54666 = l;
double r54667 = r54665 / r54666;
double r54668 = pow(r54667, r54660);
double r54669 = r54660 * r54668;
double r54670 = r54655 + r54669;
double r54671 = sqrt(r54670);
double r54672 = r54664 / r54671;
double r54673 = r54656 - r54663;
double r54674 = r54673 / r54671;
double r54675 = r54672 * r54674;
double r54676 = sqrt(r54675);
double r54677 = asin(r54676);
return r54677;
}



Bits error versus t



Bits error versus l



Bits error versus Om



Bits error versus Omc
Results
Initial program 10.3
rmApplied add-sqr-sqrt10.4
Applied sqr-pow10.4
Applied add-sqr-sqrt10.4
Applied difference-of-squares10.5
Applied times-frac10.5
Final simplification10.5
herbie shell --seed 2019303
(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)))))))