Average Error: 1.9 → 1.1
Time: 2.6m
Precision: 64
\[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}{y}\]
\[\frac{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\log a \cdot \left(t - 1.0\right)\right)\right) - b}}}{\sqrt[3]{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \sqrt[3]{\sqrt[3]{y}}} \cdot \frac{x}{\frac{\sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\log a \cdot \left(t - 1.0\right)\right)\right) - b}}} \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\log a \cdot \left(t - 1.0\right)\right)\right) - b}}}}\]
\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}{y}
\frac{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\log a \cdot \left(t - 1.0\right)\right)\right) - b}}}{\sqrt[3]{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \sqrt[3]{\sqrt[3]{y}}} \cdot \frac{x}{\frac{\sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\log a \cdot \left(t - 1.0\right)\right)\right) - b}}} \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\log a \cdot \left(t - 1.0\right)\right)\right) - b}}}}
double f(double x, double y, double z, double t, double a, double b) {
        double r16758713 = x;
        double r16758714 = y;
        double r16758715 = z;
        double r16758716 = log(r16758715);
        double r16758717 = r16758714 * r16758716;
        double r16758718 = t;
        double r16758719 = 1.0;
        double r16758720 = r16758718 - r16758719;
        double r16758721 = a;
        double r16758722 = log(r16758721);
        double r16758723 = r16758720 * r16758722;
        double r16758724 = r16758717 + r16758723;
        double r16758725 = b;
        double r16758726 = r16758724 - r16758725;
        double r16758727 = exp(r16758726);
        double r16758728 = r16758713 * r16758727;
        double r16758729 = r16758728 / r16758714;
        return r16758729;
}

double f(double x, double y, double z, double t, double a, double b) {
        double r16758730 = y;
        double r16758731 = z;
        double r16758732 = log(r16758731);
        double r16758733 = a;
        double r16758734 = log(r16758733);
        double r16758735 = t;
        double r16758736 = 1.0;
        double r16758737 = r16758735 - r16758736;
        double r16758738 = r16758734 * r16758737;
        double r16758739 = fma(r16758730, r16758732, r16758738);
        double r16758740 = b;
        double r16758741 = r16758739 - r16758740;
        double r16758742 = exp(r16758741);
        double r16758743 = cbrt(r16758742);
        double r16758744 = cbrt(r16758730);
        double r16758745 = r16758744 * r16758744;
        double r16758746 = cbrt(r16758745);
        double r16758747 = cbrt(r16758744);
        double r16758748 = r16758746 * r16758747;
        double r16758749 = r16758743 / r16758748;
        double r16758750 = x;
        double r16758751 = r16758744 / r16758743;
        double r16758752 = r16758751 * r16758751;
        double r16758753 = r16758750 / r16758752;
        double r16758754 = r16758749 * r16758753;
        return r16758754;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Bits error versus a

Bits error versus b

Derivation

  1. Initial program 1.9

    \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}{y}\]
  2. Using strategy rm
  3. Applied *-un-lft-identity1.9

    \[\leadsto \frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}{\color{blue}{1 \cdot y}}\]
  4. Applied times-frac2.2

    \[\leadsto \color{blue}{\frac{x}{1} \cdot \frac{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}{y}}\]
  5. Simplified2.2

    \[\leadsto \color{blue}{x} \cdot \frac{e^{\left(y \cdot \log z + \left(t - 1.0\right) \cdot \log a\right) - b}}{y}\]
  6. Simplified2.2

    \[\leadsto x \cdot \color{blue}{\frac{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}{y}}\]
  7. Using strategy rm
  8. Applied add-cube-cbrt2.2

    \[\leadsto x \cdot \frac{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}{\color{blue}{\left(\sqrt[3]{y} \cdot \sqrt[3]{y}\right) \cdot \sqrt[3]{y}}}\]
  9. Applied add-cube-cbrt2.2

    \[\leadsto x \cdot \frac{\color{blue}{\left(\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}} \cdot \sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}\right) \cdot \sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}}}{\left(\sqrt[3]{y} \cdot \sqrt[3]{y}\right) \cdot \sqrt[3]{y}}\]
  10. Applied times-frac2.2

    \[\leadsto x \cdot \color{blue}{\left(\frac{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}} \cdot \sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}}{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \frac{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}}{\sqrt[3]{y}}\right)}\]
  11. Applied associate-*r*1.1

    \[\leadsto \color{blue}{\left(x \cdot \frac{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}} \cdot \sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}}{\sqrt[3]{y} \cdot \sqrt[3]{y}}\right) \cdot \frac{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}}{\sqrt[3]{y}}}\]
  12. Simplified1.1

    \[\leadsto \color{blue}{\frac{x}{\frac{\sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}} \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}}}} \cdot \frac{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}}{\sqrt[3]{y}}\]
  13. Using strategy rm
  14. Applied add-cube-cbrt1.1

    \[\leadsto \frac{x}{\frac{\sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}} \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}}} \cdot \frac{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}}{\sqrt[3]{\color{blue}{\left(\sqrt[3]{y} \cdot \sqrt[3]{y}\right) \cdot \sqrt[3]{y}}}}\]
  15. Applied cbrt-prod1.1

    \[\leadsto \frac{x}{\frac{\sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}} \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}}} \cdot \frac{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\left(t - 1.0\right) \cdot \log a\right)\right) - b}}}{\color{blue}{\sqrt[3]{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \sqrt[3]{\sqrt[3]{y}}}}\]
  16. Final simplification1.1

    \[\leadsto \frac{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\log a \cdot \left(t - 1.0\right)\right)\right) - b}}}{\sqrt[3]{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \sqrt[3]{\sqrt[3]{y}}} \cdot \frac{x}{\frac{\sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\log a \cdot \left(t - 1.0\right)\right)\right) - b}}} \cdot \frac{\sqrt[3]{y}}{\sqrt[3]{e^{\mathsf{fma}\left(y, \left(\log z\right), \left(\log a \cdot \left(t - 1.0\right)\right)\right) - b}}}}\]

Reproduce

herbie shell --seed 2019125 +o rules:numerics
(FPCore (x y z t a b)
  :name "Numeric.SpecFunctions:incompleteBetaWorker from math-functions-0.1.5.2"
  (/ (* x (exp (- (+ (* y (log z)) (* (- t 1.0) (log a))) b))) y))