Average Error: 34.3 → 27.6
Time: 1.5m
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}\;\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right) \le 0.0:\\ \;\;\;\;\sqrt{U \cdot \left(\left(t + \left(\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(\left(\left(U* - U\right) \cdot \sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}\right) \cdot \left(\sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}} \cdot \sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}\right)\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right) \cdot \left(2 \cdot n\right)\right)}\\ \mathbf{elif}\;\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right) \le 5.527558626767575315212582232479434470364 \cdot 10^{298}:\\ \;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{U} \cdot \sqrt{\left(2 \cdot n\right) \cdot \left(t + \left(\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(\left(U* - U\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\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}\;\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right) \le 0.0:\\
\;\;\;\;\sqrt{U \cdot \left(\left(t + \left(\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(\left(\left(U* - U\right) \cdot \sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}\right) \cdot \left(\sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}} \cdot \sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}\right)\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right) \cdot \left(2 \cdot n\right)\right)}\\

\mathbf{elif}\;\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right) \le 5.527558626767575315212582232479434470364 \cdot 10^{298}:\\
\;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\\

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

\end{array}
double f(double n, double U, double t, double l, double Om, double U_) {
        double r4654434 = 2.0;
        double r4654435 = n;
        double r4654436 = r4654434 * r4654435;
        double r4654437 = U;
        double r4654438 = r4654436 * r4654437;
        double r4654439 = t;
        double r4654440 = l;
        double r4654441 = r4654440 * r4654440;
        double r4654442 = Om;
        double r4654443 = r4654441 / r4654442;
        double r4654444 = r4654434 * r4654443;
        double r4654445 = r4654439 - r4654444;
        double r4654446 = r4654440 / r4654442;
        double r4654447 = pow(r4654446, r4654434);
        double r4654448 = r4654435 * r4654447;
        double r4654449 = U_;
        double r4654450 = r4654437 - r4654449;
        double r4654451 = r4654448 * r4654450;
        double r4654452 = r4654445 - r4654451;
        double r4654453 = r4654438 * r4654452;
        double r4654454 = sqrt(r4654453);
        return r4654454;
}

double f(double n, double U, double t, double l, double Om, double U_) {
        double r4654455 = 2.0;
        double r4654456 = n;
        double r4654457 = r4654455 * r4654456;
        double r4654458 = U;
        double r4654459 = r4654457 * r4654458;
        double r4654460 = t;
        double r4654461 = l;
        double r4654462 = r4654461 * r4654461;
        double r4654463 = Om;
        double r4654464 = r4654462 / r4654463;
        double r4654465 = r4654464 * r4654455;
        double r4654466 = r4654460 - r4654465;
        double r4654467 = r4654461 / r4654463;
        double r4654468 = pow(r4654467, r4654455);
        double r4654469 = r4654456 * r4654468;
        double r4654470 = U_;
        double r4654471 = r4654458 - r4654470;
        double r4654472 = r4654469 * r4654471;
        double r4654473 = r4654466 - r4654472;
        double r4654474 = r4654459 * r4654473;
        double r4654475 = 0.0;
        bool r4654476 = r4654474 <= r4654475;
        double r4654477 = 2.0;
        double r4654478 = r4654455 / r4654477;
        double r4654479 = pow(r4654467, r4654478);
        double r4654480 = r4654456 * r4654479;
        double r4654481 = r4654470 - r4654458;
        double r4654482 = cbrt(r4654479);
        double r4654483 = r4654481 * r4654482;
        double r4654484 = r4654482 * r4654482;
        double r4654485 = r4654483 * r4654484;
        double r4654486 = r4654480 * r4654485;
        double r4654487 = r4654455 * r4654461;
        double r4654488 = r4654487 * r4654467;
        double r4654489 = r4654486 - r4654488;
        double r4654490 = r4654460 + r4654489;
        double r4654491 = r4654490 * r4654457;
        double r4654492 = r4654458 * r4654491;
        double r4654493 = sqrt(r4654492);
        double r4654494 = 5.527558626767575e+298;
        bool r4654495 = r4654474 <= r4654494;
        double r4654496 = sqrt(r4654474);
        double r4654497 = sqrt(r4654458);
        double r4654498 = r4654481 * r4654479;
        double r4654499 = r4654480 * r4654498;
        double r4654500 = r4654499 - r4654488;
        double r4654501 = r4654460 + r4654500;
        double r4654502 = r4654457 * r4654501;
        double r4654503 = sqrt(r4654502);
        double r4654504 = r4654497 * r4654503;
        double r4654505 = r4654495 ? r4654496 : r4654504;
        double r4654506 = r4654476 ? r4654493 : r4654505;
        return r4654506;
}

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*

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 3 regimes
  2. if (* (* (* 2.0 n) U) (- (- t (* 2.0 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2.0)) (- U U*)))) < 0.0

    1. Initial program 56.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. Simplified39.7

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

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot \left(t + \left(\left(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)}\right) \cdot \left(U* - U\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right)\right) \cdot U}\]
    5. Applied associate-*r*37.0

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot \left(t + \left(\color{blue}{\left(\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)}\right)} \cdot \left(U* - U\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right)\right) \cdot U}\]
    6. Using strategy rm
    7. Applied associate-*l*36.5

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot \left(t + \left(\color{blue}{\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(U* - U\right)\right)} - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right)\right) \cdot U}\]
    8. Using strategy rm
    9. Applied add-cube-cbrt36.5

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot \left(t + \left(\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(\color{blue}{\left(\left(\sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}} \cdot \sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}\right) \cdot \sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}\right)} \cdot \left(U* - U\right)\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right)\right) \cdot U}\]
    10. Applied associate-*l*36.5

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

    if 0.0 < (* (* (* 2.0 n) U) (- (- t (* 2.0 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2.0)) (- U U*)))) < 5.527558626767575e+298

    1. Initial program 1.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)}\]

    if 5.527558626767575e+298 < (* (* (* 2.0 n) U) (- (- t (* 2.0 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2.0)) (- U U*))))

    1. Initial program 63.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. Simplified54.8

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

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot \left(t + \left(\left(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)}\right) \cdot \left(U* - U\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right)\right) \cdot U}\]
    5. Applied associate-*r*53.5

      \[\leadsto \sqrt{\left(\left(2 \cdot n\right) \cdot \left(t + \left(\color{blue}{\left(\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)}\right)} \cdot \left(U* - U\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right)\right) \cdot U}\]
    6. Using strategy rm
    7. Applied associate-*l*53.5

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right) \le 0.0:\\ \;\;\;\;\sqrt{U \cdot \left(\left(t + \left(\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(\left(\left(U* - U\right) \cdot \sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}\right) \cdot \left(\sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}} \cdot \sqrt[3]{{\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}}\right)\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right) \cdot \left(2 \cdot n\right)\right)}\\ \mathbf{elif}\;\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right) \le 5.527558626767575315212582232479434470364 \cdot 10^{298}:\\ \;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - \frac{\ell \cdot \ell}{Om} \cdot 2\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{U} \cdot \sqrt{\left(2 \cdot n\right) \cdot \left(t + \left(\left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(\left(U* - U\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) - \left(2 \cdot \ell\right) \cdot \frac{\ell}{Om}\right)\right)}\\ \end{array}\]

Reproduce

herbie shell --seed 2019172 
(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*))))))