Average Error: 18.8 → 9.7
Time: 28.2s
Precision: 64
\[c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\]
\[\begin{array}{l} \mathbf{if}\;V \cdot \ell \le -1.0028777413688825 \cdot 10^{-276}:\\ \;\;\;\;\sqrt{\sqrt[3]{A} \cdot \sqrt[3]{\frac{1}{V \cdot \ell}}} \cdot \left(\frac{\left|\sqrt[3]{A}\right|}{\sqrt{\sqrt[3]{V \cdot \ell} \cdot \sqrt[3]{V \cdot \ell}}} \cdot c0\right)\\ \mathbf{elif}\;V \cdot \ell \le 4.077916039006289 \cdot 10^{-304}:\\ \;\;\;\;c0 \cdot \sqrt{\frac{A}{\ell} \cdot \frac{1}{V}}\\ \mathbf{else}:\\ \;\;\;\;c0 \cdot \frac{\sqrt{A}}{\sqrt{V \cdot \ell}}\\ \end{array}\]
c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}
\begin{array}{l}
\mathbf{if}\;V \cdot \ell \le -1.0028777413688825 \cdot 10^{-276}:\\
\;\;\;\;\sqrt{\sqrt[3]{A} \cdot \sqrt[3]{\frac{1}{V \cdot \ell}}} \cdot \left(\frac{\left|\sqrt[3]{A}\right|}{\sqrt{\sqrt[3]{V \cdot \ell} \cdot \sqrt[3]{V \cdot \ell}}} \cdot c0\right)\\

\mathbf{elif}\;V \cdot \ell \le 4.077916039006289 \cdot 10^{-304}:\\
\;\;\;\;c0 \cdot \sqrt{\frac{A}{\ell} \cdot \frac{1}{V}}\\

\mathbf{else}:\\
\;\;\;\;c0 \cdot \frac{\sqrt{A}}{\sqrt{V \cdot \ell}}\\

\end{array}
double f(double c0, double A, double V, double l) {
        double r3736452 = c0;
        double r3736453 = A;
        double r3736454 = V;
        double r3736455 = l;
        double r3736456 = r3736454 * r3736455;
        double r3736457 = r3736453 / r3736456;
        double r3736458 = sqrt(r3736457);
        double r3736459 = r3736452 * r3736458;
        return r3736459;
}

double f(double c0, double A, double V, double l) {
        double r3736460 = V;
        double r3736461 = l;
        double r3736462 = r3736460 * r3736461;
        double r3736463 = -1.0028777413688825e-276;
        bool r3736464 = r3736462 <= r3736463;
        double r3736465 = A;
        double r3736466 = cbrt(r3736465);
        double r3736467 = 1.0;
        double r3736468 = r3736467 / r3736462;
        double r3736469 = cbrt(r3736468);
        double r3736470 = r3736466 * r3736469;
        double r3736471 = sqrt(r3736470);
        double r3736472 = fabs(r3736466);
        double r3736473 = cbrt(r3736462);
        double r3736474 = r3736473 * r3736473;
        double r3736475 = sqrt(r3736474);
        double r3736476 = r3736472 / r3736475;
        double r3736477 = c0;
        double r3736478 = r3736476 * r3736477;
        double r3736479 = r3736471 * r3736478;
        double r3736480 = 4.077916039006289e-304;
        bool r3736481 = r3736462 <= r3736480;
        double r3736482 = r3736465 / r3736461;
        double r3736483 = r3736467 / r3736460;
        double r3736484 = r3736482 * r3736483;
        double r3736485 = sqrt(r3736484);
        double r3736486 = r3736477 * r3736485;
        double r3736487 = sqrt(r3736465);
        double r3736488 = sqrt(r3736462);
        double r3736489 = r3736487 / r3736488;
        double r3736490 = r3736477 * r3736489;
        double r3736491 = r3736481 ? r3736486 : r3736490;
        double r3736492 = r3736464 ? r3736479 : r3736491;
        return r3736492;
}

Error

Bits error versus c0

Bits error versus A

Bits error versus V

Bits error versus l

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 3 regimes
  2. if (* V l) < -1.0028777413688825e-276

    1. Initial program 14.5

      \[c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\]
    2. Using strategy rm
    3. Applied add-cube-cbrt14.9

      \[\leadsto c0 \cdot \sqrt{\color{blue}{\left(\sqrt[3]{\frac{A}{V \cdot \ell}} \cdot \sqrt[3]{\frac{A}{V \cdot \ell}}\right) \cdot \sqrt[3]{\frac{A}{V \cdot \ell}}}}\]
    4. Applied sqrt-prod14.9

      \[\leadsto c0 \cdot \color{blue}{\left(\sqrt{\sqrt[3]{\frac{A}{V \cdot \ell}} \cdot \sqrt[3]{\frac{A}{V \cdot \ell}}} \cdot \sqrt{\sqrt[3]{\frac{A}{V \cdot \ell}}}\right)}\]
    5. Applied associate-*r*14.9

      \[\leadsto \color{blue}{\left(c0 \cdot \sqrt{\sqrt[3]{\frac{A}{V \cdot \ell}} \cdot \sqrt[3]{\frac{A}{V \cdot \ell}}}\right) \cdot \sqrt{\sqrt[3]{\frac{A}{V \cdot \ell}}}}\]
    6. Using strategy rm
    7. Applied cbrt-div14.9

      \[\leadsto \left(c0 \cdot \sqrt{\sqrt[3]{\frac{A}{V \cdot \ell}} \cdot \color{blue}{\frac{\sqrt[3]{A}}{\sqrt[3]{V \cdot \ell}}}}\right) \cdot \sqrt{\sqrt[3]{\frac{A}{V \cdot \ell}}}\]
    8. Applied cbrt-div14.9

      \[\leadsto \left(c0 \cdot \sqrt{\color{blue}{\frac{\sqrt[3]{A}}{\sqrt[3]{V \cdot \ell}}} \cdot \frac{\sqrt[3]{A}}{\sqrt[3]{V \cdot \ell}}}\right) \cdot \sqrt{\sqrt[3]{\frac{A}{V \cdot \ell}}}\]
    9. Applied frac-times14.9

      \[\leadsto \left(c0 \cdot \sqrt{\color{blue}{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{\sqrt[3]{V \cdot \ell} \cdot \sqrt[3]{V \cdot \ell}}}}\right) \cdot \sqrt{\sqrt[3]{\frac{A}{V \cdot \ell}}}\]
    10. Applied sqrt-div14.9

      \[\leadsto \left(c0 \cdot \color{blue}{\frac{\sqrt{\sqrt[3]{A} \cdot \sqrt[3]{A}}}{\sqrt{\sqrt[3]{V \cdot \ell} \cdot \sqrt[3]{V \cdot \ell}}}}\right) \cdot \sqrt{\sqrt[3]{\frac{A}{V \cdot \ell}}}\]
    11. Simplified14.9

      \[\leadsto \left(c0 \cdot \frac{\color{blue}{\left|\sqrt[3]{A}\right|}}{\sqrt{\sqrt[3]{V \cdot \ell} \cdot \sqrt[3]{V \cdot \ell}}}\right) \cdot \sqrt{\sqrt[3]{\frac{A}{V \cdot \ell}}}\]
    12. Using strategy rm
    13. Applied div-inv14.9

      \[\leadsto \left(c0 \cdot \frac{\left|\sqrt[3]{A}\right|}{\sqrt{\sqrt[3]{V \cdot \ell} \cdot \sqrt[3]{V \cdot \ell}}}\right) \cdot \sqrt{\sqrt[3]{\color{blue}{A \cdot \frac{1}{V \cdot \ell}}}}\]
    14. Applied cbrt-prod7.4

      \[\leadsto \left(c0 \cdot \frac{\left|\sqrt[3]{A}\right|}{\sqrt{\sqrt[3]{V \cdot \ell} \cdot \sqrt[3]{V \cdot \ell}}}\right) \cdot \sqrt{\color{blue}{\sqrt[3]{A} \cdot \sqrt[3]{\frac{1}{V \cdot \ell}}}}\]

    if -1.0028777413688825e-276 < (* V l) < 4.077916039006289e-304

    1. Initial program 53.8

      \[c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\]
    2. Using strategy rm
    3. Applied *-un-lft-identity53.8

      \[\leadsto c0 \cdot \sqrt{\frac{\color{blue}{1 \cdot A}}{V \cdot \ell}}\]
    4. Applied times-frac32.4

      \[\leadsto c0 \cdot \sqrt{\color{blue}{\frac{1}{V} \cdot \frac{A}{\ell}}}\]

    if 4.077916039006289e-304 < (* V l)

    1. Initial program 14.8

      \[c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\]
    2. Using strategy rm
    3. Applied sqrt-div6.7

      \[\leadsto c0 \cdot \color{blue}{\frac{\sqrt{A}}{\sqrt{V \cdot \ell}}}\]
  3. Recombined 3 regimes into one program.
  4. Final simplification9.7

    \[\leadsto \begin{array}{l} \mathbf{if}\;V \cdot \ell \le -1.0028777413688825 \cdot 10^{-276}:\\ \;\;\;\;\sqrt{\sqrt[3]{A} \cdot \sqrt[3]{\frac{1}{V \cdot \ell}}} \cdot \left(\frac{\left|\sqrt[3]{A}\right|}{\sqrt{\sqrt[3]{V \cdot \ell} \cdot \sqrt[3]{V \cdot \ell}}} \cdot c0\right)\\ \mathbf{elif}\;V \cdot \ell \le 4.077916039006289 \cdot 10^{-304}:\\ \;\;\;\;c0 \cdot \sqrt{\frac{A}{\ell} \cdot \frac{1}{V}}\\ \mathbf{else}:\\ \;\;\;\;c0 \cdot \frac{\sqrt{A}}{\sqrt{V \cdot \ell}}\\ \end{array}\]

Reproduce

herbie shell --seed 2019151 +o rules:numerics
(FPCore (c0 A V l)
  :name "Henrywood and Agarwal, Equation (3)"
  (* c0 (sqrt (/ A (* V l)))))