Average Error: 0.1 → 0.1
Time: 36.6s
Precision: 64
\[\left(\left(\left(\left(x \cdot \log y + z\right) + t\right) + a\right) + \left(b - 0.5\right) \cdot \log c\right) + y \cdot i\]
\[\left(\log c \cdot \left(b - 0.5\right) + \left(\left(\left(\log \left({y}^{\frac{1}{3}}\right) \cdot x + x \cdot \left(\log \left(\sqrt[3]{y}\right) + \log \left(\sqrt[3]{\sqrt[3]{y}} \cdot \left(\sqrt[3]{\sqrt[3]{y}} \cdot \sqrt[3]{\sqrt[3]{y}}\right)\right)\right)\right) + z\right) + \left(t + a\right)\right)\right) + y \cdot i\]
\left(\left(\left(\left(x \cdot \log y + z\right) + t\right) + a\right) + \left(b - 0.5\right) \cdot \log c\right) + y \cdot i
\left(\log c \cdot \left(b - 0.5\right) + \left(\left(\left(\log \left({y}^{\frac{1}{3}}\right) \cdot x + x \cdot \left(\log \left(\sqrt[3]{y}\right) + \log \left(\sqrt[3]{\sqrt[3]{y}} \cdot \left(\sqrt[3]{\sqrt[3]{y}} \cdot \sqrt[3]{\sqrt[3]{y}}\right)\right)\right)\right) + z\right) + \left(t + a\right)\right)\right) + y \cdot i
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r4721054 = x;
        double r4721055 = y;
        double r4721056 = log(r4721055);
        double r4721057 = r4721054 * r4721056;
        double r4721058 = z;
        double r4721059 = r4721057 + r4721058;
        double r4721060 = t;
        double r4721061 = r4721059 + r4721060;
        double r4721062 = a;
        double r4721063 = r4721061 + r4721062;
        double r4721064 = b;
        double r4721065 = 0.5;
        double r4721066 = r4721064 - r4721065;
        double r4721067 = c;
        double r4721068 = log(r4721067);
        double r4721069 = r4721066 * r4721068;
        double r4721070 = r4721063 + r4721069;
        double r4721071 = i;
        double r4721072 = r4721055 * r4721071;
        double r4721073 = r4721070 + r4721072;
        return r4721073;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r4721074 = c;
        double r4721075 = log(r4721074);
        double r4721076 = b;
        double r4721077 = 0.5;
        double r4721078 = r4721076 - r4721077;
        double r4721079 = r4721075 * r4721078;
        double r4721080 = y;
        double r4721081 = 0.3333333333333333;
        double r4721082 = pow(r4721080, r4721081);
        double r4721083 = log(r4721082);
        double r4721084 = x;
        double r4721085 = r4721083 * r4721084;
        double r4721086 = cbrt(r4721080);
        double r4721087 = log(r4721086);
        double r4721088 = cbrt(r4721086);
        double r4721089 = r4721088 * r4721088;
        double r4721090 = r4721088 * r4721089;
        double r4721091 = log(r4721090);
        double r4721092 = r4721087 + r4721091;
        double r4721093 = r4721084 * r4721092;
        double r4721094 = r4721085 + r4721093;
        double r4721095 = z;
        double r4721096 = r4721094 + r4721095;
        double r4721097 = t;
        double r4721098 = a;
        double r4721099 = r4721097 + r4721098;
        double r4721100 = r4721096 + r4721099;
        double r4721101 = r4721079 + r4721100;
        double r4721102 = i;
        double r4721103 = r4721080 * r4721102;
        double r4721104 = r4721101 + r4721103;
        return r4721104;
}

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

Bits error versus c

Bits error versus i

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.1

    \[\left(\left(\left(\left(x \cdot \log y + z\right) + t\right) + a\right) + \left(b - 0.5\right) \cdot \log c\right) + y \cdot i\]
  2. Using strategy rm
  3. Applied associate-+l+0.1

    \[\leadsto \left(\color{blue}{\left(\left(x \cdot \log y + z\right) + \left(t + a\right)\right)} + \left(b - 0.5\right) \cdot \log c\right) + y \cdot i\]
  4. Using strategy rm
  5. Applied add-cube-cbrt0.1

    \[\leadsto \left(\left(\left(x \cdot \log \color{blue}{\left(\left(\sqrt[3]{y} \cdot \sqrt[3]{y}\right) \cdot \sqrt[3]{y}\right)} + z\right) + \left(t + a\right)\right) + \left(b - 0.5\right) \cdot \log c\right) + y \cdot i\]
  6. Applied log-prod0.1

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

    \[\leadsto \left(\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)} + z\right) + \left(t + a\right)\right) + \left(b - 0.5\right) \cdot \log c\right) + y \cdot i\]
  8. Simplified0.1

    \[\leadsto \left(\left(\left(\left(\color{blue}{x \cdot \left(\log \left(\sqrt[3]{y}\right) + \log \left(\sqrt[3]{y}\right)\right)} + x \cdot \log \left(\sqrt[3]{y}\right)\right) + z\right) + \left(t + a\right)\right) + \left(b - 0.5\right) \cdot \log c\right) + y \cdot i\]
  9. Using strategy rm
  10. Applied pow1/30.1

    \[\leadsto \left(\left(\left(\left(x \cdot \left(\log \left(\sqrt[3]{y}\right) + \log \left(\sqrt[3]{y}\right)\right) + x \cdot \log \color{blue}{\left({y}^{\frac{1}{3}}\right)}\right) + z\right) + \left(t + a\right)\right) + \left(b - 0.5\right) \cdot \log c\right) + y \cdot i\]
  11. Using strategy rm
  12. Applied add-cube-cbrt0.1

    \[\leadsto \left(\left(\left(\left(x \cdot \left(\log \left(\sqrt[3]{y}\right) + \log \color{blue}{\left(\left(\sqrt[3]{\sqrt[3]{y}} \cdot \sqrt[3]{\sqrt[3]{y}}\right) \cdot \sqrt[3]{\sqrt[3]{y}}\right)}\right) + x \cdot \log \left({y}^{\frac{1}{3}}\right)\right) + z\right) + \left(t + a\right)\right) + \left(b - 0.5\right) \cdot \log c\right) + y \cdot i\]
  13. Final simplification0.1

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

Reproduce

herbie shell --seed 2019163 
(FPCore (x y z t a b c i)
  :name "Numeric.SpecFunctions:logBeta from math-functions-0.1.5.2, B"
  (+ (+ (+ (+ (+ (* x (log y)) z) t) a) (* (- b 0.5) (log c))) (* y i)))