Average Error: 18.9 → 11.0
Time: 6.5s
Precision: 64
\[c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\]
\[\begin{array}{l} \mathbf{if}\;V \le -7.24944730302796452 \cdot 10^{-9}:\\ \;\;\;\;\left(\sqrt[3]{c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \sqrt{\frac{\sqrt[3]{A}}{V \cdot \ell}}\right)} \cdot \sqrt[3]{c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \sqrt{\frac{\sqrt[3]{A}}{V \cdot \ell}}\right)}\right) \cdot \sqrt[3]{c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \sqrt{\frac{\sqrt[3]{A}}{V \cdot \ell}}\right)}\\ \mathbf{elif}\;V \le -3.2698369089058447 \cdot 10^{-220}:\\ \;\;\;\;c0 \cdot \sqrt{\frac{\frac{A}{V}}{\ell}}\\ \mathbf{elif}\;V \le 8.37998221063094693 \cdot 10^{-237}:\\ \;\;\;\;c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \sqrt{\frac{1}{\frac{V \cdot \ell}{\sqrt[3]{A}}}}\right)\\ \mathbf{else}:\\ \;\;\;\;c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \left(\sqrt{\frac{\sqrt[3]{\sqrt[3]{A} \cdot \sqrt[3]{A}}}{V}} \cdot \sqrt{\frac{\sqrt[3]{\sqrt[3]{A}}}{\ell}}\right)\right)\\ \end{array}\]
c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}
\begin{array}{l}
\mathbf{if}\;V \le -7.24944730302796452 \cdot 10^{-9}:\\
\;\;\;\;\left(\sqrt[3]{c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \sqrt{\frac{\sqrt[3]{A}}{V \cdot \ell}}\right)} \cdot \sqrt[3]{c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \sqrt{\frac{\sqrt[3]{A}}{V \cdot \ell}}\right)}\right) \cdot \sqrt[3]{c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \sqrt{\frac{\sqrt[3]{A}}{V \cdot \ell}}\right)}\\

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

\mathbf{elif}\;V \le 8.37998221063094693 \cdot 10^{-237}:\\
\;\;\;\;c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \sqrt{\frac{1}{\frac{V \cdot \ell}{\sqrt[3]{A}}}}\right)\\

\mathbf{else}:\\
\;\;\;\;c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \left(\sqrt{\frac{\sqrt[3]{\sqrt[3]{A} \cdot \sqrt[3]{A}}}{V}} \cdot \sqrt{\frac{\sqrt[3]{\sqrt[3]{A}}}{\ell}}\right)\right)\\

\end{array}
double f(double c0, double A, double V, double l) {
        double r191909 = c0;
        double r191910 = A;
        double r191911 = V;
        double r191912 = l;
        double r191913 = r191911 * r191912;
        double r191914 = r191910 / r191913;
        double r191915 = sqrt(r191914);
        double r191916 = r191909 * r191915;
        return r191916;
}

double f(double c0, double A, double V, double l) {
        double r191917 = V;
        double r191918 = -7.2494473030279645e-09;
        bool r191919 = r191917 <= r191918;
        double r191920 = c0;
        double r191921 = A;
        double r191922 = cbrt(r191921);
        double r191923 = fabs(r191922);
        double r191924 = l;
        double r191925 = r191917 * r191924;
        double r191926 = r191922 / r191925;
        double r191927 = sqrt(r191926);
        double r191928 = r191923 * r191927;
        double r191929 = r191920 * r191928;
        double r191930 = cbrt(r191929);
        double r191931 = r191930 * r191930;
        double r191932 = r191931 * r191930;
        double r191933 = -3.2698369089058447e-220;
        bool r191934 = r191917 <= r191933;
        double r191935 = r191921 / r191917;
        double r191936 = r191935 / r191924;
        double r191937 = sqrt(r191936);
        double r191938 = r191920 * r191937;
        double r191939 = 8.379982210630947e-237;
        bool r191940 = r191917 <= r191939;
        double r191941 = 1.0;
        double r191942 = r191925 / r191922;
        double r191943 = r191941 / r191942;
        double r191944 = sqrt(r191943);
        double r191945 = r191923 * r191944;
        double r191946 = r191920 * r191945;
        double r191947 = r191922 * r191922;
        double r191948 = cbrt(r191947);
        double r191949 = r191948 / r191917;
        double r191950 = sqrt(r191949);
        double r191951 = cbrt(r191922);
        double r191952 = r191951 / r191924;
        double r191953 = sqrt(r191952);
        double r191954 = r191950 * r191953;
        double r191955 = r191923 * r191954;
        double r191956 = r191920 * r191955;
        double r191957 = r191940 ? r191946 : r191956;
        double r191958 = r191934 ? r191938 : r191957;
        double r191959 = r191919 ? r191932 : r191958;
        return r191959;
}

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 < -7.2494473030279645e-09

    1. Initial program 18.1

      \[c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\]
    2. Using strategy rm
    3. Applied add-cube-cbrt18.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 associate-/l*18.4

      \[\leadsto c0 \cdot \sqrt{\color{blue}{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{\frac{V \cdot \ell}{\sqrt[3]{A}}}}}\]
    5. Using strategy rm
    6. Applied div-inv18.4

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

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

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

      \[\leadsto c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \color{blue}{\sqrt{\frac{\sqrt[3]{A}}{V \cdot \ell}}}\right)\]
    10. Using strategy rm
    11. Applied add-cube-cbrt13.5

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

    if -7.2494473030279645e-09 < V < -3.2698369089058447e-220

    1. Initial program 17.5

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

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

    if -3.2698369089058447e-220 < V < 8.379982210630947e-237

    1. Initial program 30.0

      \[c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\]
    2. Using strategy rm
    3. Applied add-cube-cbrt30.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 associate-/l*30.3

      \[\leadsto c0 \cdot \sqrt{\color{blue}{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{\frac{V \cdot \ell}{\sqrt[3]{A}}}}}\]
    5. Using strategy rm
    6. Applied div-inv30.4

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

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

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

      \[\leadsto c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \color{blue}{\sqrt{\frac{\sqrt[3]{A}}{V \cdot \ell}}}\right)\]
    10. Using strategy rm
    11. Applied clear-num25.8

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

    if 8.379982210630947e-237 < V

    1. Initial program 16.9

      \[c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\]
    2. Using strategy rm
    3. Applied add-cube-cbrt17.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 associate-/l*17.3

      \[\leadsto c0 \cdot \sqrt{\color{blue}{\frac{\sqrt[3]{A} \cdot \sqrt[3]{A}}{\frac{V \cdot \ell}{\sqrt[3]{A}}}}}\]
    5. Using strategy rm
    6. Applied div-inv17.3

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

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

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

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

      \[\leadsto c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \sqrt{\frac{\sqrt[3]{\color{blue}{\left(\sqrt[3]{A} \cdot \sqrt[3]{A}\right) \cdot \sqrt[3]{A}}}}{V \cdot \ell}}\right)\]
    12. Applied cbrt-prod11.7

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

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;V \le -7.24944730302796452 \cdot 10^{-9}:\\ \;\;\;\;\left(\sqrt[3]{c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \sqrt{\frac{\sqrt[3]{A}}{V \cdot \ell}}\right)} \cdot \sqrt[3]{c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \sqrt{\frac{\sqrt[3]{A}}{V \cdot \ell}}\right)}\right) \cdot \sqrt[3]{c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \sqrt{\frac{\sqrt[3]{A}}{V \cdot \ell}}\right)}\\ \mathbf{elif}\;V \le -3.2698369089058447 \cdot 10^{-220}:\\ \;\;\;\;c0 \cdot \sqrt{\frac{\frac{A}{V}}{\ell}}\\ \mathbf{elif}\;V \le 8.37998221063094693 \cdot 10^{-237}:\\ \;\;\;\;c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \sqrt{\frac{1}{\frac{V \cdot \ell}{\sqrt[3]{A}}}}\right)\\ \mathbf{else}:\\ \;\;\;\;c0 \cdot \left(\left|\sqrt[3]{A}\right| \cdot \left(\sqrt{\frac{\sqrt[3]{\sqrt[3]{A} \cdot \sqrt[3]{A}}}{V}} \cdot \sqrt{\frac{\sqrt[3]{\sqrt[3]{A}}}{\ell}}\right)\right)\\ \end{array}\]

Reproduce

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