Average Error: 2.1 → 2.1
Time: 33.6s
Precision: 64
\[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}\]
\[\frac{x \cdot e^{\left(\left(y \cdot \left(2 \cdot \log \left(\sqrt[3]{z}\right)\right) + y \cdot \log \left(\sqrt[3]{z}\right)\right) + \left(t - 1\right) \cdot \log a\right) - b}}{y}\]
\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}
\frac{x \cdot e^{\left(\left(y \cdot \left(2 \cdot \log \left(\sqrt[3]{z}\right)\right) + y \cdot \log \left(\sqrt[3]{z}\right)\right) + \left(t - 1\right) \cdot \log a\right) - b}}{y}
double f(double x, double y, double z, double t, double a, double b) {
        double r69034 = x;
        double r69035 = y;
        double r69036 = z;
        double r69037 = log(r69036);
        double r69038 = r69035 * r69037;
        double r69039 = t;
        double r69040 = 1.0;
        double r69041 = r69039 - r69040;
        double r69042 = a;
        double r69043 = log(r69042);
        double r69044 = r69041 * r69043;
        double r69045 = r69038 + r69044;
        double r69046 = b;
        double r69047 = r69045 - r69046;
        double r69048 = exp(r69047);
        double r69049 = r69034 * r69048;
        double r69050 = r69049 / r69035;
        return r69050;
}

double f(double x, double y, double z, double t, double a, double b) {
        double r69051 = x;
        double r69052 = y;
        double r69053 = 2.0;
        double r69054 = z;
        double r69055 = cbrt(r69054);
        double r69056 = log(r69055);
        double r69057 = r69053 * r69056;
        double r69058 = r69052 * r69057;
        double r69059 = r69052 * r69056;
        double r69060 = r69058 + r69059;
        double r69061 = t;
        double r69062 = 1.0;
        double r69063 = r69061 - r69062;
        double r69064 = a;
        double r69065 = log(r69064);
        double r69066 = r69063 * r69065;
        double r69067 = r69060 + r69066;
        double r69068 = b;
        double r69069 = r69067 - r69068;
        double r69070 = exp(r69069);
        double r69071 = r69051 * r69070;
        double r69072 = r69071 / r69052;
        return r69072;
}

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 2.1

    \[\frac{x \cdot e^{\left(y \cdot \log z + \left(t - 1\right) \cdot \log a\right) - b}}{y}\]
  2. Using strategy rm
  3. Applied add-cube-cbrt2.1

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

    \[\leadsto \frac{x \cdot e^{\left(y \cdot \color{blue}{\left(\log \left(\sqrt[3]{z} \cdot \sqrt[3]{z}\right) + \log \left(\sqrt[3]{z}\right)\right)} + \left(t - 1\right) \cdot \log a\right) - b}}{y}\]
  5. Applied distribute-lft-in2.1

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

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

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

Reproduce

herbie shell --seed 2019347 +o rules:numerics
(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))