Average Error: 1.9 → 1.2
Time: 32.9s
Precision: 64
\[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}\]
\[\frac{\frac{{a}^{0} \cdot x}{e^{\mathsf{fma}\left(y, -\log z, \mathsf{fma}\left(t, -\log a, b\right)\right)} \cdot {a}^{1}}}{y}\]
\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}
\frac{\frac{{a}^{0} \cdot x}{e^{\mathsf{fma}\left(y, -\log z, \mathsf{fma}\left(t, -\log a, b\right)\right)} \cdot {a}^{1}}}{y}
double f(double x, double y, double z, double t, double a, double b) {
        double r104293 = x;
        double r104294 = y;
        double r104295 = z;
        double r104296 = log(r104295);
        double r104297 = r104294 * r104296;
        double r104298 = t;
        double r104299 = 1.0;
        double r104300 = r104298 - r104299;
        double r104301 = a;
        double r104302 = log(r104301);
        double r104303 = r104300 * r104302;
        double r104304 = r104297 + r104303;
        double r104305 = b;
        double r104306 = r104304 - r104305;
        double r104307 = exp(r104306);
        double r104308 = r104293 * r104307;
        double r104309 = r104308 / r104294;
        return r104309;
}

double f(double x, double y, double z, double t, double a, double b) {
        double r104310 = a;
        double r104311 = 0.0;
        double r104312 = pow(r104310, r104311);
        double r104313 = x;
        double r104314 = r104312 * r104313;
        double r104315 = y;
        double r104316 = z;
        double r104317 = log(r104316);
        double r104318 = -r104317;
        double r104319 = t;
        double r104320 = log(r104310);
        double r104321 = -r104320;
        double r104322 = b;
        double r104323 = fma(r104319, r104321, r104322);
        double r104324 = fma(r104315, r104318, r104323);
        double r104325 = exp(r104324);
        double r104326 = 1.0;
        double r104327 = pow(r104310, r104326);
        double r104328 = r104325 * r104327;
        double r104329 = r104314 / r104328;
        double r104330 = r104329 / r104315;
        return r104330;
}

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\right) \cdot \log a\right) - b}}{y}\]
  2. Taylor expanded around inf 1.9

    \[\leadsto \color{blue}{\frac{x \cdot e^{1 \cdot \log \left(\frac{1}{a}\right) - \left(\log \left(\frac{1}{z}\right) \cdot y + \left(b + t \cdot \log \left(\frac{1}{a}\right)\right)\right)}}{y}}\]
  3. Simplified7.7

    \[\leadsto \color{blue}{\frac{\frac{x \cdot {a}^{\left(-1\right)}}{e^{\mathsf{fma}\left(y, -\log z, \mathsf{fma}\left(t, -\log a, b\right)\right)}}}{y}}\]
  4. Using strategy rm
  5. Applied sqr-pow7.7

    \[\leadsto \frac{\frac{x \cdot \color{blue}{\left({a}^{\left(\frac{-1}{2}\right)} \cdot {a}^{\left(\frac{-1}{2}\right)}\right)}}{e^{\mathsf{fma}\left(y, -\log z, \mathsf{fma}\left(t, -\log a, b\right)\right)}}}{y}\]
  6. Applied associate-*r*7.7

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

    \[\leadsto \frac{\frac{\left(x \cdot {a}^{\left(\frac{-1}{2}\right)}\right) \cdot {a}^{\left(\frac{\color{blue}{0 - 1}}{2}\right)}}{e^{\mathsf{fma}\left(y, -\log z, \mathsf{fma}\left(t, -\log a, b\right)\right)}}}{y}\]
  9. Applied div-sub7.7

    \[\leadsto \frac{\frac{\left(x \cdot {a}^{\left(\frac{-1}{2}\right)}\right) \cdot {a}^{\color{blue}{\left(\frac{0}{2} - \frac{1}{2}\right)}}}{e^{\mathsf{fma}\left(y, -\log z, \mathsf{fma}\left(t, -\log a, b\right)\right)}}}{y}\]
  10. Applied pow-sub7.7

    \[\leadsto \frac{\frac{\left(x \cdot {a}^{\left(\frac{-1}{2}\right)}\right) \cdot \color{blue}{\frac{{a}^{\left(\frac{0}{2}\right)}}{{a}^{\left(\frac{1}{2}\right)}}}}{e^{\mathsf{fma}\left(y, -\log z, \mathsf{fma}\left(t, -\log a, b\right)\right)}}}{y}\]
  11. Applied distribute-frac-neg7.7

    \[\leadsto \frac{\frac{\left(x \cdot {a}^{\color{blue}{\left(-\frac{1}{2}\right)}}\right) \cdot \frac{{a}^{\left(\frac{0}{2}\right)}}{{a}^{\left(\frac{1}{2}\right)}}}{e^{\mathsf{fma}\left(y, -\log z, \mathsf{fma}\left(t, -\log a, b\right)\right)}}}{y}\]
  12. Applied pow-neg7.7

    \[\leadsto \frac{\frac{\left(x \cdot \color{blue}{\frac{1}{{a}^{\left(\frac{1}{2}\right)}}}\right) \cdot \frac{{a}^{\left(\frac{0}{2}\right)}}{{a}^{\left(\frac{1}{2}\right)}}}{e^{\mathsf{fma}\left(y, -\log z, \mathsf{fma}\left(t, -\log a, b\right)\right)}}}{y}\]
  13. Applied un-div-inv7.7

    \[\leadsto \frac{\frac{\color{blue}{\frac{x}{{a}^{\left(\frac{1}{2}\right)}}} \cdot \frac{{a}^{\left(\frac{0}{2}\right)}}{{a}^{\left(\frac{1}{2}\right)}}}{e^{\mathsf{fma}\left(y, -\log z, \mathsf{fma}\left(t, -\log a, b\right)\right)}}}{y}\]
  14. Applied frac-times7.7

    \[\leadsto \frac{\frac{\color{blue}{\frac{x \cdot {a}^{\left(\frac{0}{2}\right)}}{{a}^{\left(\frac{1}{2}\right)} \cdot {a}^{\left(\frac{1}{2}\right)}}}}{e^{\mathsf{fma}\left(y, -\log z, \mathsf{fma}\left(t, -\log a, b\right)\right)}}}{y}\]
  15. Applied associate-/l/1.2

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

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

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

Reproduce

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