Average Error: 1.9 → 1.1
Time: 14.4s
Precision: 64
\[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}\]
\[\frac{x \cdot \frac{{\left(\frac{1}{a}\right)}^{1}}{e^{y \cdot \log \left(\frac{1}{z}\right) + \left(\log \left(\frac{1}{a}\right) \cdot t + b\right)}}}{y}\]
\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}
\frac{x \cdot \frac{{\left(\frac{1}{a}\right)}^{1}}{e^{y \cdot \log \left(\frac{1}{z}\right) + \left(\log \left(\frac{1}{a}\right) \cdot t + b\right)}}}{y}
double f(double x, double y, double z, double t, double a, double b) {
        double r91771 = x;
        double r91772 = y;
        double r91773 = z;
        double r91774 = log(r91773);
        double r91775 = r91772 * r91774;
        double r91776 = t;
        double r91777 = 1.0;
        double r91778 = r91776 - r91777;
        double r91779 = a;
        double r91780 = log(r91779);
        double r91781 = r91778 * r91780;
        double r91782 = r91775 + r91781;
        double r91783 = b;
        double r91784 = r91782 - r91783;
        double r91785 = exp(r91784);
        double r91786 = r91771 * r91785;
        double r91787 = r91786 / r91772;
        return r91787;
}

double f(double x, double y, double z, double t, double a, double b) {
        double r91788 = x;
        double r91789 = 1.0;
        double r91790 = a;
        double r91791 = r91789 / r91790;
        double r91792 = 1.0;
        double r91793 = pow(r91791, r91792);
        double r91794 = y;
        double r91795 = z;
        double r91796 = r91789 / r91795;
        double r91797 = log(r91796);
        double r91798 = r91794 * r91797;
        double r91799 = log(r91791);
        double r91800 = t;
        double r91801 = r91799 * r91800;
        double r91802 = b;
        double r91803 = r91801 + r91802;
        double r91804 = r91798 + r91803;
        double r91805 = exp(r91804);
        double r91806 = r91793 / r91805;
        double r91807 = r91788 * r91806;
        double r91808 = r91807 / r91794;
        return r91808;
}

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

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

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 \frac{x \cdot \color{blue}{e^{1 \cdot \log \left(\frac{1}{a}\right) - \left(y \cdot \log \left(\frac{1}{z}\right) + \left(\log \left(\frac{1}{a}\right) \cdot t + b\right)\right)}}}{y}\]
  3. Simplified1.1

    \[\leadsto \frac{x \cdot \color{blue}{\frac{{\left(\frac{1}{a}\right)}^{1}}{e^{y \cdot \log \left(\frac{1}{z}\right) + \left(\log \left(\frac{1}{a}\right) \cdot t + b\right)}}}}{y}\]
  4. Final simplification1.1

    \[\leadsto \frac{x \cdot \frac{{\left(\frac{1}{a}\right)}^{1}}{e^{y \cdot \log \left(\frac{1}{z}\right) + \left(\log \left(\frac{1}{a}\right) \cdot t + b\right)}}}{y}\]

Reproduce

herbie shell --seed 2020001 
(FPCore (x y z t a b)
  :name "Numeric.SpecFunctions:incompleteBetaWorker from math-functions-0.1.5.2"
  :precision binary64
  (/ (* x (exp (- (+ (* y (log z)) (* (- t 1) (log a))) b))) y))