Average Error: 19.6 → 12.9
Time: 9.5s
Precision: 64
\[c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\]
\[\begin{array}{l} \mathbf{if}\;V \cdot \ell \le -9.58809670087543449 \cdot 10^{-244}:\\ \;\;\;\;c0 \cdot \sqrt{A \cdot \left(\left(\frac{1}{V} \cdot \left(\sqrt[3]{\frac{1}{\ell}} \cdot \sqrt[3]{\frac{1}{\ell}}\right)\right) \cdot \sqrt[3]{\frac{1}{\ell}}\right)}\\ \mathbf{elif}\;V \cdot \ell \le -0.0:\\ \;\;\;\;\frac{c0 \cdot \sqrt{A \cdot \frac{1}{V}}}{\sqrt{\ell}}\\ \mathbf{elif}\;V \cdot \ell \le 3.5878746922481627 \cdot 10^{303}:\\ \;\;\;\;c0 \cdot \frac{\sqrt{A}}{\sqrt{V \cdot \ell}}\\ \mathbf{else}:\\ \;\;\;\;c0 \cdot \sqrt{\frac{\frac{A}{\ell}}{V}}\\ \end{array}\]
c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}
\begin{array}{l}
\mathbf{if}\;V \cdot \ell \le -9.58809670087543449 \cdot 10^{-244}:\\
\;\;\;\;c0 \cdot \sqrt{A \cdot \left(\left(\frac{1}{V} \cdot \left(\sqrt[3]{\frac{1}{\ell}} \cdot \sqrt[3]{\frac{1}{\ell}}\right)\right) \cdot \sqrt[3]{\frac{1}{\ell}}\right)}\\

\mathbf{elif}\;V \cdot \ell \le -0.0:\\
\;\;\;\;\frac{c0 \cdot \sqrt{A \cdot \frac{1}{V}}}{\sqrt{\ell}}\\

\mathbf{elif}\;V \cdot \ell \le 3.5878746922481627 \cdot 10^{303}:\\
\;\;\;\;c0 \cdot \frac{\sqrt{A}}{\sqrt{V \cdot \ell}}\\

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

\end{array}
double f(double c0, double A, double V, double l) {
        double r360 = c0;
        double r361 = A;
        double r362 = V;
        double r363 = l;
        double r364 = r362 * r363;
        double r365 = r361 / r364;
        double r366 = sqrt(r365);
        double r367 = r360 * r366;
        return r367;
}

double f(double c0, double A, double V, double l) {
        double r368 = V;
        double r369 = l;
        double r370 = r368 * r369;
        double r371 = -9.588096700875434e-244;
        bool r372 = r370 <= r371;
        double r373 = c0;
        double r374 = A;
        double r375 = 1.0;
        double r376 = r375 / r368;
        double r377 = r375 / r369;
        double r378 = cbrt(r377);
        double r379 = r378 * r378;
        double r380 = r376 * r379;
        double r381 = r380 * r378;
        double r382 = r374 * r381;
        double r383 = sqrt(r382);
        double r384 = r373 * r383;
        double r385 = -0.0;
        bool r386 = r370 <= r385;
        double r387 = r374 * r376;
        double r388 = sqrt(r387);
        double r389 = r373 * r388;
        double r390 = sqrt(r369);
        double r391 = r389 / r390;
        double r392 = 3.587874692248163e+303;
        bool r393 = r370 <= r392;
        double r394 = sqrt(r374);
        double r395 = sqrt(r370);
        double r396 = r394 / r395;
        double r397 = r373 * r396;
        double r398 = r374 / r369;
        double r399 = r398 / r368;
        double r400 = sqrt(r399);
        double r401 = r373 * r400;
        double r402 = r393 ? r397 : r401;
        double r403 = r386 ? r391 : r402;
        double r404 = r372 ? r384 : r403;
        return r404;
}

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 4 regimes
  2. if (* V l) < -9.588096700875434e-244

    1. Initial program 14.6

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

      \[\leadsto c0 \cdot \sqrt{\color{blue}{A \cdot \frac{1}{V \cdot \ell}}}\]
    4. Using strategy rm
    5. Applied add-cube-cbrt14.6

      \[\leadsto c0 \cdot \sqrt{A \cdot \frac{\color{blue}{\left(\sqrt[3]{1} \cdot \sqrt[3]{1}\right) \cdot \sqrt[3]{1}}}{V \cdot \ell}}\]
    6. Applied times-frac14.3

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

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

      \[\leadsto c0 \cdot \sqrt{A \cdot \left(\frac{1}{V} \cdot \color{blue}{\frac{1}{\ell}}\right)}\]
    9. Using strategy rm
    10. Applied add-cube-cbrt14.7

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

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

    if -9.588096700875434e-244 < (* V l) < -0.0

    1. Initial program 53.7

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

      \[\leadsto c0 \cdot \sqrt{\color{blue}{A \cdot \frac{1}{V \cdot \ell}}}\]
    4. Using strategy rm
    5. Applied add-cube-cbrt54.8

      \[\leadsto c0 \cdot \sqrt{A \cdot \frac{\color{blue}{\left(\sqrt[3]{1} \cdot \sqrt[3]{1}\right) \cdot \sqrt[3]{1}}}{V \cdot \ell}}\]
    6. Applied times-frac54.8

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

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

      \[\leadsto c0 \cdot \sqrt{A \cdot \left(\frac{1}{V} \cdot \color{blue}{\frac{1}{\ell}}\right)}\]
    9. Using strategy rm
    10. Applied un-div-inv54.8

      \[\leadsto c0 \cdot \sqrt{A \cdot \color{blue}{\frac{\frac{1}{V}}{\ell}}}\]
    11. Applied associate-*r/34.1

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

      \[\leadsto c0 \cdot \color{blue}{\frac{\sqrt{A \cdot \frac{1}{V}}}{\sqrt{\ell}}}\]
    13. Applied associate-*r/39.8

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

    if -0.0 < (* V l) < 3.587874692248163e+303

    1. Initial program 10.3

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

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

    if 3.587874692248163e+303 < (* V l)

    1. Initial program 41.6

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

      \[\leadsto c0 \cdot \sqrt{\color{blue}{A \cdot \frac{1}{V \cdot \ell}}}\]
    4. Using strategy rm
    5. Applied add-cube-cbrt41.6

      \[\leadsto c0 \cdot \sqrt{A \cdot \frac{\color{blue}{\left(\sqrt[3]{1} \cdot \sqrt[3]{1}\right) \cdot \sqrt[3]{1}}}{V \cdot \ell}}\]
    6. Applied times-frac40.0

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

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

      \[\leadsto c0 \cdot \sqrt{A \cdot \left(\frac{1}{V} \cdot \color{blue}{\frac{1}{\ell}}\right)}\]
    9. Using strategy rm
    10. Applied associate-*l/40.0

      \[\leadsto c0 \cdot \sqrt{A \cdot \color{blue}{\frac{1 \cdot \frac{1}{\ell}}{V}}}\]
    11. Applied associate-*r/23.9

      \[\leadsto c0 \cdot \sqrt{\color{blue}{\frac{A \cdot \left(1 \cdot \frac{1}{\ell}\right)}{V}}}\]
    12. Simplified23.9

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;V \cdot \ell \le -9.58809670087543449 \cdot 10^{-244}:\\ \;\;\;\;c0 \cdot \sqrt{A \cdot \left(\left(\frac{1}{V} \cdot \left(\sqrt[3]{\frac{1}{\ell}} \cdot \sqrt[3]{\frac{1}{\ell}}\right)\right) \cdot \sqrt[3]{\frac{1}{\ell}}\right)}\\ \mathbf{elif}\;V \cdot \ell \le -0.0:\\ \;\;\;\;\frac{c0 \cdot \sqrt{A \cdot \frac{1}{V}}}{\sqrt{\ell}}\\ \mathbf{elif}\;V \cdot \ell \le 3.5878746922481627 \cdot 10^{303}:\\ \;\;\;\;c0 \cdot \frac{\sqrt{A}}{\sqrt{V \cdot \ell}}\\ \mathbf{else}:\\ \;\;\;\;c0 \cdot \sqrt{\frac{\frac{A}{\ell}}{V}}\\ \end{array}\]

Reproduce

herbie shell --seed 2020025 
(FPCore (c0 A V l)
  :name "Henrywood and Agarwal, Equation (3)"
  :precision binary64
  (* c0 (sqrt (/ A (* V l)))))