Average Error: 10.3 → 10.3
Time: 22.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{\frac{\sqrt[3]{1 - {\left(\frac{Om}{Omc}\right)}^{2}} \cdot \sqrt[3]{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}{\sqrt{\mathsf{fma}\left(2, {\left(\frac{t}{\ell}\right)}^{2}, 1\right)}} \cdot \frac{\sqrt[3]{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}{\sqrt{\mathsf{fma}\left(2, {\left(\frac{t}{\ell}\right)}^{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{\frac{\sqrt[3]{1 - {\left(\frac{Om}{Omc}\right)}^{2}} \cdot \sqrt[3]{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}{\sqrt{\mathsf{fma}\left(2, {\left(\frac{t}{\ell}\right)}^{2}, 1\right)}} \cdot \frac{\sqrt[3]{1 - {\left(\frac{Om}{Omc}\right)}^{2}}}{\sqrt{\mathsf{fma}\left(2, {\left(\frac{t}{\ell}\right)}^{2}, 1\right)}}}\right)
double f(double t, double l, double Om, double Omc) {
        double r64436 = 1.0;
        double r64437 = Om;
        double r64438 = Omc;
        double r64439 = r64437 / r64438;
        double r64440 = 2.0;
        double r64441 = pow(r64439, r64440);
        double r64442 = r64436 - r64441;
        double r64443 = t;
        double r64444 = l;
        double r64445 = r64443 / r64444;
        double r64446 = pow(r64445, r64440);
        double r64447 = r64440 * r64446;
        double r64448 = r64436 + r64447;
        double r64449 = r64442 / r64448;
        double r64450 = sqrt(r64449);
        double r64451 = asin(r64450);
        return r64451;
}

double f(double t, double l, double Om, double Omc) {
        double r64452 = 1.0;
        double r64453 = Om;
        double r64454 = Omc;
        double r64455 = r64453 / r64454;
        double r64456 = 2.0;
        double r64457 = pow(r64455, r64456);
        double r64458 = r64452 - r64457;
        double r64459 = cbrt(r64458);
        double r64460 = r64459 * r64459;
        double r64461 = t;
        double r64462 = l;
        double r64463 = r64461 / r64462;
        double r64464 = pow(r64463, r64456);
        double r64465 = fma(r64456, r64464, r64452);
        double r64466 = sqrt(r64465);
        double r64467 = r64460 / r64466;
        double r64468 = r64459 / r64466;
        double r64469 = r64467 * r64468;
        double r64470 = sqrt(r64469);
        double r64471 = asin(r64470);
        return r64471;
}

Error

Bits error versus t

Bits error versus l

Bits error versus Om

Bits error versus Omc

Derivation

  1. Initial program 10.3

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

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

    \[\leadsto \sin^{-1} \left(\sqrt{\frac{1 - {\left(\frac{Om}{Omc}\right)}^{2}}{\color{blue}{\sqrt{\mathsf{fma}\left(2, {\left(\frac{t}{\ell}\right)}^{2}, 1\right)} \cdot \sqrt{\mathsf{fma}\left(2, {\left(\frac{t}{\ell}\right)}^{2}, 1\right)}}}}\right)\]
  5. Applied add-cube-cbrt10.3

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

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

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

Reproduce

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