Average Error: 10.1 → 10.1
Time: 34.5s
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{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)
\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;
}

Error

Bits error versus t

Bits error versus l

Bits error versus Om

Bits error versus Omc

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 10.1

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

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

Reproduce

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)))))))