Average Error: 19.0 → 12.5
Time: 4.7s
Precision: 64
\[c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\]
\[\begin{array}{l} \mathbf{if}\;V \cdot \ell \le -9.06360601863790799 \cdot 10^{284}:\\ \;\;\;\;\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 -3.08257491941769578 \cdot 10^{-195}:\\ \;\;\;\;\left(\left|\sqrt[3]{\frac{A}{V \cdot \ell}}\right| \cdot c0\right) \cdot \sqrt{\sqrt[3]{\frac{A}{V \cdot \ell}}}\\ \mathbf{elif}\;V \cdot \ell \le 6.900941 \cdot 10^{-318}:\\ \;\;\;\;c0 \cdot \sqrt{\frac{A}{V} \cdot \frac{1}{\ell}}\\ \mathbf{elif}\;V \cdot \ell \le 1.3470627133444004 \cdot 10^{300}:\\ \;\;\;\;c0 \cdot \frac{\sqrt{A}}{\sqrt{V \cdot \ell}}\\ \mathbf{else}:\\ \;\;\;\;c0 \cdot \frac{\sqrt{\frac{A}{V}}}{\sqrt{\ell}}\\ \end{array}\]
c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}
\begin{array}{l}
\mathbf{if}\;V \cdot \ell \le -9.06360601863790799 \cdot 10^{284}:\\
\;\;\;\;\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 -3.08257491941769578 \cdot 10^{-195}:\\
\;\;\;\;\left(\left|\sqrt[3]{\frac{A}{V \cdot \ell}}\right| \cdot c0\right) \cdot \sqrt{\sqrt[3]{\frac{A}{V \cdot \ell}}}\\

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

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

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

\end{array}
double f(double c0, double A, double V, double l) {
        double r198267 = c0;
        double r198268 = A;
        double r198269 = V;
        double r198270 = l;
        double r198271 = r198269 * r198270;
        double r198272 = r198268 / r198271;
        double r198273 = sqrt(r198272);
        double r198274 = r198267 * r198273;
        return r198274;
}

double f(double c0, double A, double V, double l) {
        double r198275 = V;
        double r198276 = l;
        double r198277 = r198275 * r198276;
        double r198278 = -9.063606018637908e+284;
        bool r198279 = r198277 <= r198278;
        double r198280 = c0;
        double r198281 = A;
        double r198282 = cbrt(r198281);
        double r198283 = r198282 * r198282;
        double r198284 = r198283 / r198275;
        double r198285 = sqrt(r198284);
        double r198286 = r198280 * r198285;
        double r198287 = r198282 / r198276;
        double r198288 = sqrt(r198287);
        double r198289 = r198286 * r198288;
        double r198290 = -3.0825749194176958e-195;
        bool r198291 = r198277 <= r198290;
        double r198292 = r198281 / r198277;
        double r198293 = cbrt(r198292);
        double r198294 = fabs(r198293);
        double r198295 = r198294 * r198280;
        double r198296 = sqrt(r198293);
        double r198297 = r198295 * r198296;
        double r198298 = 6.9009409587909e-318;
        bool r198299 = r198277 <= r198298;
        double r198300 = r198281 / r198275;
        double r198301 = 1.0;
        double r198302 = r198301 / r198276;
        double r198303 = r198300 * r198302;
        double r198304 = sqrt(r198303);
        double r198305 = r198280 * r198304;
        double r198306 = 1.3470627133444004e+300;
        bool r198307 = r198277 <= r198306;
        double r198308 = sqrt(r198281);
        double r198309 = sqrt(r198277);
        double r198310 = r198308 / r198309;
        double r198311 = r198280 * r198310;
        double r198312 = sqrt(r198300);
        double r198313 = sqrt(r198276);
        double r198314 = r198312 / r198313;
        double r198315 = r198280 * r198314;
        double r198316 = r198307 ? r198311 : r198315;
        double r198317 = r198299 ? r198305 : r198316;
        double r198318 = r198291 ? r198297 : r198317;
        double r198319 = r198279 ? r198289 : r198318;
        return r198319;
}

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) < -9.063606018637908e+284

    1. Initial program 39.1

      \[c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\]
    2. Using strategy rm
    3. Applied add-cube-cbrt39.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-frac22.6

      \[\leadsto c0 \cdot \sqrt{\color{blue}{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{V} \cdot \frac{\sqrt[3]{A}}{\ell}}}\]
    5. Applied sqrt-prod35.2

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

      \[\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 -9.063606018637908e+284 < (* V l) < -3.0825749194176958e-195

    1. Initial program 7.9

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

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

      \[\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*8.3

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

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

    if -3.0825749194176958e-195 < (* V l) < 6.9009409587909e-318

    1. Initial program 46.9

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

      \[\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-frac28.8

      \[\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 div-inv28.9

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

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

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

    if 6.9009409587909e-318 < (* V l) < 1.3470627133444004e+300

    1. Initial program 10.5

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

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

    if 1.3470627133444004e+300 < (* V l)

    1. Initial program 38.5

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

      \[\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-frac21.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 div-inv21.7

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

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

      \[\leadsto c0 \cdot \sqrt{\color{blue}{\frac{A}{V}} \cdot \frac{1}{\ell}}\]
    9. Using strategy rm
    10. Applied un-div-inv21.5

      \[\leadsto c0 \cdot \sqrt{\color{blue}{\frac{\frac{A}{V}}{\ell}}}\]
    11. Applied sqrt-div36.9

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;V \cdot \ell \le -9.06360601863790799 \cdot 10^{284}:\\ \;\;\;\;\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 -3.08257491941769578 \cdot 10^{-195}:\\ \;\;\;\;\left(\left|\sqrt[3]{\frac{A}{V \cdot \ell}}\right| \cdot c0\right) \cdot \sqrt{\sqrt[3]{\frac{A}{V \cdot \ell}}}\\ \mathbf{elif}\;V \cdot \ell \le 6.900941 \cdot 10^{-318}:\\ \;\;\;\;c0 \cdot \sqrt{\frac{A}{V} \cdot \frac{1}{\ell}}\\ \mathbf{elif}\;V \cdot \ell \le 1.3470627133444004 \cdot 10^{300}:\\ \;\;\;\;c0 \cdot \frac{\sqrt{A}}{\sqrt{V \cdot \ell}}\\ \mathbf{else}:\\ \;\;\;\;c0 \cdot \frac{\sqrt{\frac{A}{V}}}{\sqrt{\ell}}\\ \end{array}\]

Reproduce

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