Average Error: 18.3 → 11.0
Time: 19.4s
Precision: 64
\[c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\]
\[\begin{array}{l} \mathbf{if}\;V \cdot \ell = -\infty:\\ \;\;\;\;\sqrt{\frac{\frac{A}{V}}{\ell}} \cdot c0\\ \mathbf{elif}\;V \cdot \ell \le -3.006299384844621 \cdot 10^{-280}:\\ \;\;\;\;\sqrt{\frac{A}{V \cdot \ell}} \cdot c0\\ \mathbf{elif}\;V \cdot \ell \le 2.1852523515558 \cdot 10^{-320}:\\ \;\;\;\;\frac{\sqrt{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V} \cdot \sqrt[3]{A}} \cdot c0}{\sqrt{\ell}}\\ \mathbf{elif}\;V \cdot \ell \le 3.164392076131669 \cdot 10^{+251}:\\ \;\;\;\;\frac{\sqrt{A}}{\sqrt{V \cdot \ell}} \cdot c0\\ \mathbf{else}:\\ \;\;\;\;\sqrt{\frac{\frac{A}{V}}{\ell}} \cdot c0\\ \end{array}\]
c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}
\begin{array}{l}
\mathbf{if}\;V \cdot \ell = -\infty:\\
\;\;\;\;\sqrt{\frac{\frac{A}{V}}{\ell}} \cdot c0\\

\mathbf{elif}\;V \cdot \ell \le -3.006299384844621 \cdot 10^{-280}:\\
\;\;\;\;\sqrt{\frac{A}{V \cdot \ell}} \cdot c0\\

\mathbf{elif}\;V \cdot \ell \le 2.1852523515558 \cdot 10^{-320}:\\
\;\;\;\;\frac{\sqrt{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V} \cdot \sqrt[3]{A}} \cdot c0}{\sqrt{\ell}}\\

\mathbf{elif}\;V \cdot \ell \le 3.164392076131669 \cdot 10^{+251}:\\
\;\;\;\;\frac{\sqrt{A}}{\sqrt{V \cdot \ell}} \cdot c0\\

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

\end{array}
double f(double c0, double A, double V, double l) {
        double r2395527 = c0;
        double r2395528 = A;
        double r2395529 = V;
        double r2395530 = l;
        double r2395531 = r2395529 * r2395530;
        double r2395532 = r2395528 / r2395531;
        double r2395533 = sqrt(r2395532);
        double r2395534 = r2395527 * r2395533;
        return r2395534;
}

double f(double c0, double A, double V, double l) {
        double r2395535 = V;
        double r2395536 = l;
        double r2395537 = r2395535 * r2395536;
        double r2395538 = -inf.0;
        bool r2395539 = r2395537 <= r2395538;
        double r2395540 = A;
        double r2395541 = r2395540 / r2395535;
        double r2395542 = r2395541 / r2395536;
        double r2395543 = sqrt(r2395542);
        double r2395544 = c0;
        double r2395545 = r2395543 * r2395544;
        double r2395546 = -3.006299384844621e-280;
        bool r2395547 = r2395537 <= r2395546;
        double r2395548 = r2395540 / r2395537;
        double r2395549 = sqrt(r2395548);
        double r2395550 = r2395549 * r2395544;
        double r2395551 = 2.1852523515558e-320;
        bool r2395552 = r2395537 <= r2395551;
        double r2395553 = cbrt(r2395540);
        double r2395554 = r2395553 * r2395553;
        double r2395555 = r2395554 / r2395535;
        double r2395556 = r2395555 * r2395553;
        double r2395557 = sqrt(r2395556);
        double r2395558 = r2395557 * r2395544;
        double r2395559 = sqrt(r2395536);
        double r2395560 = r2395558 / r2395559;
        double r2395561 = 3.164392076131669e+251;
        bool r2395562 = r2395537 <= r2395561;
        double r2395563 = sqrt(r2395540);
        double r2395564 = sqrt(r2395537);
        double r2395565 = r2395563 / r2395564;
        double r2395566 = r2395565 * r2395544;
        double r2395567 = r2395562 ? r2395566 : r2395545;
        double r2395568 = r2395552 ? r2395560 : r2395567;
        double r2395569 = r2395547 ? r2395550 : r2395568;
        double r2395570 = r2395539 ? r2395545 : r2395569;
        return r2395570;
}

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) < -inf.0 or 3.164392076131669e+251 < (* V l)

    1. Initial program 38.7

      \[c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\]
    2. Using strategy rm
    3. Applied associate-/r*22.8

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

    if -inf.0 < (* V l) < -3.006299384844621e-280

    1. Initial program 9.0

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

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

      \[\leadsto c0 \cdot \sqrt{\color{blue}{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V} \cdot \frac{\sqrt[3]{A}}{\ell}}}\]
    5. Taylor expanded around -inf 9.0

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

    if -3.006299384844621e-280 < (* V l) < 2.1852523515558e-320

    1. Initial program 56.1

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

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

      \[\leadsto c0 \cdot \sqrt{\color{blue}{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V} \cdot \frac{\sqrt[3]{A}}{\ell}}}\]
    5. Using strategy rm
    6. Applied associate-*r/35.7

      \[\leadsto c0 \cdot \sqrt{\color{blue}{\frac{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V} \cdot \sqrt[3]{A}}{\ell}}}\]
    7. Applied sqrt-div38.8

      \[\leadsto c0 \cdot \color{blue}{\frac{\sqrt{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V} \cdot \sqrt[3]{A}}}{\sqrt{\ell}}}\]
    8. Applied associate-*r/39.3

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

    if 2.1852523515558e-320 < (* V l) < 3.164392076131669e+251

    1. Initial program 8.9

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;V \cdot \ell = -\infty:\\ \;\;\;\;\sqrt{\frac{\frac{A}{V}}{\ell}} \cdot c0\\ \mathbf{elif}\;V \cdot \ell \le -3.006299384844621 \cdot 10^{-280}:\\ \;\;\;\;\sqrt{\frac{A}{V \cdot \ell}} \cdot c0\\ \mathbf{elif}\;V \cdot \ell \le 2.1852523515558 \cdot 10^{-320}:\\ \;\;\;\;\frac{\sqrt{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V} \cdot \sqrt[3]{A}} \cdot c0}{\sqrt{\ell}}\\ \mathbf{elif}\;V \cdot \ell \le 3.164392076131669 \cdot 10^{+251}:\\ \;\;\;\;\frac{\sqrt{A}}{\sqrt{V \cdot \ell}} \cdot c0\\ \mathbf{else}:\\ \;\;\;\;\sqrt{\frac{\frac{A}{V}}{\ell}} \cdot c0\\ \end{array}\]

Reproduce

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