\left(\left(\sqrt{\pi \cdot 2} \cdot {\left(\left(\left(z - 1\right) + 7\right) + 0.5\right)}^{\left(\left(z - 1\right) + 0.5\right)}\right) \cdot e^{-\left(\left(\left(z - 1\right) + 7\right) + 0.5\right)}\right) \cdot \left(\left(\left(\left(\left(\left(\left(\left(0.9999999999998099298181841732002794742584 + \frac{676.5203681218850988443591631948947906494}{\left(z - 1\right) + 1}\right) + \frac{-1259.139216722402807135949842631816864014}{\left(z - 1\right) + 2}\right) + \frac{771.3234287776531346025876700878143310547}{\left(z - 1\right) + 3}\right) + \frac{-176.6150291621405870046146446838974952698}{\left(z - 1\right) + 4}\right) + \frac{12.50734327868690520801919774385169148445}{\left(z - 1\right) + 5}\right) + \frac{-0.1385710952657201178173096423051902092993}{\left(z - 1\right) + 6}\right) + \frac{9.984369578019571583242346146658263705831 \cdot 10^{-6}}{\left(z - 1\right) + 7}\right) + \frac{1.505632735149311617592788074479481785772 \cdot 10^{-7}}{\left(z - 1\right) + 8}\right)\frac{\left(\sqrt[3]{{\left(\left(\left(z - 1\right) + 7\right) + 0.5\right)}^{\left(\left(z - 1\right) + 0.5\right)} \cdot \sqrt{\pi \cdot 2}} \cdot \sqrt[3]{{\left(\left(\left(z - 1\right) + 7\right) + 0.5\right)}^{\left(\left(z - 1\right) + 0.5\right)} \cdot \sqrt{\pi \cdot 2}}\right) \cdot \sqrt[3]{{\left(\left(\left(z - 1\right) + 7\right) + 0.5\right)}^{\left(\left(z - 1\right) + 0.5\right)} \cdot \sqrt{\pi \cdot 2}}}{e^{\left(\left(z - 1\right) + 7\right) + 0.5}} \cdot \left(\left(\frac{-176.6150291621405870046146446838974952698}{\left(z - 1\right) + 4} + \left(\left(\frac{676.5203681218850988443591631948947906494}{z} + 0.9999999999998099298181841732002794742584\right) + \frac{-1259.139216722402807135949842631816864014}{\left(z - 1\right) + 2}\right)\right) + \left(\frac{771.3234287776531346025876700878143310547}{\left(z - 1\right) + 3} + \left(\left(\frac{12.50734327868690520801919774385169148445}{\left(z - 1\right) + 5} + \frac{-0.1385710952657201178173096423051902092993}{\left(z - 1\right) + 6}\right) + \left(\frac{9.984369578019571583242346146658263705831 \cdot 10^{-6}}{\left(z - 1\right) + 7} + \frac{1.505632735149311617592788074479481785772 \cdot 10^{-7}}{\left(z - 1\right) + 8}\right)\right)\right)\right)double f(double z) {
double r244936 = atan2(1.0, 0.0);
double r244937 = 2.0;
double r244938 = r244936 * r244937;
double r244939 = sqrt(r244938);
double r244940 = z;
double r244941 = 1.0;
double r244942 = r244940 - r244941;
double r244943 = 7.0;
double r244944 = r244942 + r244943;
double r244945 = 0.5;
double r244946 = r244944 + r244945;
double r244947 = r244942 + r244945;
double r244948 = pow(r244946, r244947);
double r244949 = r244939 * r244948;
double r244950 = -r244946;
double r244951 = exp(r244950);
double r244952 = r244949 * r244951;
double r244953 = 0.9999999999998099;
double r244954 = 676.5203681218851;
double r244955 = r244942 + r244941;
double r244956 = r244954 / r244955;
double r244957 = r244953 + r244956;
double r244958 = -1259.1392167224028;
double r244959 = r244942 + r244937;
double r244960 = r244958 / r244959;
double r244961 = r244957 + r244960;
double r244962 = 771.3234287776531;
double r244963 = 3.0;
double r244964 = r244942 + r244963;
double r244965 = r244962 / r244964;
double r244966 = r244961 + r244965;
double r244967 = -176.6150291621406;
double r244968 = 4.0;
double r244969 = r244942 + r244968;
double r244970 = r244967 / r244969;
double r244971 = r244966 + r244970;
double r244972 = 12.507343278686905;
double r244973 = 5.0;
double r244974 = r244942 + r244973;
double r244975 = r244972 / r244974;
double r244976 = r244971 + r244975;
double r244977 = -0.13857109526572012;
double r244978 = 6.0;
double r244979 = r244942 + r244978;
double r244980 = r244977 / r244979;
double r244981 = r244976 + r244980;
double r244982 = 9.984369578019572e-06;
double r244983 = r244982 / r244944;
double r244984 = r244981 + r244983;
double r244985 = 1.5056327351493116e-07;
double r244986 = 8.0;
double r244987 = r244942 + r244986;
double r244988 = r244985 / r244987;
double r244989 = r244984 + r244988;
double r244990 = r244952 * r244989;
return r244990;
}
double f(double z) {
double r244991 = z;
double r244992 = 1.0;
double r244993 = r244991 - r244992;
double r244994 = 7.0;
double r244995 = r244993 + r244994;
double r244996 = 0.5;
double r244997 = r244995 + r244996;
double r244998 = r244993 + r244996;
double r244999 = pow(r244997, r244998);
double r245000 = atan2(1.0, 0.0);
double r245001 = 2.0;
double r245002 = r245000 * r245001;
double r245003 = sqrt(r245002);
double r245004 = r244999 * r245003;
double r245005 = cbrt(r245004);
double r245006 = r245005 * r245005;
double r245007 = r245006 * r245005;
double r245008 = exp(r244997);
double r245009 = r245007 / r245008;
double r245010 = -176.6150291621406;
double r245011 = 4.0;
double r245012 = r244993 + r245011;
double r245013 = r245010 / r245012;
double r245014 = 676.5203681218851;
double r245015 = r245014 / r244991;
double r245016 = 0.9999999999998099;
double r245017 = r245015 + r245016;
double r245018 = -1259.1392167224028;
double r245019 = r244993 + r245001;
double r245020 = r245018 / r245019;
double r245021 = r245017 + r245020;
double r245022 = r245013 + r245021;
double r245023 = 771.3234287776531;
double r245024 = 3.0;
double r245025 = r244993 + r245024;
double r245026 = r245023 / r245025;
double r245027 = 12.507343278686905;
double r245028 = 5.0;
double r245029 = r244993 + r245028;
double r245030 = r245027 / r245029;
double r245031 = -0.13857109526572012;
double r245032 = 6.0;
double r245033 = r244993 + r245032;
double r245034 = r245031 / r245033;
double r245035 = r245030 + r245034;
double r245036 = 9.984369578019572e-06;
double r245037 = r245036 / r244995;
double r245038 = 1.5056327351493116e-07;
double r245039 = 8.0;
double r245040 = r244993 + r245039;
double r245041 = r245038 / r245040;
double r245042 = r245037 + r245041;
double r245043 = r245035 + r245042;
double r245044 = r245026 + r245043;
double r245045 = r245022 + r245044;
double r245046 = r245009 * r245045;
return r245046;
}



Bits error versus z
Results
Initial program 61.5
Simplified1.1
rmApplied add-cube-cbrt0.8
Final simplification0.8
herbie shell --seed 2019303
(FPCore (z)
:name "Jmat.Real.gamma, branch z greater than 0.5"
:precision binary64
(* (* (* (sqrt (* PI 2)) (pow (+ (+ (- z 1) 7) 0.5) (+ (- z 1) 0.5))) (exp (- (+ (+ (- z 1) 7) 0.5)))) (+ (+ (+ (+ (+ (+ (+ (+ 0.99999999999980993 (/ 676.520368121885099 (+ (- z 1) 1))) (/ -1259.13921672240281 (+ (- z 1) 2))) (/ 771.32342877765313 (+ (- z 1) 3))) (/ -176.615029162140587 (+ (- z 1) 4))) (/ 12.5073432786869052 (+ (- z 1) 5))) (/ -0.138571095265720118 (+ (- z 1) 6))) (/ 9.98436957801957158e-6 (+ (- z 1) 7))) (/ 1.50563273514931162e-7 (+ (- z 1) 8)))))