Average Error: 18.9 → 12.4
Time: 20.4s
Precision: 64
\[c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\]
\[\begin{array}{l} \mathbf{if}\;V \cdot \ell \le -8.197618637031193 \cdot 10^{+280}:\\ \;\;\;\;\left(c0 \cdot \sqrt{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V}}\right) \cdot \sqrt{\frac{\sqrt[3]{A}}{\ell}}\\ \mathbf{elif}\;V \cdot \ell \le -9.120801290541009 \cdot 10^{-265}:\\ \;\;\;\;c0 \cdot \sqrt{\frac{1}{V \cdot \ell} \cdot A}\\ \mathbf{elif}\;V \cdot \ell \le -0.0:\\ \;\;\;\;\sqrt{\frac{A}{\ell}} \cdot \left(c0 \cdot \sqrt{\frac{1}{V}}\right)\\ \mathbf{elif}\;V \cdot \ell \le 1.3703350004941968 \cdot 10^{+298}:\\ \;\;\;\;\frac{\sqrt{A}}{\sqrt{V \cdot \ell}} \cdot c0\\ \mathbf{else}:\\ \;\;\;\;c0 \cdot \sqrt{\frac{\frac{A}{V}}{\ell}}\\ \end{array}\]
c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}
\begin{array}{l}
\mathbf{if}\;V \cdot \ell \le -8.197618637031193 \cdot 10^{+280}:\\
\;\;\;\;\left(c0 \cdot \sqrt{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V}}\right) \cdot \sqrt{\frac{\sqrt[3]{A}}{\ell}}\\

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

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

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

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

\end{array}
double f(double c0, double A, double V, double l) {
        double r4387460 = c0;
        double r4387461 = A;
        double r4387462 = V;
        double r4387463 = l;
        double r4387464 = r4387462 * r4387463;
        double r4387465 = r4387461 / r4387464;
        double r4387466 = sqrt(r4387465);
        double r4387467 = r4387460 * r4387466;
        return r4387467;
}

double f(double c0, double A, double V, double l) {
        double r4387468 = V;
        double r4387469 = l;
        double r4387470 = r4387468 * r4387469;
        double r4387471 = -8.197618637031193e+280;
        bool r4387472 = r4387470 <= r4387471;
        double r4387473 = c0;
        double r4387474 = A;
        double r4387475 = cbrt(r4387474);
        double r4387476 = r4387475 * r4387475;
        double r4387477 = r4387476 / r4387468;
        double r4387478 = sqrt(r4387477);
        double r4387479 = r4387473 * r4387478;
        double r4387480 = r4387475 / r4387469;
        double r4387481 = sqrt(r4387480);
        double r4387482 = r4387479 * r4387481;
        double r4387483 = -9.120801290541009e-265;
        bool r4387484 = r4387470 <= r4387483;
        double r4387485 = 1.0;
        double r4387486 = r4387485 / r4387470;
        double r4387487 = r4387486 * r4387474;
        double r4387488 = sqrt(r4387487);
        double r4387489 = r4387473 * r4387488;
        double r4387490 = -0.0;
        bool r4387491 = r4387470 <= r4387490;
        double r4387492 = r4387474 / r4387469;
        double r4387493 = sqrt(r4387492);
        double r4387494 = r4387485 / r4387468;
        double r4387495 = sqrt(r4387494);
        double r4387496 = r4387473 * r4387495;
        double r4387497 = r4387493 * r4387496;
        double r4387498 = 1.3703350004941968e+298;
        bool r4387499 = r4387470 <= r4387498;
        double r4387500 = sqrt(r4387474);
        double r4387501 = sqrt(r4387470);
        double r4387502 = r4387500 / r4387501;
        double r4387503 = r4387502 * r4387473;
        double r4387504 = r4387474 / r4387468;
        double r4387505 = r4387504 / r4387469;
        double r4387506 = sqrt(r4387505);
        double r4387507 = r4387473 * r4387506;
        double r4387508 = r4387499 ? r4387503 : r4387507;
        double r4387509 = r4387491 ? r4387497 : r4387508;
        double r4387510 = r4387484 ? r4387489 : r4387509;
        double r4387511 = r4387472 ? r4387482 : r4387510;
        return r4387511;
}

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 5 regimes
  2. if (* V l) < -8.197618637031193e+280

    1. Initial program 38.2

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

      \[\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-frac24.0

      \[\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 sqrt-prod34.3

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

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

    if -8.197618637031193e+280 < (* V l) < -9.120801290541009e-265

    1. Initial program 9.2

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

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

    if -9.120801290541009e-265 < (* V l) < -0.0

    1. Initial program 53.9

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

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

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

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

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

    if -0.0 < (* V l) < 1.3703350004941968e+298

    1. Initial program 10.0

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

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

      \[\leadsto c0 \cdot \sqrt{\color{blue}{\frac{A \cdot 1}{V \cdot \ell}}}\]
    6. Applied sqrt-div0.8

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

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

    if 1.3703350004941968e+298 < (* V l)

    1. Initial program 40.8

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

      \[\leadsto c0 \cdot \sqrt{\color{blue}{A \cdot \frac{1}{V \cdot \ell}}}\]
    4. Using strategy rm
    5. Applied *-un-lft-identity40.8

      \[\leadsto \color{blue}{\left(1 \cdot c0\right)} \cdot \sqrt{A \cdot \frac{1}{V \cdot \ell}}\]
    6. Applied associate-*l*40.8

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

      \[\leadsto 1 \cdot \color{blue}{\left(\sqrt{\frac{\frac{A}{V}}{\ell}} \cdot c0\right)}\]
  3. Recombined 5 regimes into one program.
  4. Final simplification12.4

    \[\leadsto \begin{array}{l} \mathbf{if}\;V \cdot \ell \le -8.197618637031193 \cdot 10^{+280}:\\ \;\;\;\;\left(c0 \cdot \sqrt{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V}}\right) \cdot \sqrt{\frac{\sqrt[3]{A}}{\ell}}\\ \mathbf{elif}\;V \cdot \ell \le -9.120801290541009 \cdot 10^{-265}:\\ \;\;\;\;c0 \cdot \sqrt{\frac{1}{V \cdot \ell} \cdot A}\\ \mathbf{elif}\;V \cdot \ell \le -0.0:\\ \;\;\;\;\sqrt{\frac{A}{\ell}} \cdot \left(c0 \cdot \sqrt{\frac{1}{V}}\right)\\ \mathbf{elif}\;V \cdot \ell \le 1.3703350004941968 \cdot 10^{+298}:\\ \;\;\;\;\frac{\sqrt{A}}{\sqrt{V \cdot \ell}} \cdot c0\\ \mathbf{else}:\\ \;\;\;\;c0 \cdot \sqrt{\frac{\frac{A}{V}}{\ell}}\\ \end{array}\]

Reproduce

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