\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(\left(\left(\left(x \cdot \log y + z\right) + t\right) + a\right) + \left(\left(2 \cdot \log \left(\left(\sqrt[3]{\sqrt[3]{c}} \cdot \sqrt[3]{\sqrt[3]{c}}\right) \cdot \sqrt[3]{\sqrt[3]{c}}\right)\right) \cdot \left(b - 0.5\right) + \left(b - 0.5\right) \cdot \log \left(\sqrt[3]{c}\right)\right)\right) + y \cdot idouble f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r118921 = x;
double r118922 = y;
double r118923 = log(r118922);
double r118924 = r118921 * r118923;
double r118925 = z;
double r118926 = r118924 + r118925;
double r118927 = t;
double r118928 = r118926 + r118927;
double r118929 = a;
double r118930 = r118928 + r118929;
double r118931 = b;
double r118932 = 0.5;
double r118933 = r118931 - r118932;
double r118934 = c;
double r118935 = log(r118934);
double r118936 = r118933 * r118935;
double r118937 = r118930 + r118936;
double r118938 = i;
double r118939 = r118922 * r118938;
double r118940 = r118937 + r118939;
return r118940;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r118941 = x;
double r118942 = y;
double r118943 = log(r118942);
double r118944 = r118941 * r118943;
double r118945 = z;
double r118946 = r118944 + r118945;
double r118947 = t;
double r118948 = r118946 + r118947;
double r118949 = a;
double r118950 = r118948 + r118949;
double r118951 = 2.0;
double r118952 = c;
double r118953 = cbrt(r118952);
double r118954 = cbrt(r118953);
double r118955 = r118954 * r118954;
double r118956 = r118955 * r118954;
double r118957 = log(r118956);
double r118958 = r118951 * r118957;
double r118959 = b;
double r118960 = 0.5;
double r118961 = r118959 - r118960;
double r118962 = r118958 * r118961;
double r118963 = log(r118953);
double r118964 = r118961 * r118963;
double r118965 = r118962 + r118964;
double r118966 = r118950 + r118965;
double r118967 = i;
double r118968 = r118942 * r118967;
double r118969 = r118966 + r118968;
return r118969;
}



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
rmApplied add-cube-cbrt0.1
Final simplification0.1
herbie shell --seed 2020042
(FPCore (x y z t a b c i)
:name "Numeric.SpecFunctions:logBeta from math-functions-0.1.5.2, B"
:precision binary64
(+ (+ (+ (+ (+ (* x (log y)) z) t) a) (* (- b 0.5) (log c))) (* y i)))