Average Error: 26.1 → 17.8
Time: 1.6m
Precision: 64
\[\left({\left(\frac{d}{h}\right)}^{\left(\frac{1}{2}\right)} \cdot {\left(\frac{d}{\ell}\right)}^{\left(\frac{1}{2}\right)}\right) \cdot \left(1 - \left(\frac{1}{2} \cdot {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2}\right) \cdot \frac{h}{\ell}\right)\]
\[\mathsf{fma}\left(\left(\left(\sqrt{\frac{d}{\sqrt[3]{\ell}}} \cdot \sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\frac{M}{\frac{d}{D}}}{\frac{-2}{h}} \cdot \frac{\frac{1}{4} \cdot \frac{M}{\frac{d}{D}}}{\ell}\right), \left(\left(\sqrt{\frac{d}{\sqrt[3]{\ell}}} \cdot \sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}}\right) \cdot \left(\sqrt{\frac{\sqrt[3]{d}}{h}} \cdot \sqrt{\sqrt[3]{d} \cdot \sqrt[3]{d}}\right)\right)\right)\]
\left({\left(\frac{d}{h}\right)}^{\left(\frac{1}{2}\right)} \cdot {\left(\frac{d}{\ell}\right)}^{\left(\frac{1}{2}\right)}\right) \cdot \left(1 - \left(\frac{1}{2} \cdot {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2}\right) \cdot \frac{h}{\ell}\right)
\mathsf{fma}\left(\left(\left(\sqrt{\frac{d}{\sqrt[3]{\ell}}} \cdot \sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\frac{M}{\frac{d}{D}}}{\frac{-2}{h}} \cdot \frac{\frac{1}{4} \cdot \frac{M}{\frac{d}{D}}}{\ell}\right), \left(\left(\sqrt{\frac{d}{\sqrt[3]{\ell}}} \cdot \sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}}\right) \cdot \left(\sqrt{\frac{\sqrt[3]{d}}{h}} \cdot \sqrt{\sqrt[3]{d} \cdot \sqrt[3]{d}}\right)\right)\right)
double f(double d, double h, double l, double M, double D) {
        double r7354406 = d;
        double r7354407 = h;
        double r7354408 = r7354406 / r7354407;
        double r7354409 = 1.0;
        double r7354410 = 2.0;
        double r7354411 = r7354409 / r7354410;
        double r7354412 = pow(r7354408, r7354411);
        double r7354413 = l;
        double r7354414 = r7354406 / r7354413;
        double r7354415 = pow(r7354414, r7354411);
        double r7354416 = r7354412 * r7354415;
        double r7354417 = M;
        double r7354418 = D;
        double r7354419 = r7354417 * r7354418;
        double r7354420 = r7354410 * r7354406;
        double r7354421 = r7354419 / r7354420;
        double r7354422 = pow(r7354421, r7354410);
        double r7354423 = r7354411 * r7354422;
        double r7354424 = r7354407 / r7354413;
        double r7354425 = r7354423 * r7354424;
        double r7354426 = r7354409 - r7354425;
        double r7354427 = r7354416 * r7354426;
        return r7354427;
}

double f(double d, double h, double l, double M, double D) {
        double r7354428 = d;
        double r7354429 = l;
        double r7354430 = cbrt(r7354429);
        double r7354431 = r7354428 / r7354430;
        double r7354432 = sqrt(r7354431);
        double r7354433 = 1.0;
        double r7354434 = r7354430 * r7354430;
        double r7354435 = r7354433 / r7354434;
        double r7354436 = sqrt(r7354435);
        double r7354437 = r7354432 * r7354436;
        double r7354438 = h;
        double r7354439 = r7354428 / r7354438;
        double r7354440 = sqrt(r7354439);
        double r7354441 = r7354437 * r7354440;
        double r7354442 = M;
        double r7354443 = D;
        double r7354444 = r7354428 / r7354443;
        double r7354445 = r7354442 / r7354444;
        double r7354446 = -2.0;
        double r7354447 = r7354446 / r7354438;
        double r7354448 = r7354445 / r7354447;
        double r7354449 = 0.25;
        double r7354450 = r7354449 * r7354445;
        double r7354451 = r7354450 / r7354429;
        double r7354452 = r7354448 * r7354451;
        double r7354453 = cbrt(r7354428);
        double r7354454 = r7354453 / r7354438;
        double r7354455 = sqrt(r7354454);
        double r7354456 = r7354453 * r7354453;
        double r7354457 = sqrt(r7354456);
        double r7354458 = r7354455 * r7354457;
        double r7354459 = r7354437 * r7354458;
        double r7354460 = fma(r7354441, r7354452, r7354459);
        return r7354460;
}

Error

Bits error versus d

Bits error versus h

Bits error versus l

Bits error versus M

Bits error versus D

Derivation

  1. Initial program 26.1

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

    \[\leadsto \color{blue}{\mathsf{fma}\left(\left(\sqrt{\frac{d}{\ell}} \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\left(\frac{M}{\frac{d}{D}} \cdot \frac{1}{4}\right) \cdot \frac{M}{\frac{d}{D}}}{\frac{\ell}{\frac{-1}{2} \cdot h}}\right), \left(\sqrt{\frac{d}{\ell}} \cdot \sqrt{\frac{d}{h}}\right)\right)}\]
  3. Using strategy rm
  4. Applied div-inv26.1

    \[\leadsto \mathsf{fma}\left(\left(\sqrt{\frac{d}{\ell}} \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\left(\frac{M}{\frac{d}{D}} \cdot \frac{1}{4}\right) \cdot \frac{M}{\frac{d}{D}}}{\color{blue}{\ell \cdot \frac{1}{\frac{-1}{2} \cdot h}}}\right), \left(\sqrt{\frac{d}{\ell}} \cdot \sqrt{\frac{d}{h}}\right)\right)\]
  5. Applied times-frac23.4

    \[\leadsto \mathsf{fma}\left(\left(\sqrt{\frac{d}{\ell}} \cdot \sqrt{\frac{d}{h}}\right), \color{blue}{\left(\frac{\frac{M}{\frac{d}{D}} \cdot \frac{1}{4}}{\ell} \cdot \frac{\frac{M}{\frac{d}{D}}}{\frac{1}{\frac{-1}{2} \cdot h}}\right)}, \left(\sqrt{\frac{d}{\ell}} \cdot \sqrt{\frac{d}{h}}\right)\right)\]
  6. Simplified23.4

    \[\leadsto \mathsf{fma}\left(\left(\sqrt{\frac{d}{\ell}} \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\frac{M}{\frac{d}{D}} \cdot \frac{1}{4}}{\ell} \cdot \color{blue}{\frac{\frac{M}{\frac{d}{D}}}{\frac{-2}{h}}}\right), \left(\sqrt{\frac{d}{\ell}} \cdot \sqrt{\frac{d}{h}}\right)\right)\]
  7. Using strategy rm
  8. Applied add-cube-cbrt23.6

    \[\leadsto \mathsf{fma}\left(\left(\sqrt{\frac{d}{\ell}} \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\frac{M}{\frac{d}{D}} \cdot \frac{1}{4}}{\ell} \cdot \frac{\frac{M}{\frac{d}{D}}}{\frac{-2}{h}}\right), \left(\sqrt{\frac{d}{\color{blue}{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right) \cdot \sqrt[3]{\ell}}}} \cdot \sqrt{\frac{d}{h}}\right)\right)\]
  9. Applied *-un-lft-identity23.6

    \[\leadsto \mathsf{fma}\left(\left(\sqrt{\frac{d}{\ell}} \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\frac{M}{\frac{d}{D}} \cdot \frac{1}{4}}{\ell} \cdot \frac{\frac{M}{\frac{d}{D}}}{\frac{-2}{h}}\right), \left(\sqrt{\frac{\color{blue}{1 \cdot d}}{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right) \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{d}{h}}\right)\right)\]
  10. Applied times-frac23.6

    \[\leadsto \mathsf{fma}\left(\left(\sqrt{\frac{d}{\ell}} \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\frac{M}{\frac{d}{D}} \cdot \frac{1}{4}}{\ell} \cdot \frac{\frac{M}{\frac{d}{D}}}{\frac{-2}{h}}\right), \left(\sqrt{\color{blue}{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \frac{d}{\sqrt[3]{\ell}}}} \cdot \sqrt{\frac{d}{h}}\right)\right)\]
  11. Applied sqrt-prod21.1

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

    \[\leadsto \mathsf{fma}\left(\left(\sqrt{\frac{d}{\color{blue}{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right) \cdot \sqrt[3]{\ell}}}} \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\frac{M}{\frac{d}{D}} \cdot \frac{1}{4}}{\ell} \cdot \frac{\frac{M}{\frac{d}{D}}}{\frac{-2}{h}}\right), \left(\left(\sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{d}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}\right)\right)\]
  14. Applied *-un-lft-identity21.2

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

    \[\leadsto \mathsf{fma}\left(\left(\sqrt{\color{blue}{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \frac{d}{\sqrt[3]{\ell}}}} \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\frac{M}{\frac{d}{D}} \cdot \frac{1}{4}}{\ell} \cdot \frac{\frac{M}{\frac{d}{D}}}{\frac{-2}{h}}\right), \left(\left(\sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{d}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}\right)\right)\]
  16. Applied sqrt-prod18.2

    \[\leadsto \mathsf{fma}\left(\left(\color{blue}{\left(\sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{d}{\sqrt[3]{\ell}}}\right)} \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\frac{M}{\frac{d}{D}} \cdot \frac{1}{4}}{\ell} \cdot \frac{\frac{M}{\frac{d}{D}}}{\frac{-2}{h}}\right), \left(\left(\sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{d}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}\right)\right)\]
  17. Using strategy rm
  18. Applied *-un-lft-identity18.2

    \[\leadsto \mathsf{fma}\left(\left(\left(\sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{d}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\frac{M}{\frac{d}{D}} \cdot \frac{1}{4}}{\ell} \cdot \frac{\frac{M}{\frac{d}{D}}}{\frac{-2}{h}}\right), \left(\left(\sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{d}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{\color{blue}{1 \cdot h}}}\right)\right)\]
  19. Applied add-cube-cbrt18.3

    \[\leadsto \mathsf{fma}\left(\left(\left(\sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{d}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\frac{M}{\frac{d}{D}} \cdot \frac{1}{4}}{\ell} \cdot \frac{\frac{M}{\frac{d}{D}}}{\frac{-2}{h}}\right), \left(\left(\sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{d}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{\color{blue}{\left(\sqrt[3]{d} \cdot \sqrt[3]{d}\right) \cdot \sqrt[3]{d}}}{1 \cdot h}}\right)\right)\]
  20. Applied times-frac18.3

    \[\leadsto \mathsf{fma}\left(\left(\left(\sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{d}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\frac{M}{\frac{d}{D}} \cdot \frac{1}{4}}{\ell} \cdot \frac{\frac{M}{\frac{d}{D}}}{\frac{-2}{h}}\right), \left(\left(\sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{d}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\color{blue}{\frac{\sqrt[3]{d} \cdot \sqrt[3]{d}}{1} \cdot \frac{\sqrt[3]{d}}{h}}}\right)\right)\]
  21. Applied sqrt-prod17.8

    \[\leadsto \mathsf{fma}\left(\left(\left(\sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{d}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\frac{M}{\frac{d}{D}} \cdot \frac{1}{4}}{\ell} \cdot \frac{\frac{M}{\frac{d}{D}}}{\frac{-2}{h}}\right), \left(\left(\sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{d}{\sqrt[3]{\ell}}}\right) \cdot \color{blue}{\left(\sqrt{\frac{\sqrt[3]{d} \cdot \sqrt[3]{d}}{1}} \cdot \sqrt{\frac{\sqrt[3]{d}}{h}}\right)}\right)\right)\]
  22. Simplified17.8

    \[\leadsto \mathsf{fma}\left(\left(\left(\sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{d}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\frac{M}{\frac{d}{D}} \cdot \frac{1}{4}}{\ell} \cdot \frac{\frac{M}{\frac{d}{D}}}{\frac{-2}{h}}\right), \left(\left(\sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{d}{\sqrt[3]{\ell}}}\right) \cdot \left(\color{blue}{\sqrt{\sqrt[3]{d} \cdot \sqrt[3]{d}}} \cdot \sqrt{\frac{\sqrt[3]{d}}{h}}\right)\right)\right)\]
  23. Final simplification17.8

    \[\leadsto \mathsf{fma}\left(\left(\left(\sqrt{\frac{d}{\sqrt[3]{\ell}}} \cdot \sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}\right), \left(\frac{\frac{M}{\frac{d}{D}}}{\frac{-2}{h}} \cdot \frac{\frac{1}{4} \cdot \frac{M}{\frac{d}{D}}}{\ell}\right), \left(\left(\sqrt{\frac{d}{\sqrt[3]{\ell}}} \cdot \sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}}\right) \cdot \left(\sqrt{\frac{\sqrt[3]{d}}{h}} \cdot \sqrt{\sqrt[3]{d} \cdot \sqrt[3]{d}}\right)\right)\right)\]

Reproduce

herbie shell --seed 2019129 +o rules:numerics
(FPCore (d h l M D)
  :name "Henrywood and Agarwal, Equation (12)"
  (* (* (pow (/ d h) (/ 1 2)) (pow (/ d l) (/ 1 2))) (- 1 (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)))))