Average Error: 13.9 → 7.5
Time: 38.7s
Precision: 64
\[w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}\]
\[\begin{array}{l} \mathbf{if}\;M \cdot D \le 2.8410876342275145 \cdot 10^{+273}:\\ \;\;\;\;\sqrt{1 - \left(\frac{\sqrt[3]{h}}{\sqrt[3]{\sqrt[3]{\ell}}} \cdot \left(\frac{M \cdot D}{d \cdot 2} \cdot \frac{\sqrt[3]{h} \cdot \sqrt[3]{h}}{\sqrt[3]{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}}\right)\right) \cdot \frac{\frac{M \cdot D}{d \cdot 2}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot w0\\ \mathbf{else}:\\ \;\;\;\;\sqrt{1 - \sqrt[3]{\frac{h}{\sqrt[3]{\ell}}} \cdot \left(\left(\sqrt[3]{\frac{h}{\sqrt[3]{\ell}}} \cdot \left(\left(\frac{D}{\sqrt[3]{\ell}} \cdot \frac{M}{d \cdot 2}\right) \cdot \left(\frac{D}{\sqrt[3]{\ell}} \cdot \frac{M}{d \cdot 2}\right)\right)\right) \cdot \sqrt[3]{\frac{h}{\sqrt[3]{\ell}}}\right)} \cdot w0\\ \end{array}\]
w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}
\begin{array}{l}
\mathbf{if}\;M \cdot D \le 2.8410876342275145 \cdot 10^{+273}:\\
\;\;\;\;\sqrt{1 - \left(\frac{\sqrt[3]{h}}{\sqrt[3]{\sqrt[3]{\ell}}} \cdot \left(\frac{M \cdot D}{d \cdot 2} \cdot \frac{\sqrt[3]{h} \cdot \sqrt[3]{h}}{\sqrt[3]{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}}\right)\right) \cdot \frac{\frac{M \cdot D}{d \cdot 2}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot w0\\

\mathbf{else}:\\
\;\;\;\;\sqrt{1 - \sqrt[3]{\frac{h}{\sqrt[3]{\ell}}} \cdot \left(\left(\sqrt[3]{\frac{h}{\sqrt[3]{\ell}}} \cdot \left(\left(\frac{D}{\sqrt[3]{\ell}} \cdot \frac{M}{d \cdot 2}\right) \cdot \left(\frac{D}{\sqrt[3]{\ell}} \cdot \frac{M}{d \cdot 2}\right)\right)\right) \cdot \sqrt[3]{\frac{h}{\sqrt[3]{\ell}}}\right)} \cdot w0\\

\end{array}
double f(double w0, double M, double D, double h, double l, double d) {
        double r6804502 = w0;
        double r6804503 = 1.0;
        double r6804504 = M;
        double r6804505 = D;
        double r6804506 = r6804504 * r6804505;
        double r6804507 = 2.0;
        double r6804508 = d;
        double r6804509 = r6804507 * r6804508;
        double r6804510 = r6804506 / r6804509;
        double r6804511 = pow(r6804510, r6804507);
        double r6804512 = h;
        double r6804513 = l;
        double r6804514 = r6804512 / r6804513;
        double r6804515 = r6804511 * r6804514;
        double r6804516 = r6804503 - r6804515;
        double r6804517 = sqrt(r6804516);
        double r6804518 = r6804502 * r6804517;
        return r6804518;
}

double f(double w0, double M, double D, double h, double l, double d) {
        double r6804519 = M;
        double r6804520 = D;
        double r6804521 = r6804519 * r6804520;
        double r6804522 = 2.8410876342275145e+273;
        bool r6804523 = r6804521 <= r6804522;
        double r6804524 = 1.0;
        double r6804525 = h;
        double r6804526 = cbrt(r6804525);
        double r6804527 = l;
        double r6804528 = cbrt(r6804527);
        double r6804529 = cbrt(r6804528);
        double r6804530 = r6804526 / r6804529;
        double r6804531 = d;
        double r6804532 = 2.0;
        double r6804533 = r6804531 * r6804532;
        double r6804534 = r6804521 / r6804533;
        double r6804535 = r6804526 * r6804526;
        double r6804536 = r6804528 * r6804528;
        double r6804537 = cbrt(r6804536);
        double r6804538 = r6804535 / r6804537;
        double r6804539 = r6804534 * r6804538;
        double r6804540 = r6804530 * r6804539;
        double r6804541 = r6804534 / r6804536;
        double r6804542 = r6804540 * r6804541;
        double r6804543 = r6804524 - r6804542;
        double r6804544 = sqrt(r6804543);
        double r6804545 = w0;
        double r6804546 = r6804544 * r6804545;
        double r6804547 = r6804525 / r6804528;
        double r6804548 = cbrt(r6804547);
        double r6804549 = r6804520 / r6804528;
        double r6804550 = r6804519 / r6804533;
        double r6804551 = r6804549 * r6804550;
        double r6804552 = r6804551 * r6804551;
        double r6804553 = r6804548 * r6804552;
        double r6804554 = r6804553 * r6804548;
        double r6804555 = r6804548 * r6804554;
        double r6804556 = r6804524 - r6804555;
        double r6804557 = sqrt(r6804556);
        double r6804558 = r6804557 * r6804545;
        double r6804559 = r6804523 ? r6804546 : r6804558;
        return r6804559;
}

Error

Bits error versus w0

Bits error versus M

Bits error versus D

Bits error versus h

Bits error versus l

Bits error versus d

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if (* M D) < 2.8410876342275145e+273

    1. Initial program 13.0

      \[w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}\]
    2. Simplified13.0

      \[\leadsto \color{blue}{\sqrt{1 - \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \frac{h}{\ell}} \cdot w0}\]
    3. Using strategy rm
    4. Applied add-cube-cbrt13.0

      \[\leadsto \sqrt{1 - \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \frac{h}{\color{blue}{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right) \cdot \sqrt[3]{\ell}}}} \cdot w0\]
    5. Applied *-un-lft-identity13.0

      \[\leadsto \sqrt{1 - \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \frac{\color{blue}{1 \cdot h}}{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right) \cdot \sqrt[3]{\ell}}} \cdot w0\]
    6. Applied times-frac13.0

      \[\leadsto \sqrt{1 - \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \color{blue}{\left(\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \frac{h}{\sqrt[3]{\ell}}\right)}} \cdot w0\]
    7. Applied associate-*r*10.3

      \[\leadsto \sqrt{1 - \color{blue}{\left(\left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}\right) \cdot \frac{h}{\sqrt[3]{\ell}}}} \cdot w0\]
    8. Simplified9.3

      \[\leadsto \sqrt{1 - \color{blue}{\left(\frac{\frac{M \cdot D}{2 \cdot d}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \frac{M \cdot D}{2 \cdot d}\right)} \cdot \frac{h}{\sqrt[3]{\ell}}} \cdot w0\]
    9. Using strategy rm
    10. Applied associate-*l*8.1

      \[\leadsto \sqrt{1 - \color{blue}{\frac{\frac{M \cdot D}{2 \cdot d}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{h}{\sqrt[3]{\ell}}\right)}} \cdot w0\]
    11. Using strategy rm
    12. Applied add-cube-cbrt8.1

      \[\leadsto \sqrt{1 - \frac{\frac{M \cdot D}{2 \cdot d}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{h}{\sqrt[3]{\color{blue}{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right) \cdot \sqrt[3]{\ell}}}}\right)} \cdot w0\]
    13. Applied cbrt-prod8.1

      \[\leadsto \sqrt{1 - \frac{\frac{M \cdot D}{2 \cdot d}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{h}{\color{blue}{\sqrt[3]{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \sqrt[3]{\sqrt[3]{\ell}}}}\right)} \cdot w0\]
    14. Applied add-cube-cbrt8.1

      \[\leadsto \sqrt{1 - \frac{\frac{M \cdot D}{2 \cdot d}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{\color{blue}{\left(\sqrt[3]{h} \cdot \sqrt[3]{h}\right) \cdot \sqrt[3]{h}}}{\sqrt[3]{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \sqrt[3]{\sqrt[3]{\ell}}}\right)} \cdot w0\]
    15. Applied times-frac8.1

      \[\leadsto \sqrt{1 - \frac{\frac{M \cdot D}{2 \cdot d}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \left(\frac{M \cdot D}{2 \cdot d} \cdot \color{blue}{\left(\frac{\sqrt[3]{h} \cdot \sqrt[3]{h}}{\sqrt[3]{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot \frac{\sqrt[3]{h}}{\sqrt[3]{\sqrt[3]{\ell}}}\right)}\right)} \cdot w0\]
    16. Applied associate-*r*6.8

      \[\leadsto \sqrt{1 - \frac{\frac{M \cdot D}{2 \cdot d}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \color{blue}{\left(\left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{\sqrt[3]{h} \cdot \sqrt[3]{h}}{\sqrt[3]{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}}\right) \cdot \frac{\sqrt[3]{h}}{\sqrt[3]{\sqrt[3]{\ell}}}\right)}} \cdot w0\]

    if 2.8410876342275145e+273 < (* M D)

    1. Initial program 53.0

      \[w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}\]
    2. Simplified53.0

      \[\leadsto \color{blue}{\sqrt{1 - \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \frac{h}{\ell}} \cdot w0}\]
    3. Using strategy rm
    4. Applied add-cube-cbrt53.1

      \[\leadsto \sqrt{1 - \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \frac{h}{\color{blue}{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right) \cdot \sqrt[3]{\ell}}}} \cdot w0\]
    5. Applied *-un-lft-identity53.1

      \[\leadsto \sqrt{1 - \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \frac{\color{blue}{1 \cdot h}}{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right) \cdot \sqrt[3]{\ell}}} \cdot w0\]
    6. Applied times-frac53.1

      \[\leadsto \sqrt{1 - \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \color{blue}{\left(\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \frac{h}{\sqrt[3]{\ell}}\right)}} \cdot w0\]
    7. Applied associate-*r*53.2

      \[\leadsto \sqrt{1 - \color{blue}{\left(\left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}\right) \cdot \frac{h}{\sqrt[3]{\ell}}}} \cdot w0\]
    8. Simplified51.3

      \[\leadsto \sqrt{1 - \color{blue}{\left(\frac{\frac{M \cdot D}{2 \cdot d}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \frac{M \cdot D}{2 \cdot d}\right)} \cdot \frac{h}{\sqrt[3]{\ell}}} \cdot w0\]
    9. Using strategy rm
    10. Applied add-cube-cbrt51.3

      \[\leadsto \sqrt{1 - \left(\frac{\frac{M \cdot D}{2 \cdot d}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \color{blue}{\left(\left(\sqrt[3]{\frac{h}{\sqrt[3]{\ell}}} \cdot \sqrt[3]{\frac{h}{\sqrt[3]{\ell}}}\right) \cdot \sqrt[3]{\frac{h}{\sqrt[3]{\ell}}}\right)}} \cdot w0\]
    11. Applied associate-*r*51.3

      \[\leadsto \sqrt{1 - \color{blue}{\left(\left(\frac{\frac{M \cdot D}{2 \cdot d}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \left(\sqrt[3]{\frac{h}{\sqrt[3]{\ell}}} \cdot \sqrt[3]{\frac{h}{\sqrt[3]{\ell}}}\right)\right) \cdot \sqrt[3]{\frac{h}{\sqrt[3]{\ell}}}}} \cdot w0\]
    12. Simplified38.5

      \[\leadsto \sqrt{1 - \color{blue}{\left(\left(\left(\left(\frac{D}{\sqrt[3]{\ell}} \cdot \frac{M}{d \cdot 2}\right) \cdot \left(\frac{D}{\sqrt[3]{\ell}} \cdot \frac{M}{d \cdot 2}\right)\right) \cdot \sqrt[3]{\frac{h}{\sqrt[3]{\ell}}}\right) \cdot \sqrt[3]{\frac{h}{\sqrt[3]{\ell}}}\right)} \cdot \sqrt[3]{\frac{h}{\sqrt[3]{\ell}}}} \cdot w0\]
  3. Recombined 2 regimes into one program.
  4. Final simplification7.5

    \[\leadsto \begin{array}{l} \mathbf{if}\;M \cdot D \le 2.8410876342275145 \cdot 10^{+273}:\\ \;\;\;\;\sqrt{1 - \left(\frac{\sqrt[3]{h}}{\sqrt[3]{\sqrt[3]{\ell}}} \cdot \left(\frac{M \cdot D}{d \cdot 2} \cdot \frac{\sqrt[3]{h} \cdot \sqrt[3]{h}}{\sqrt[3]{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}}\right)\right) \cdot \frac{\frac{M \cdot D}{d \cdot 2}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot w0\\ \mathbf{else}:\\ \;\;\;\;\sqrt{1 - \sqrt[3]{\frac{h}{\sqrt[3]{\ell}}} \cdot \left(\left(\sqrt[3]{\frac{h}{\sqrt[3]{\ell}}} \cdot \left(\left(\frac{D}{\sqrt[3]{\ell}} \cdot \frac{M}{d \cdot 2}\right) \cdot \left(\frac{D}{\sqrt[3]{\ell}} \cdot \frac{M}{d \cdot 2}\right)\right)\right) \cdot \sqrt[3]{\frac{h}{\sqrt[3]{\ell}}}\right)} \cdot w0\\ \end{array}\]

Reproduce

herbie shell --seed 2019149 
(FPCore (w0 M D h l d)
  :name "Henrywood and Agarwal, Equation (9a)"
  (* w0 (sqrt (- 1 (* (pow (/ (* M D) (* 2 d)) 2) (/ h l))))))