Average Error: 0.1 → 0.1
Time: 12.5s
Precision: 64
\[\left(\left(x \cdot \log y - y\right) - z\right) + \log t\]
\[\left(\left(\left(\left(2 \cdot \log \left(\sqrt[3]{y}\right)\right) \cdot x + x \cdot \log \left({\left(\frac{1}{y}\right)}^{\frac{-1}{3}}\right)\right) - y\right) - z\right) + \log t\]
\left(\left(x \cdot \log y - y\right) - z\right) + \log t
\left(\left(\left(\left(2 \cdot \log \left(\sqrt[3]{y}\right)\right) \cdot x + x \cdot \log \left({\left(\frac{1}{y}\right)}^{\frac{-1}{3}}\right)\right) - y\right) - z\right) + \log t
double f(double x, double y, double z, double t) {
        double r117071 = x;
        double r117072 = y;
        double r117073 = log(r117072);
        double r117074 = r117071 * r117073;
        double r117075 = r117074 - r117072;
        double r117076 = z;
        double r117077 = r117075 - r117076;
        double r117078 = t;
        double r117079 = log(r117078);
        double r117080 = r117077 + r117079;
        return r117080;
}

double f(double x, double y, double z, double t) {
        double r117081 = 2.0;
        double r117082 = y;
        double r117083 = cbrt(r117082);
        double r117084 = log(r117083);
        double r117085 = r117081 * r117084;
        double r117086 = x;
        double r117087 = r117085 * r117086;
        double r117088 = 1.0;
        double r117089 = r117088 / r117082;
        double r117090 = -0.3333333333333333;
        double r117091 = pow(r117089, r117090);
        double r117092 = log(r117091);
        double r117093 = r117086 * r117092;
        double r117094 = r117087 + r117093;
        double r117095 = r117094 - r117082;
        double r117096 = z;
        double r117097 = r117095 - r117096;
        double r117098 = t;
        double r117099 = log(r117098);
        double r117100 = r117097 + r117099;
        return r117100;
}

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}{\left(2 \cdot \log \left(\sqrt[3]{y}\right)\right) \cdot x} + x \cdot \log \left(\sqrt[3]{y}\right)\right) - y\right) - z\right) + \log t\]
  7. Taylor expanded around inf 0.1

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

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

Reproduce

herbie shell --seed 2020047 
(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)))