\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
i \cdot y + \left(\left(\left(\left(z + \left(\left(\log \left(\sqrt[3]{y}\right) \cdot x + \log \left(\sqrt[3]{y}\right) \cdot x\right) + \log \left(\sqrt[3]{y}\right) \cdot x\right)\right) + t\right) + a\right) + \log c \cdot \left(b - 0.5\right)\right)double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r3653678 = x;
double r3653679 = y;
double r3653680 = log(r3653679);
double r3653681 = r3653678 * r3653680;
double r3653682 = z;
double r3653683 = r3653681 + r3653682;
double r3653684 = t;
double r3653685 = r3653683 + r3653684;
double r3653686 = a;
double r3653687 = r3653685 + r3653686;
double r3653688 = b;
double r3653689 = 0.5;
double r3653690 = r3653688 - r3653689;
double r3653691 = c;
double r3653692 = log(r3653691);
double r3653693 = r3653690 * r3653692;
double r3653694 = r3653687 + r3653693;
double r3653695 = i;
double r3653696 = r3653679 * r3653695;
double r3653697 = r3653694 + r3653696;
return r3653697;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r3653698 = i;
double r3653699 = y;
double r3653700 = r3653698 * r3653699;
double r3653701 = z;
double r3653702 = cbrt(r3653699);
double r3653703 = log(r3653702);
double r3653704 = x;
double r3653705 = r3653703 * r3653704;
double r3653706 = r3653705 + r3653705;
double r3653707 = r3653706 + r3653705;
double r3653708 = r3653701 + r3653707;
double r3653709 = t;
double r3653710 = r3653708 + r3653709;
double r3653711 = a;
double r3653712 = r3653710 + r3653711;
double r3653713 = c;
double r3653714 = log(r3653713);
double r3653715 = b;
double r3653716 = 0.5;
double r3653717 = r3653715 - r3653716;
double r3653718 = r3653714 * r3653717;
double r3653719 = r3653712 + r3653718;
double r3653720 = r3653700 + r3653719;
return r3653720;
}



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
Results
Initial program 0.1
rmApplied add-cube-cbrt0.1
Applied log-prod0.1
Applied distribute-lft-in0.1
Simplified0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019200
(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)))