Average Error: 35.1 → 30.6
Time: 49.8s
Precision: 64
\[\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\]
\[\begin{array}{l} \mathbf{if}\;t \le -1.901634490090810454171908285449517291238 \cdot 10^{205}:\\ \;\;\;\;\sqrt{\left(\left(U* - U\right) \cdot \left(2 \cdot \left(n \cdot U\right)\right)\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot n\right) + \left(2 \cdot n\right) \cdot \left(U \cdot \mathsf{fma}\left(-2, \frac{\ell}{\frac{Om}{\ell}}, t\right)\right)}\\ \mathbf{elif}\;t \le 2.657026617158325508432692360145670739344 \cdot 10^{105}:\\ \;\;\;\;\sqrt{\left(U \cdot \left(2 \cdot n\right)\right) \cdot \mathsf{fma}\left(U* - U, \left(\left(n \cdot {\left(\frac{1}{\sqrt[3]{Om} \cdot \sqrt[3]{Om}}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{\sqrt[3]{Om}}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}, \mathsf{fma}\left(\ell \cdot \frac{\ell}{Om}, -2, t\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{2 \cdot \left(n \cdot U\right)} \cdot \sqrt{\mathsf{fma}\left({\left(\frac{\ell}{Om}\right)}^{2} \cdot \left(U* - U\right), n, \mathsf{fma}\left(-2, \frac{\ell}{\frac{Om}{\ell}}, t\right)\right)}\\ \end{array}\]
\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}
\begin{array}{l}
\mathbf{if}\;t \le -1.901634490090810454171908285449517291238 \cdot 10^{205}:\\
\;\;\;\;\sqrt{\left(\left(U* - U\right) \cdot \left(2 \cdot \left(n \cdot U\right)\right)\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot n\right) + \left(2 \cdot n\right) \cdot \left(U \cdot \mathsf{fma}\left(-2, \frac{\ell}{\frac{Om}{\ell}}, t\right)\right)}\\

\mathbf{elif}\;t \le 2.657026617158325508432692360145670739344 \cdot 10^{105}:\\
\;\;\;\;\sqrt{\left(U \cdot \left(2 \cdot n\right)\right) \cdot \mathsf{fma}\left(U* - U, \left(\left(n \cdot {\left(\frac{1}{\sqrt[3]{Om} \cdot \sqrt[3]{Om}}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{\sqrt[3]{Om}}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}, \mathsf{fma}\left(\ell \cdot \frac{\ell}{Om}, -2, t\right)\right)}\\

\mathbf{else}:\\
\;\;\;\;\sqrt{2 \cdot \left(n \cdot U\right)} \cdot \sqrt{\mathsf{fma}\left({\left(\frac{\ell}{Om}\right)}^{2} \cdot \left(U* - U\right), n, \mathsf{fma}\left(-2, \frac{\ell}{\frac{Om}{\ell}}, t\right)\right)}\\

\end{array}
double f(double n, double U, double t, double l, double Om, double U_) {
        double r122405 = 2.0;
        double r122406 = n;
        double r122407 = r122405 * r122406;
        double r122408 = U;
        double r122409 = r122407 * r122408;
        double r122410 = t;
        double r122411 = l;
        double r122412 = r122411 * r122411;
        double r122413 = Om;
        double r122414 = r122412 / r122413;
        double r122415 = r122405 * r122414;
        double r122416 = r122410 - r122415;
        double r122417 = r122411 / r122413;
        double r122418 = pow(r122417, r122405);
        double r122419 = r122406 * r122418;
        double r122420 = U_;
        double r122421 = r122408 - r122420;
        double r122422 = r122419 * r122421;
        double r122423 = r122416 - r122422;
        double r122424 = r122409 * r122423;
        double r122425 = sqrt(r122424);
        return r122425;
}

double f(double n, double U, double t, double l, double Om, double U_) {
        double r122426 = t;
        double r122427 = -1.9016344900908105e+205;
        bool r122428 = r122426 <= r122427;
        double r122429 = U_;
        double r122430 = U;
        double r122431 = r122429 - r122430;
        double r122432 = 2.0;
        double r122433 = n;
        double r122434 = r122433 * r122430;
        double r122435 = r122432 * r122434;
        double r122436 = r122431 * r122435;
        double r122437 = l;
        double r122438 = Om;
        double r122439 = r122437 / r122438;
        double r122440 = pow(r122439, r122432);
        double r122441 = r122440 * r122433;
        double r122442 = r122436 * r122441;
        double r122443 = r122432 * r122433;
        double r122444 = -r122432;
        double r122445 = r122438 / r122437;
        double r122446 = r122437 / r122445;
        double r122447 = fma(r122444, r122446, r122426);
        double r122448 = r122430 * r122447;
        double r122449 = r122443 * r122448;
        double r122450 = r122442 + r122449;
        double r122451 = sqrt(r122450);
        double r122452 = 2.6570266171583255e+105;
        bool r122453 = r122426 <= r122452;
        double r122454 = r122430 * r122443;
        double r122455 = 1.0;
        double r122456 = cbrt(r122438);
        double r122457 = r122456 * r122456;
        double r122458 = r122455 / r122457;
        double r122459 = 2.0;
        double r122460 = r122432 / r122459;
        double r122461 = pow(r122458, r122460);
        double r122462 = r122433 * r122461;
        double r122463 = r122437 / r122456;
        double r122464 = pow(r122463, r122460);
        double r122465 = r122462 * r122464;
        double r122466 = pow(r122439, r122460);
        double r122467 = r122465 * r122466;
        double r122468 = r122437 * r122439;
        double r122469 = fma(r122468, r122444, r122426);
        double r122470 = fma(r122431, r122467, r122469);
        double r122471 = r122454 * r122470;
        double r122472 = sqrt(r122471);
        double r122473 = sqrt(r122435);
        double r122474 = r122440 * r122431;
        double r122475 = fma(r122474, r122433, r122447);
        double r122476 = sqrt(r122475);
        double r122477 = r122473 * r122476;
        double r122478 = r122453 ? r122472 : r122477;
        double r122479 = r122428 ? r122451 : r122478;
        return r122479;
}

Error

Bits error versus n

Bits error versus U

Bits error versus t

Bits error versus l

Bits error versus Om

Bits error versus U*

Derivation

  1. Split input into 3 regimes
  2. if t < -1.9016344900908105e+205

    1. Initial program 41.0

      \[\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\]
    2. Simplified39.1

      \[\leadsto \color{blue}{\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \mathsf{fma}\left(U* - U, n \cdot {\left(\frac{\ell}{Om}\right)}^{2}, \mathsf{fma}\left(\frac{\ell}{Om} \cdot \ell, -2, t\right)\right)}}\]
    3. Using strategy rm
    4. Applied fma-udef39.1

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \color{blue}{\left(\left(U* - U\right) \cdot \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) + \mathsf{fma}\left(\frac{\ell}{Om} \cdot \ell, -2, t\right)\right)}}\]
    5. Applied distribute-lft-in39.1

      \[\leadsto \sqrt{\color{blue}{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(U* - U\right) \cdot \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right)\right) + \left(\left(2 \cdot n\right) \cdot U\right) \cdot \mathsf{fma}\left(\frac{\ell}{Om} \cdot \ell, -2, t\right)}}\]
    6. Simplified39.3

      \[\leadsto \sqrt{\color{blue}{\left(\left(2 \cdot \left(n \cdot U\right)\right) \cdot \left(U* - U\right)\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot n\right)} + \left(\left(2 \cdot n\right) \cdot U\right) \cdot \mathsf{fma}\left(\frac{\ell}{Om} \cdot \ell, -2, t\right)}\]
    7. Simplified39.5

      \[\leadsto \sqrt{\left(\left(2 \cdot \left(n \cdot U\right)\right) \cdot \left(U* - U\right)\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot n\right) + \color{blue}{\left(\mathsf{fma}\left(-2, \frac{\ell}{\frac{Om}{\ell}}, t\right) \cdot U\right) \cdot \left(n \cdot 2\right)}}\]

    if -1.9016344900908105e+205 < t < 2.6570266171583255e+105

    1. Initial program 34.2

      \[\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\]
    2. Simplified31.4

      \[\leadsto \color{blue}{\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \mathsf{fma}\left(U* - U, n \cdot {\left(\frac{\ell}{Om}\right)}^{2}, \mathsf{fma}\left(\frac{\ell}{Om} \cdot \ell, -2, t\right)\right)}}\]
    3. Using strategy rm
    4. Applied sqr-pow31.4

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \mathsf{fma}\left(U* - U, n \cdot \color{blue}{\left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right)}, \mathsf{fma}\left(\frac{\ell}{Om} \cdot \ell, -2, t\right)\right)}\]
    5. Applied associate-*r*30.4

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \mathsf{fma}\left(U* - U, \color{blue}{\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}, \mathsf{fma}\left(\frac{\ell}{Om} \cdot \ell, -2, t\right)\right)}\]
    6. Using strategy rm
    7. Applied add-cube-cbrt30.4

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \mathsf{fma}\left(U* - U, \left(n \cdot {\left(\frac{\ell}{\color{blue}{\left(\sqrt[3]{Om} \cdot \sqrt[3]{Om}\right) \cdot \sqrt[3]{Om}}}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}, \mathsf{fma}\left(\frac{\ell}{Om} \cdot \ell, -2, t\right)\right)}\]
    8. Applied *-un-lft-identity30.4

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \mathsf{fma}\left(U* - U, \left(n \cdot {\left(\frac{\color{blue}{1 \cdot \ell}}{\left(\sqrt[3]{Om} \cdot \sqrt[3]{Om}\right) \cdot \sqrt[3]{Om}}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}, \mathsf{fma}\left(\frac{\ell}{Om} \cdot \ell, -2, t\right)\right)}\]
    9. Applied times-frac30.4

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \mathsf{fma}\left(U* - U, \left(n \cdot {\color{blue}{\left(\frac{1}{\sqrt[3]{Om} \cdot \sqrt[3]{Om}} \cdot \frac{\ell}{\sqrt[3]{Om}}\right)}}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}, \mathsf{fma}\left(\frac{\ell}{Om} \cdot \ell, -2, t\right)\right)}\]
    10. Applied unpow-prod-down30.4

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \mathsf{fma}\left(U* - U, \left(n \cdot \color{blue}{\left({\left(\frac{1}{\sqrt[3]{Om} \cdot \sqrt[3]{Om}}\right)}^{\left(\frac{2}{2}\right)} \cdot {\left(\frac{\ell}{\sqrt[3]{Om}}\right)}^{\left(\frac{2}{2}\right)}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}, \mathsf{fma}\left(\frac{\ell}{Om} \cdot \ell, -2, t\right)\right)}\]
    11. Applied associate-*r*30.8

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \mathsf{fma}\left(U* - U, \color{blue}{\left(\left(n \cdot {\left(\frac{1}{\sqrt[3]{Om} \cdot \sqrt[3]{Om}}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{\sqrt[3]{Om}}\right)}^{\left(\frac{2}{2}\right)}\right)} \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}, \mathsf{fma}\left(\frac{\ell}{Om} \cdot \ell, -2, t\right)\right)}\]

    if 2.6570266171583255e+105 < t

    1. Initial program 36.1

      \[\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\]
    2. Simplified33.5

      \[\leadsto \color{blue}{\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \mathsf{fma}\left(U* - U, n \cdot {\left(\frac{\ell}{Om}\right)}^{2}, \mathsf{fma}\left(\frac{\ell}{Om} \cdot \ell, -2, t\right)\right)}}\]
    3. Using strategy rm
    4. Applied sqrt-prod24.4

      \[\leadsto \color{blue}{\sqrt{\left(2 \cdot n\right) \cdot U} \cdot \sqrt{\mathsf{fma}\left(U* - U, n \cdot {\left(\frac{\ell}{Om}\right)}^{2}, \mathsf{fma}\left(\frac{\ell}{Om} \cdot \ell, -2, t\right)\right)}}\]
    5. Simplified24.4

      \[\leadsto \color{blue}{\sqrt{2 \cdot \left(n \cdot U\right)}} \cdot \sqrt{\mathsf{fma}\left(U* - U, n \cdot {\left(\frac{\ell}{Om}\right)}^{2}, \mathsf{fma}\left(\frac{\ell}{Om} \cdot \ell, -2, t\right)\right)}\]
    6. Simplified25.1

      \[\leadsto \sqrt{2 \cdot \left(n \cdot U\right)} \cdot \color{blue}{\sqrt{\mathsf{fma}\left(\left(U* - U\right) \cdot {\left(\frac{\ell}{Om}\right)}^{2}, n, \mathsf{fma}\left(-2, \frac{\ell}{\frac{Om}{\ell}}, t\right)\right)}}\]
  3. Recombined 3 regimes into one program.
  4. Final simplification30.6

    \[\leadsto \begin{array}{l} \mathbf{if}\;t \le -1.901634490090810454171908285449517291238 \cdot 10^{205}:\\ \;\;\;\;\sqrt{\left(\left(U* - U\right) \cdot \left(2 \cdot \left(n \cdot U\right)\right)\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot n\right) + \left(2 \cdot n\right) \cdot \left(U \cdot \mathsf{fma}\left(-2, \frac{\ell}{\frac{Om}{\ell}}, t\right)\right)}\\ \mathbf{elif}\;t \le 2.657026617158325508432692360145670739344 \cdot 10^{105}:\\ \;\;\;\;\sqrt{\left(U \cdot \left(2 \cdot n\right)\right) \cdot \mathsf{fma}\left(U* - U, \left(\left(n \cdot {\left(\frac{1}{\sqrt[3]{Om} \cdot \sqrt[3]{Om}}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{\sqrt[3]{Om}}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}, \mathsf{fma}\left(\ell \cdot \frac{\ell}{Om}, -2, t\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{2 \cdot \left(n \cdot U\right)} \cdot \sqrt{\mathsf{fma}\left({\left(\frac{\ell}{Om}\right)}^{2} \cdot \left(U* - U\right), n, \mathsf{fma}\left(-2, \frac{\ell}{\frac{Om}{\ell}}, t\right)\right)}\\ \end{array}\]

Reproduce

herbie shell --seed 2019196 +o rules:numerics
(FPCore (n U t l Om U*)
  :name "Toniolo and Linder, Equation (13)"
  (sqrt (* (* (* 2.0 n) U) (- (- t (* 2.0 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2.0)) (- U U*))))))