Average Error: 25.3 → 17.5
Time: 1.3m
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|\frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}\right| \cdot \sqrt{\frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}, \frac{-1}{2} \cdot \left(\left(\frac{1}{\ell} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot h\right)\right) \cdot \frac{M}{\frac{2}{\frac{D}{d}}}\right), \left(\sqrt{\frac{d}{\sqrt[3]{\ell}}} \cdot \sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}}\right) \cdot \left(\sqrt{\frac{1}{\sqrt[3]{h} \cdot \sqrt[3]{h}}} \cdot \sqrt{\frac{d}{\sqrt[3]{h}}}\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|\frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}\right| \cdot \sqrt{\frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}, \frac{-1}{2} \cdot \left(\left(\frac{1}{\ell} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot h\right)\right) \cdot \frac{M}{\frac{2}{\frac{D}{d}}}\right), \left(\sqrt{\frac{d}{\sqrt[3]{\ell}}} \cdot \sqrt{\frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}}\right) \cdot \left(\sqrt{\frac{1}{\sqrt[3]{h} \cdot \sqrt[3]{h}}} \cdot \sqrt{\frac{d}{\sqrt[3]{h}}}\right)\right)
double f(double d, double h, double l, double M, double D) {
        double r5210687 = d;
        double r5210688 = h;
        double r5210689 = r5210687 / r5210688;
        double r5210690 = 1.0;
        double r5210691 = 2.0;
        double r5210692 = r5210690 / r5210691;
        double r5210693 = pow(r5210689, r5210692);
        double r5210694 = l;
        double r5210695 = r5210687 / r5210694;
        double r5210696 = pow(r5210695, r5210692);
        double r5210697 = r5210693 * r5210696;
        double r5210698 = M;
        double r5210699 = D;
        double r5210700 = r5210698 * r5210699;
        double r5210701 = r5210691 * r5210687;
        double r5210702 = r5210700 / r5210701;
        double r5210703 = pow(r5210702, r5210691);
        double r5210704 = r5210692 * r5210703;
        double r5210705 = r5210688 / r5210694;
        double r5210706 = r5210704 * r5210705;
        double r5210707 = r5210690 - r5210706;
        double r5210708 = r5210697 * r5210707;
        return r5210708;
}

double f(double d, double h, double l, double M, double D) {
        double r5210709 = d;
        double r5210710 = cbrt(r5210709);
        double r5210711 = l;
        double r5210712 = cbrt(r5210711);
        double r5210713 = r5210710 / r5210712;
        double r5210714 = fabs(r5210713);
        double r5210715 = sqrt(r5210713);
        double r5210716 = r5210714 * r5210715;
        double r5210717 = h;
        double r5210718 = r5210709 / r5210717;
        double r5210719 = sqrt(r5210718);
        double r5210720 = r5210716 * r5210719;
        double r5210721 = -0.5;
        double r5210722 = 1.0;
        double r5210723 = r5210722 / r5210711;
        double r5210724 = M;
        double r5210725 = 2.0;
        double r5210726 = D;
        double r5210727 = r5210726 / r5210709;
        double r5210728 = r5210725 / r5210727;
        double r5210729 = r5210724 / r5210728;
        double r5210730 = r5210729 * r5210717;
        double r5210731 = r5210723 * r5210730;
        double r5210732 = r5210731 * r5210729;
        double r5210733 = r5210721 * r5210732;
        double r5210734 = r5210709 / r5210712;
        double r5210735 = sqrt(r5210734);
        double r5210736 = r5210712 * r5210712;
        double r5210737 = r5210722 / r5210736;
        double r5210738 = sqrt(r5210737);
        double r5210739 = r5210735 * r5210738;
        double r5210740 = cbrt(r5210717);
        double r5210741 = r5210740 * r5210740;
        double r5210742 = r5210722 / r5210741;
        double r5210743 = sqrt(r5210742);
        double r5210744 = r5210709 / r5210740;
        double r5210745 = sqrt(r5210744);
        double r5210746 = r5210743 * r5210745;
        double r5210747 = r5210739 * r5210746;
        double r5210748 = fma(r5210720, r5210733, r5210747);
        return r5210748;
}

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 25.3

    \[\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. Simplified24.5

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

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

    \[\leadsto \mathsf{fma}\left(\sqrt{\frac{d}{\ell}} \cdot \sqrt{\frac{d}{h}}, \frac{-1}{2} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \frac{h}{\ell}\right)\right), \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)\]
  6. Applied times-frac24.7

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

    \[\leadsto \mathsf{fma}\left(\sqrt{\frac{d}{\ell}} \cdot \sqrt{\frac{d}{h}}, \frac{-1}{2} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \frac{h}{\ell}\right)\right), \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)\]
  8. Using strategy rm
  9. Applied add-cube-cbrt22.7

    \[\leadsto \mathsf{fma}\left(\sqrt{\frac{d}{\color{blue}{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right) \cdot \sqrt[3]{\ell}}}} \cdot \sqrt{\frac{d}{h}}, \frac{-1}{2} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \frac{h}{\ell}\right)\right), \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)\]
  10. Applied add-cube-cbrt22.8

    \[\leadsto \mathsf{fma}\left(\sqrt{\frac{\color{blue}{\left(\sqrt[3]{d} \cdot \sqrt[3]{d}\right) \cdot \sqrt[3]{d}}}{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right) \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{d}{h}}, \frac{-1}{2} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \frac{h}{\ell}\right)\right), \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)\]
  11. Applied times-frac22.8

    \[\leadsto \mathsf{fma}\left(\sqrt{\color{blue}{\frac{\sqrt[3]{d} \cdot \sqrt[3]{d}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}}} \cdot \sqrt{\frac{d}{h}}, \frac{-1}{2} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \frac{h}{\ell}\right)\right), \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)\]
  12. Applied sqrt-prod21.0

    \[\leadsto \mathsf{fma}\left(\color{blue}{\left(\sqrt{\frac{\sqrt[3]{d} \cdot \sqrt[3]{d}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}} \cdot \sqrt{\frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}}\right)} \cdot \sqrt{\frac{d}{h}}, \frac{-1}{2} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \frac{h}{\ell}\right)\right), \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)\]
  13. Simplified21.0

    \[\leadsto \mathsf{fma}\left(\left(\color{blue}{\left|\frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}\right|} \cdot \sqrt{\frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}, \frac{-1}{2} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \frac{h}{\ell}\right)\right), \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)\]
  14. Using strategy rm
  15. Applied div-inv21.1

    \[\leadsto \mathsf{fma}\left(\left(\left|\frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}\right| \cdot \sqrt{\frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}, \frac{-1}{2} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \color{blue}{\left(h \cdot \frac{1}{\ell}\right)}\right)\right), \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)\]
  16. Applied associate-*r*17.9

    \[\leadsto \mathsf{fma}\left(\left(\left|\frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}\right| \cdot \sqrt{\frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}, \frac{-1}{2} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \color{blue}{\left(\left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot h\right) \cdot \frac{1}{\ell}\right)}\right), \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)\]
  17. Using strategy rm
  18. Applied add-cube-cbrt18.0

    \[\leadsto \mathsf{fma}\left(\left(\left|\frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}\right| \cdot \sqrt{\frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}, \frac{-1}{2} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \left(\left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot h\right) \cdot \frac{1}{\ell}\right)\right), \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}{\left(\sqrt[3]{h} \cdot \sqrt[3]{h}\right) \cdot \sqrt[3]{h}}}}\right)\]
  19. Applied *-un-lft-identity18.0

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

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

    \[\leadsto \mathsf{fma}\left(\left(\left|\frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}\right| \cdot \sqrt{\frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}}\right) \cdot \sqrt{\frac{d}{h}}, \frac{-1}{2} \cdot \left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot \left(\left(\frac{M}{\frac{2}{\frac{D}{d}}} \cdot h\right) \cdot \frac{1}{\ell}\right)\right), \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{1}{\sqrt[3]{h} \cdot \sqrt[3]{h}}} \cdot \sqrt{\frac{d}{\sqrt[3]{h}}}\right)}\right)\]
  22. Final simplification17.5

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

Reproduce

herbie shell --seed 2019141 +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)))))