Average Error: 10.6 → 10.7
Time: 9.3s
Precision: 64
\[\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{\sqrt{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}} \cdot \frac{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}{\mathsf{fma}\left({\left(\frac{t}{\ell}\right)}^{2}, 2, 1\right)}}} \cdot \sqrt{\sqrt{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}} \cdot \frac{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}{\mathsf{fma}\left({\left(\frac{t}{\ell}\right)}^{2}, 2, 1\right)}}}\right)\]
\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{\sqrt{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}} \cdot \frac{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}{\mathsf{fma}\left({\left(\frac{t}{\ell}\right)}^{2}, 2, 1\right)}}} \cdot \sqrt{\sqrt{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}} \cdot \frac{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}{\mathsf{fma}\left({\left(\frac{t}{\ell}\right)}^{2}, 2, 1\right)}}}\right)
double f(double t, double l, double Om, double Omc) {
        double r68804 = 1.0;
        double r68805 = Om;
        double r68806 = Omc;
        double r68807 = r68805 / r68806;
        double r68808 = 2.0;
        double r68809 = pow(r68807, r68808);
        double r68810 = r68804 - r68809;
        double r68811 = t;
        double r68812 = l;
        double r68813 = r68811 / r68812;
        double r68814 = pow(r68813, r68808);
        double r68815 = r68808 * r68814;
        double r68816 = r68804 + r68815;
        double r68817 = r68810 / r68816;
        double r68818 = sqrt(r68817);
        double r68819 = asin(r68818);
        return r68819;
}

double f(double t, double l, double Om, double Omc) {
        double r68820 = 1.0;
        double r68821 = Om;
        double r68822 = Omc;
        double r68823 = r68821 / r68822;
        double r68824 = 2.0;
        double r68825 = pow(r68823, r68824);
        double r68826 = r68820 - r68825;
        double r68827 = sqrt(r68826);
        double r68828 = t;
        double r68829 = l;
        double r68830 = r68828 / r68829;
        double r68831 = pow(r68830, r68824);
        double r68832 = fma(r68831, r68824, r68820);
        double r68833 = r68827 / r68832;
        double r68834 = r68827 * r68833;
        double r68835 = sqrt(r68834);
        double r68836 = sqrt(r68835);
        double r68837 = r68836 * r68836;
        double r68838 = asin(r68837);
        return r68838;
}

Error

Bits error versus t

Bits error versus l

Bits error versus Om

Bits error versus Omc

Derivation

  1. Initial program 10.6

    \[\sin^{-1} \left(\sqrt{\frac{1 - {\left(\frac{Om}{Omc}\right)}^{2}}{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}\right)\]
  2. Using strategy rm
  3. Applied *-un-lft-identity10.6

    \[\leadsto \sin^{-1} \left(\sqrt{\frac{1 - {\left(\frac{Om}{Omc}\right)}^{2}}{\color{blue}{1 \cdot \left(1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}\right)}}}\right)\]
  4. Applied add-sqr-sqrt10.6

    \[\leadsto \sin^{-1} \left(\sqrt{\frac{\color{blue}{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}} \cdot \sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}}{1 \cdot \left(1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}\right)}}\right)\]
  5. Applied times-frac10.6

    \[\leadsto \sin^{-1} \left(\sqrt{\color{blue}{\frac{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}{1} \cdot \frac{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}}\right)\]
  6. Simplified10.6

    \[\leadsto \sin^{-1} \left(\sqrt{\color{blue}{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}}} \cdot \frac{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}\right)\]
  7. Simplified10.6

    \[\leadsto \sin^{-1} \left(\sqrt{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}} \cdot \color{blue}{\frac{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}{\mathsf{fma}\left({\left(\frac{t}{\ell}\right)}^{2}, 2, 1\right)}}}\right)\]
  8. Using strategy rm
  9. Applied add-sqr-sqrt10.7

    \[\leadsto \sin^{-1} \color{blue}{\left(\sqrt{\sqrt{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}} \cdot \frac{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}{\mathsf{fma}\left({\left(\frac{t}{\ell}\right)}^{2}, 2, 1\right)}}} \cdot \sqrt{\sqrt{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}} \cdot \frac{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}{\mathsf{fma}\left({\left(\frac{t}{\ell}\right)}^{2}, 2, 1\right)}}}\right)}\]
  10. Final simplification10.7

    \[\leadsto \sin^{-1} \left(\sqrt{\sqrt{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}} \cdot \frac{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}{\mathsf{fma}\left({\left(\frac{t}{\ell}\right)}^{2}, 2, 1\right)}}} \cdot \sqrt{\sqrt{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}} \cdot \frac{\sqrt{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}{\mathsf{fma}\left({\left(\frac{t}{\ell}\right)}^{2}, 2, 1\right)}}}\right)\]

Reproduce

herbie shell --seed 2020060 +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)))))))