Average Error: 0.1 → 0.1
Time: 7.2s
Precision: 64
\[\left(\left(x \cdot \log y - y\right) - z\right) + \log t\]
\[\left(\left(\left(x \cdot \left(2 \cdot \log \left(\sqrt[3]{y}\right)\right) + 1 \cdot \left(x \cdot \log \left({y}^{\frac{1}{3}}\right)\right)\right) - y\right) - z\right) + \log t\]
\left(\left(x \cdot \log y - y\right) - z\right) + \log t
\left(\left(\left(x \cdot \left(2 \cdot \log \left(\sqrt[3]{y}\right)\right) + 1 \cdot \left(x \cdot \log \left({y}^{\frac{1}{3}}\right)\right)\right) - y\right) - z\right) + \log t
double f(double x, double y, double z, double t) {
        double r108335 = x;
        double r108336 = y;
        double r108337 = log(r108336);
        double r108338 = r108335 * r108337;
        double r108339 = r108338 - r108336;
        double r108340 = z;
        double r108341 = r108339 - r108340;
        double r108342 = t;
        double r108343 = log(r108342);
        double r108344 = r108341 + r108343;
        return r108344;
}

double f(double x, double y, double z, double t) {
        double r108345 = x;
        double r108346 = 2.0;
        double r108347 = y;
        double r108348 = cbrt(r108347);
        double r108349 = log(r108348);
        double r108350 = r108346 * r108349;
        double r108351 = r108345 * r108350;
        double r108352 = 1.0;
        double r108353 = 0.3333333333333333;
        double r108354 = pow(r108347, r108353);
        double r108355 = log(r108354);
        double r108356 = r108345 * r108355;
        double r108357 = r108352 * r108356;
        double r108358 = r108351 + r108357;
        double r108359 = r108358 - r108347;
        double r108360 = z;
        double r108361 = r108359 - r108360;
        double r108362 = t;
        double r108363 = log(r108362);
        double r108364 = r108361 + r108363;
        return r108364;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.1

    \[\left(\left(x \cdot \log y - y\right) - z\right) + \log t\]
  2. Using strategy rm
  3. Applied add-cube-cbrt0.1

    \[\leadsto \left(\left(x \cdot \log \color{blue}{\left(\left(\sqrt[3]{y} \cdot \sqrt[3]{y}\right) \cdot \sqrt[3]{y}\right)} - y\right) - z\right) + \log t\]
  4. Applied log-prod0.1

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

    \[\leadsto \left(\left(\color{blue}{\left(x \cdot \log \left(\sqrt[3]{y} \cdot \sqrt[3]{y}\right) + x \cdot \log \left(\sqrt[3]{y}\right)\right)} - y\right) - z\right) + \log t\]
  6. Simplified0.1

    \[\leadsto \left(\left(\left(\color{blue}{x \cdot \left(2 \cdot \log \left(\sqrt[3]{y}\right)\right)} + x \cdot \log \left(\sqrt[3]{y}\right)\right) - y\right) - z\right) + \log t\]
  7. Using strategy rm
  8. Applied *-un-lft-identity0.1

    \[\leadsto \left(\left(\left(x \cdot \left(2 \cdot \log \left(\sqrt[3]{y}\right)\right) + \color{blue}{\left(1 \cdot x\right)} \cdot \log \left(\sqrt[3]{y}\right)\right) - y\right) - z\right) + \log t\]
  9. Applied associate-*l*0.1

    \[\leadsto \left(\left(\left(x \cdot \left(2 \cdot \log \left(\sqrt[3]{y}\right)\right) + \color{blue}{1 \cdot \left(x \cdot \log \left(\sqrt[3]{y}\right)\right)}\right) - y\right) - z\right) + \log t\]
  10. Simplified0.1

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

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

Reproduce

herbie shell --seed 2019353 
(FPCore (x y z t)
  :name "Numeric.SpecFunctions:incompleteGamma from math-functions-0.1.5.2, A"
  :precision binary64
  (+ (- (- (* x (log y)) y) z) (log t)))