Average Error: 19.1 → 12.7
Time: 13.1s
Precision: 64
\[c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\]
\[\begin{array}{l} \mathbf{if}\;V \cdot \ell \le -2.358989678390499655643338615640182802565 \cdot 10^{166}:\\ \;\;\;\;\left(c0 \cdot \sqrt{1}\right) \cdot \sqrt{\frac{\frac{A}{\ell}}{V}}\\ \mathbf{elif}\;V \cdot \ell \le -4.304586754347573199502480307907145524165 \cdot 10^{-270}:\\ \;\;\;\;\left(c0 \cdot \sqrt{\sqrt{\frac{A}{V \cdot \ell}}}\right) \cdot \sqrt{\sqrt{\frac{A}{V \cdot \ell}}}\\ \mathbf{elif}\;V \cdot \ell \le -0.0:\\ \;\;\;\;\left(c0 \cdot \sqrt{1}\right) \cdot \frac{\sqrt{\left(\sqrt[3]{A} \cdot \sqrt[3]{A}\right) \cdot \frac{\sqrt[3]{A}}{\ell}}}{\sqrt{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 -2.358989678390499655643338615640182802565 \cdot 10^{166}:\\
\;\;\;\;\left(c0 \cdot \sqrt{1}\right) \cdot \sqrt{\frac{\frac{A}{\ell}}{V}}\\

\mathbf{elif}\;V \cdot \ell \le -4.304586754347573199502480307907145524165 \cdot 10^{-270}:\\
\;\;\;\;\left(c0 \cdot \sqrt{\sqrt{\frac{A}{V \cdot \ell}}}\right) \cdot \sqrt{\sqrt{\frac{A}{V \cdot \ell}}}\\

\mathbf{elif}\;V \cdot \ell \le -0.0:\\
\;\;\;\;\left(c0 \cdot \sqrt{1}\right) \cdot \frac{\sqrt{\left(\sqrt[3]{A} \cdot \sqrt[3]{A}\right) \cdot \frac{\sqrt[3]{A}}{\ell}}}{\sqrt{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 r102960 = c0;
        double r102961 = A;
        double r102962 = V;
        double r102963 = l;
        double r102964 = r102962 * r102963;
        double r102965 = r102961 / r102964;
        double r102966 = sqrt(r102965);
        double r102967 = r102960 * r102966;
        return r102967;
}

double f(double c0, double A, double V, double l) {
        double r102968 = V;
        double r102969 = l;
        double r102970 = r102968 * r102969;
        double r102971 = -2.3589896783904997e+166;
        bool r102972 = r102970 <= r102971;
        double r102973 = c0;
        double r102974 = 1.0;
        double r102975 = sqrt(r102974);
        double r102976 = r102973 * r102975;
        double r102977 = A;
        double r102978 = r102977 / r102969;
        double r102979 = r102978 / r102968;
        double r102980 = sqrt(r102979);
        double r102981 = r102976 * r102980;
        double r102982 = -4.304586754347573e-270;
        bool r102983 = r102970 <= r102982;
        double r102984 = r102977 / r102970;
        double r102985 = sqrt(r102984);
        double r102986 = sqrt(r102985);
        double r102987 = r102973 * r102986;
        double r102988 = r102987 * r102986;
        double r102989 = -0.0;
        bool r102990 = r102970 <= r102989;
        double r102991 = cbrt(r102977);
        double r102992 = r102991 * r102991;
        double r102993 = r102991 / r102969;
        double r102994 = r102992 * r102993;
        double r102995 = sqrt(r102994);
        double r102996 = sqrt(r102968);
        double r102997 = r102995 / r102996;
        double r102998 = r102976 * r102997;
        double r102999 = sqrt(r102977);
        double r103000 = sqrt(r102970);
        double r103001 = r102999 / r103000;
        double r103002 = r102973 * r103001;
        double r103003 = r102990 ? r102998 : r103002;
        double r103004 = r102983 ? r102988 : r103003;
        double r103005 = r102972 ? r102981 : r103004;
        return r103005;
}

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) < -2.3589896783904997e+166

    1. Initial program 28.6

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

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

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

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

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

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

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

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

    if -2.3589896783904997e+166 < (* V l) < -4.304586754347573e-270

    1. Initial program 7.5

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

      \[\leadsto c0 \cdot \sqrt{\color{blue}{\sqrt{\frac{A}{V \cdot \ell}} \cdot \sqrt{\frac{A}{V \cdot \ell}}}}\]
    4. Applied sqrt-prod7.8

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

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

    if -4.304586754347573e-270 < (* V l) < -0.0

    1. Initial program 50.7

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

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

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

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

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

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

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

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

    if -0.0 < (* V l)

    1. Initial program 19.4

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

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

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

Reproduce

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