\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.99999999999980993 + \frac{676.520368121885099}{\left(z - 1\right) + 1}\right) + \frac{-1259.13921672240281}{\left(z - 1\right) + 2}\right) + \frac{771.32342877765313}{\left(z - 1\right) + 3}\right) + \frac{-176.615029162140587}{\left(z - 1\right) + 4}\right) + \frac{12.5073432786869052}{\left(z - 1\right) + 5}\right) + \frac{-0.138571095265720118}{\left(z - 1\right) + 6}\right) + \frac{9.98436957801957158 \cdot 10^{-6}}{\left(z - 1\right) + 7}\right) + \frac{1.50563273514931162 \cdot 10^{-7}}{\left(z - 1\right) + 8}\right)\left(\left(169.130092030471275 \cdot \left(\left(\sqrt{2} \cdot \left(z \cdot e^{-6.5}\right)\right) \cdot \left({\left(\frac{1}{{6.5}^{5}}\right)}^{0.5} \cdot \sqrt{\pi}\right)\right) + \left({\left(\frac{1}{{6.5}^{1}}\right)}^{0.5} \cdot \sqrt{\pi}\right) \cdot \left(676.520368121885099 \cdot \frac{\sqrt{2} \cdot e^{-6.5}}{z} + 2581.19179968122216 \cdot \left(z \cdot \left(\sqrt{2} \cdot e^{-6.5}\right)\right)\right)\right) + 676.520368121885099 \cdot \left(\left(\log 6.5 \cdot \left(\sqrt{2} \cdot e^{-6.5}\right)\right) \cdot \left({\left(\frac{1}{{6.5}^{1}}\right)}^{0.5} \cdot \sqrt{\pi}\right)\right)\right) - \left(\left(1656.8104518737205 \cdot \left({\left(\frac{1}{{6.5}^{1}}\right)}^{0.5} \cdot \sqrt{\pi}\right)\right) \cdot \left(\log 6.5 \cdot \left(z \cdot \left(\sqrt{2} \cdot e^{-6.5}\right)\right) + \sqrt{2} \cdot e^{-6.5}\right) - \left(338.260184060942549 \cdot \left({\left(\log 6.5\right)}^{2} \cdot \left(z \cdot \left(\sqrt{2} \cdot e^{-6.5}\right)\right)\right)\right) \cdot \left({\left(\frac{1}{{6.5}^{1}}\right)}^{0.5} \cdot \sqrt{\pi}\right)\right)double f(double z) {
double r153944 = atan2(1.0, 0.0);
double r153945 = 2.0;
double r153946 = r153944 * r153945;
double r153947 = sqrt(r153946);
double r153948 = z;
double r153949 = 1.0;
double r153950 = r153948 - r153949;
double r153951 = 7.0;
double r153952 = r153950 + r153951;
double r153953 = 0.5;
double r153954 = r153952 + r153953;
double r153955 = r153950 + r153953;
double r153956 = pow(r153954, r153955);
double r153957 = r153947 * r153956;
double r153958 = -r153954;
double r153959 = exp(r153958);
double r153960 = r153957 * r153959;
double r153961 = 0.9999999999998099;
double r153962 = 676.5203681218851;
double r153963 = r153950 + r153949;
double r153964 = r153962 / r153963;
double r153965 = r153961 + r153964;
double r153966 = -1259.1392167224028;
double r153967 = r153950 + r153945;
double r153968 = r153966 / r153967;
double r153969 = r153965 + r153968;
double r153970 = 771.3234287776531;
double r153971 = 3.0;
double r153972 = r153950 + r153971;
double r153973 = r153970 / r153972;
double r153974 = r153969 + r153973;
double r153975 = -176.6150291621406;
double r153976 = 4.0;
double r153977 = r153950 + r153976;
double r153978 = r153975 / r153977;
double r153979 = r153974 + r153978;
double r153980 = 12.507343278686905;
double r153981 = 5.0;
double r153982 = r153950 + r153981;
double r153983 = r153980 / r153982;
double r153984 = r153979 + r153983;
double r153985 = -0.13857109526572012;
double r153986 = 6.0;
double r153987 = r153950 + r153986;
double r153988 = r153985 / r153987;
double r153989 = r153984 + r153988;
double r153990 = 9.984369578019572e-06;
double r153991 = r153990 / r153952;
double r153992 = r153989 + r153991;
double r153993 = 1.5056327351493116e-07;
double r153994 = 8.0;
double r153995 = r153950 + r153994;
double r153996 = r153993 / r153995;
double r153997 = r153992 + r153996;
double r153998 = r153960 * r153997;
return r153998;
}
double f(double z) {
double r153999 = 169.13009203047127;
double r154000 = 2.0;
double r154001 = sqrt(r154000);
double r154002 = z;
double r154003 = 6.5;
double r154004 = -r154003;
double r154005 = exp(r154004);
double r154006 = r154002 * r154005;
double r154007 = r154001 * r154006;
double r154008 = 1.0;
double r154009 = 5.0;
double r154010 = pow(r154003, r154009);
double r154011 = r154008 / r154010;
double r154012 = 0.5;
double r154013 = pow(r154011, r154012);
double r154014 = atan2(1.0, 0.0);
double r154015 = sqrt(r154014);
double r154016 = r154013 * r154015;
double r154017 = r154007 * r154016;
double r154018 = r153999 * r154017;
double r154019 = 1.0;
double r154020 = pow(r154003, r154019);
double r154021 = r154008 / r154020;
double r154022 = pow(r154021, r154012);
double r154023 = r154022 * r154015;
double r154024 = 676.5203681218851;
double r154025 = r154001 * r154005;
double r154026 = r154025 / r154002;
double r154027 = r154024 * r154026;
double r154028 = 2581.191799681222;
double r154029 = r154002 * r154025;
double r154030 = r154028 * r154029;
double r154031 = r154027 + r154030;
double r154032 = r154023 * r154031;
double r154033 = r154018 + r154032;
double r154034 = log(r154003);
double r154035 = r154034 * r154025;
double r154036 = r154035 * r154023;
double r154037 = r154024 * r154036;
double r154038 = r154033 + r154037;
double r154039 = 1656.8104518737205;
double r154040 = r154039 * r154023;
double r154041 = r154034 * r154029;
double r154042 = r154041 + r154025;
double r154043 = r154040 * r154042;
double r154044 = 338.26018406094255;
double r154045 = 2.0;
double r154046 = pow(r154034, r154045);
double r154047 = r154046 * r154029;
double r154048 = r154044 * r154047;
double r154049 = r154048 * r154023;
double r154050 = r154043 - r154049;
double r154051 = r154038 - r154050;
return r154051;
}



Bits error versus z
Results
Initial program 61.6
rmApplied *-un-lft-identity61.6
Applied *-un-lft-identity61.6
Applied distribute-lft-out61.6
Simplified0.9
Taylor expanded around 0 1.1
Simplified1.1
Simplified1.1
Final simplification1.1
herbie shell --seed 2020064 +o rules:numerics
(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.9999999999998099 (/ 676.5203681218851 (+ (- z 1) 1))) (/ -1259.1392167224028 (+ (- z 1) 2))) (/ 771.3234287776531 (+ (- z 1) 3))) (/ -176.6150291621406 (+ (- z 1) 4))) (/ 12.507343278686905 (+ (- z 1) 5))) (/ -0.13857109526572012 (+ (- z 1) 6))) (/ 9.984369578019572e-06 (+ (- z 1) 7))) (/ 1.5056327351493116e-07 (+ (- z 1) 8)))))