Average Error: 10.5 → 10.5
Time: 25.0s
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 - \frac{Om}{Omc} \cdot \frac{Om}{Omc}}{1 + \frac{2}{\frac{\ell}{t} \cdot \frac{\ell}{t}}}}\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 - \frac{Om}{Omc} \cdot \frac{Om}{Omc}}{1 + \frac{2}{\frac{\ell}{t} \cdot \frac{\ell}{t}}}}\right)
double f(double t, double l, double Om, double Omc) {
        double r1179245 = 1.0;
        double r1179246 = Om;
        double r1179247 = Omc;
        double r1179248 = r1179246 / r1179247;
        double r1179249 = 2.0;
        double r1179250 = pow(r1179248, r1179249);
        double r1179251 = r1179245 - r1179250;
        double r1179252 = t;
        double r1179253 = l;
        double r1179254 = r1179252 / r1179253;
        double r1179255 = pow(r1179254, r1179249);
        double r1179256 = r1179249 * r1179255;
        double r1179257 = r1179245 + r1179256;
        double r1179258 = r1179251 / r1179257;
        double r1179259 = sqrt(r1179258);
        double r1179260 = asin(r1179259);
        return r1179260;
}

double f(double t, double l, double Om, double Omc) {
        double r1179261 = 1.0;
        double r1179262 = Om;
        double r1179263 = Omc;
        double r1179264 = r1179262 / r1179263;
        double r1179265 = r1179264 * r1179264;
        double r1179266 = r1179261 - r1179265;
        double r1179267 = 2.0;
        double r1179268 = l;
        double r1179269 = t;
        double r1179270 = r1179268 / r1179269;
        double r1179271 = r1179270 * r1179270;
        double r1179272 = r1179267 / r1179271;
        double r1179273 = r1179261 + r1179272;
        double r1179274 = r1179266 / r1179273;
        double r1179275 = sqrt(r1179274);
        double r1179276 = asin(r1179275);
        return r1179276;
}

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.5

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

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

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

Reproduce

herbie shell --seed 2019141 
(FPCore (t l Om Omc)
  :name "Toniolo and Linder, Equation (2)"
  (asin (sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))))