Average Error: 33.1 → 26.6
Time: 40.5s
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}\;Om \le 3.3996094788145963 \cdot 10^{-131}:\\ \;\;\;\;{\left(\left(\left(U \cdot 2\right) \cdot n\right) \cdot t + \left(n \cdot \left(\left(U \cdot -2\right) \cdot \frac{\ell}{Om}\right)\right) \cdot \mathsf{fma}\left(\ell, 2, \left(U - U*\right) \cdot \left(\frac{\ell}{Om} \cdot n\right)\right)\right)}^{\frac{1}{2}}\\ \mathbf{elif}\;Om \le 3.0637303742447407 \cdot 10^{+78}:\\ \;\;\;\;\sqrt{\left(\left(U \cdot 2\right) \cdot \left(t - \mathsf{fma}\left(\ell, 2, \left(U - U*\right) \cdot \left(\frac{\ell}{Om} \cdot n\right)\right) \cdot \frac{\ell}{Om}\right)\right) \cdot n}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{\left(-\mathsf{fma}\left(\ell, 2, \left(U - U*\right) \cdot \left(\frac{\ell}{Om} \cdot n\right)\right)\right) \cdot \left(\sqrt[3]{\frac{\ell}{Om} \cdot \left(\left(U \cdot 2\right) \cdot n\right)} \cdot \left(\sqrt[3]{\frac{\ell}{Om} \cdot \left(\left(U \cdot 2\right) \cdot n\right)} \cdot \sqrt[3]{\frac{\ell}{Om} \cdot \left(\left(U \cdot 2\right) \cdot n\right)}\right)\right) + \left(\left(U \cdot 2\right) \cdot n\right) \cdot t}\\ \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}\;Om \le 3.3996094788145963 \cdot 10^{-131}:\\
\;\;\;\;{\left(\left(\left(U \cdot 2\right) \cdot n\right) \cdot t + \left(n \cdot \left(\left(U \cdot -2\right) \cdot \frac{\ell}{Om}\right)\right) \cdot \mathsf{fma}\left(\ell, 2, \left(U - U*\right) \cdot \left(\frac{\ell}{Om} \cdot n\right)\right)\right)}^{\frac{1}{2}}\\

\mathbf{elif}\;Om \le 3.0637303742447407 \cdot 10^{+78}:\\
\;\;\;\;\sqrt{\left(\left(U \cdot 2\right) \cdot \left(t - \mathsf{fma}\left(\ell, 2, \left(U - U*\right) \cdot \left(\frac{\ell}{Om} \cdot n\right)\right) \cdot \frac{\ell}{Om}\right)\right) \cdot n}\\

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

\end{array}
double f(double n, double U, double t, double l, double Om, double U_) {
        double r1544351 = 2.0;
        double r1544352 = n;
        double r1544353 = r1544351 * r1544352;
        double r1544354 = U;
        double r1544355 = r1544353 * r1544354;
        double r1544356 = t;
        double r1544357 = l;
        double r1544358 = r1544357 * r1544357;
        double r1544359 = Om;
        double r1544360 = r1544358 / r1544359;
        double r1544361 = r1544351 * r1544360;
        double r1544362 = r1544356 - r1544361;
        double r1544363 = r1544357 / r1544359;
        double r1544364 = pow(r1544363, r1544351);
        double r1544365 = r1544352 * r1544364;
        double r1544366 = U_;
        double r1544367 = r1544354 - r1544366;
        double r1544368 = r1544365 * r1544367;
        double r1544369 = r1544362 - r1544368;
        double r1544370 = r1544355 * r1544369;
        double r1544371 = sqrt(r1544370);
        return r1544371;
}

double f(double n, double U, double t, double l, double Om, double U_) {
        double r1544372 = Om;
        double r1544373 = 3.3996094788145963e-131;
        bool r1544374 = r1544372 <= r1544373;
        double r1544375 = U;
        double r1544376 = 2.0;
        double r1544377 = r1544375 * r1544376;
        double r1544378 = n;
        double r1544379 = r1544377 * r1544378;
        double r1544380 = t;
        double r1544381 = r1544379 * r1544380;
        double r1544382 = -2.0;
        double r1544383 = r1544375 * r1544382;
        double r1544384 = l;
        double r1544385 = r1544384 / r1544372;
        double r1544386 = r1544383 * r1544385;
        double r1544387 = r1544378 * r1544386;
        double r1544388 = U_;
        double r1544389 = r1544375 - r1544388;
        double r1544390 = r1544385 * r1544378;
        double r1544391 = r1544389 * r1544390;
        double r1544392 = fma(r1544384, r1544376, r1544391);
        double r1544393 = r1544387 * r1544392;
        double r1544394 = r1544381 + r1544393;
        double r1544395 = 0.5;
        double r1544396 = pow(r1544394, r1544395);
        double r1544397 = 3.0637303742447407e+78;
        bool r1544398 = r1544372 <= r1544397;
        double r1544399 = r1544392 * r1544385;
        double r1544400 = r1544380 - r1544399;
        double r1544401 = r1544377 * r1544400;
        double r1544402 = r1544401 * r1544378;
        double r1544403 = sqrt(r1544402);
        double r1544404 = -r1544392;
        double r1544405 = r1544385 * r1544379;
        double r1544406 = cbrt(r1544405);
        double r1544407 = r1544406 * r1544406;
        double r1544408 = r1544406 * r1544407;
        double r1544409 = r1544404 * r1544408;
        double r1544410 = r1544409 + r1544381;
        double r1544411 = sqrt(r1544410);
        double r1544412 = r1544398 ? r1544403 : r1544411;
        double r1544413 = r1544374 ? r1544396 : r1544412;
        return r1544413;
}

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 Om < 3.3996094788145963e-131

    1. Initial program 34.8

      \[\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. Simplified32.9

      \[\leadsto \color{blue}{\sqrt{\left(n \cdot \left(U \cdot 2\right)\right) \cdot \left(t - \frac{\ell}{Om} \cdot \left(\left(\left(U - U*\right) \cdot n\right) \cdot \frac{\ell}{Om} + 2 \cdot \ell\right)\right)}}\]
    3. Using strategy rm
    4. Applied sub-neg32.9

      \[\leadsto \sqrt{\left(n \cdot \left(U \cdot 2\right)\right) \cdot \color{blue}{\left(t + \left(-\frac{\ell}{Om} \cdot \left(\left(\left(U - U*\right) \cdot n\right) \cdot \frac{\ell}{Om} + 2 \cdot \ell\right)\right)\right)}}\]
    5. Applied distribute-rgt-in32.9

      \[\leadsto \sqrt{\color{blue}{t \cdot \left(n \cdot \left(U \cdot 2\right)\right) + \left(-\frac{\ell}{Om} \cdot \left(\left(\left(U - U*\right) \cdot n\right) \cdot \frac{\ell}{Om} + 2 \cdot \ell\right)\right) \cdot \left(n \cdot \left(U \cdot 2\right)\right)}}\]
    6. Simplified28.6

      \[\leadsto \sqrt{t \cdot \left(n \cdot \left(U \cdot 2\right)\right) + \color{blue}{\left(-\left(\left(n \cdot \left(U \cdot 2\right)\right) \cdot \frac{\ell}{Om}\right) \cdot \mathsf{fma}\left(\ell, 2, \left(U - U*\right) \cdot \left(n \cdot \frac{\ell}{Om}\right)\right)\right)}}\]
    7. Using strategy rm
    8. Applied associate-*l*27.1

      \[\leadsto \sqrt{t \cdot \left(n \cdot \left(U \cdot 2\right)\right) + \left(-\color{blue}{\left(n \cdot \left(\left(U \cdot 2\right) \cdot \frac{\ell}{Om}\right)\right)} \cdot \mathsf{fma}\left(\ell, 2, \left(U - U*\right) \cdot \left(n \cdot \frac{\ell}{Om}\right)\right)\right)}\]
    9. Using strategy rm
    10. Applied pow1/227.1

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

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

    if 3.3996094788145963e-131 < Om < 3.0637303742447407e+78

    1. Initial program 32.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. Simplified32.6

      \[\leadsto \color{blue}{\sqrt{\left(n \cdot \left(U \cdot 2\right)\right) \cdot \left(t - \frac{\ell}{Om} \cdot \left(\left(\left(U - U*\right) \cdot n\right) \cdot \frac{\ell}{Om} + 2 \cdot \ell\right)\right)}}\]
    3. Using strategy rm
    4. Applied associate-*l*32.0

      \[\leadsto \sqrt{\color{blue}{n \cdot \left(\left(U \cdot 2\right) \cdot \left(t - \frac{\ell}{Om} \cdot \left(\left(\left(U - U*\right) \cdot n\right) \cdot \frac{\ell}{Om} + 2 \cdot \ell\right)\right)\right)}}\]
    5. Simplified29.8

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

    if 3.0637303742447407e+78 < Om

    1. Initial program 29.6

      \[\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. Simplified27.2

      \[\leadsto \color{blue}{\sqrt{\left(n \cdot \left(U \cdot 2\right)\right) \cdot \left(t - \frac{\ell}{Om} \cdot \left(\left(\left(U - U*\right) \cdot n\right) \cdot \frac{\ell}{Om} + 2 \cdot \ell\right)\right)}}\]
    3. Using strategy rm
    4. Applied sub-neg27.2

      \[\leadsto \sqrt{\left(n \cdot \left(U \cdot 2\right)\right) \cdot \color{blue}{\left(t + \left(-\frac{\ell}{Om} \cdot \left(\left(\left(U - U*\right) \cdot n\right) \cdot \frac{\ell}{Om} + 2 \cdot \ell\right)\right)\right)}}\]
    5. Applied distribute-rgt-in27.2

      \[\leadsto \sqrt{\color{blue}{t \cdot \left(n \cdot \left(U \cdot 2\right)\right) + \left(-\frac{\ell}{Om} \cdot \left(\left(\left(U - U*\right) \cdot n\right) \cdot \frac{\ell}{Om} + 2 \cdot \ell\right)\right) \cdot \left(n \cdot \left(U \cdot 2\right)\right)}}\]
    6. Simplified23.1

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

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

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

Reproduce

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