\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)\left(\sqrt{\pi \cdot 2} \cdot \left(\frac{{\left(\sqrt{\left(0.5 + \left(z + 7\right)\right) - 1}\right)}^{\left(0.5 + \left(z - 1\right)\right)}}{e^{z}} \cdot \frac{{\left(\sqrt{\left(0.5 + \left(z + 7\right)\right) - 1}\right)}^{\left(0.5 + \left(z - 1\right)\right)}}{e^{-\left(\left(1 - 0.5\right) - 7\right)}}\right)\right) \cdot \left(\left(\left(\frac{-0.1385710952657201178173096423051902092993}{\left(z - 1\right) + 6} + \left(\left(\frac{1.505632735149311617592788074479481785772 \cdot 10^{-7}}{8 + \left(z - 1\right)} + \frac{9.984369578019571583242346146658263705831 \cdot 10^{-6}}{\left(z - 1\right) + 7}\right) + \frac{12.50734327868690520801919774385169148445}{\left(z - 1\right) + 5}\right)\right) + \left(\left(\left(0.9999999999998099298181841732002794742584 + \frac{676.5203681218850988443591631948947906494}{z}\right) + \frac{-176.6150291621405870046146446838974952698}{4 + \left(z - 1\right)}\right) + \frac{771.3234287776531346025876700878143310547}{\left(z - 1\right) + 3}\right)\right) + \frac{-1259.139216722402807135949842631816864014}{\left(z - 1\right) + 2}\right)double f(double z) {
double r274151 = atan2(1.0, 0.0);
double r274152 = 2.0;
double r274153 = r274151 * r274152;
double r274154 = sqrt(r274153);
double r274155 = z;
double r274156 = 1.0;
double r274157 = r274155 - r274156;
double r274158 = 7.0;
double r274159 = r274157 + r274158;
double r274160 = 0.5;
double r274161 = r274159 + r274160;
double r274162 = r274157 + r274160;
double r274163 = pow(r274161, r274162);
double r274164 = r274154 * r274163;
double r274165 = -r274161;
double r274166 = exp(r274165);
double r274167 = r274164 * r274166;
double r274168 = 0.9999999999998099;
double r274169 = 676.5203681218851;
double r274170 = r274157 + r274156;
double r274171 = r274169 / r274170;
double r274172 = r274168 + r274171;
double r274173 = -1259.1392167224028;
double r274174 = r274157 + r274152;
double r274175 = r274173 / r274174;
double r274176 = r274172 + r274175;
double r274177 = 771.3234287776531;
double r274178 = 3.0;
double r274179 = r274157 + r274178;
double r274180 = r274177 / r274179;
double r274181 = r274176 + r274180;
double r274182 = -176.6150291621406;
double r274183 = 4.0;
double r274184 = r274157 + r274183;
double r274185 = r274182 / r274184;
double r274186 = r274181 + r274185;
double r274187 = 12.507343278686905;
double r274188 = 5.0;
double r274189 = r274157 + r274188;
double r274190 = r274187 / r274189;
double r274191 = r274186 + r274190;
double r274192 = -0.13857109526572012;
double r274193 = 6.0;
double r274194 = r274157 + r274193;
double r274195 = r274192 / r274194;
double r274196 = r274191 + r274195;
double r274197 = 9.984369578019572e-06;
double r274198 = r274197 / r274159;
double r274199 = r274196 + r274198;
double r274200 = 1.5056327351493116e-07;
double r274201 = 8.0;
double r274202 = r274157 + r274201;
double r274203 = r274200 / r274202;
double r274204 = r274199 + r274203;
double r274205 = r274167 * r274204;
return r274205;
}
double f(double z) {
double r274206 = atan2(1.0, 0.0);
double r274207 = 2.0;
double r274208 = r274206 * r274207;
double r274209 = sqrt(r274208);
double r274210 = 0.5;
double r274211 = z;
double r274212 = 7.0;
double r274213 = r274211 + r274212;
double r274214 = r274210 + r274213;
double r274215 = 1.0;
double r274216 = r274214 - r274215;
double r274217 = sqrt(r274216);
double r274218 = r274211 - r274215;
double r274219 = r274210 + r274218;
double r274220 = pow(r274217, r274219);
double r274221 = exp(r274211);
double r274222 = r274220 / r274221;
double r274223 = r274215 - r274210;
double r274224 = r274223 - r274212;
double r274225 = -r274224;
double r274226 = exp(r274225);
double r274227 = r274220 / r274226;
double r274228 = r274222 * r274227;
double r274229 = r274209 * r274228;
double r274230 = -0.13857109526572012;
double r274231 = 6.0;
double r274232 = r274218 + r274231;
double r274233 = r274230 / r274232;
double r274234 = 1.5056327351493116e-07;
double r274235 = 8.0;
double r274236 = r274235 + r274218;
double r274237 = r274234 / r274236;
double r274238 = 9.984369578019572e-06;
double r274239 = r274218 + r274212;
double r274240 = r274238 / r274239;
double r274241 = r274237 + r274240;
double r274242 = 12.507343278686905;
double r274243 = 5.0;
double r274244 = r274218 + r274243;
double r274245 = r274242 / r274244;
double r274246 = r274241 + r274245;
double r274247 = r274233 + r274246;
double r274248 = 0.9999999999998099;
double r274249 = 676.5203681218851;
double r274250 = r274249 / r274211;
double r274251 = r274248 + r274250;
double r274252 = -176.6150291621406;
double r274253 = 4.0;
double r274254 = r274253 + r274218;
double r274255 = r274252 / r274254;
double r274256 = r274251 + r274255;
double r274257 = 771.3234287776531;
double r274258 = 3.0;
double r274259 = r274218 + r274258;
double r274260 = r274257 / r274259;
double r274261 = r274256 + r274260;
double r274262 = r274247 + r274261;
double r274263 = -1259.1392167224028;
double r274264 = r274218 + r274207;
double r274265 = r274263 / r274264;
double r274266 = r274262 + r274265;
double r274267 = r274229 * r274266;
return r274267;
}



Bits error versus z
Results
Initial program 61.6
Simplified1.0
rmApplied sub-neg1.0
Applied exp-sum0.9
Applied add-sqr-sqrt0.9
Applied unpow-prod-down0.9
Applied times-frac0.9
Simplified0.9
Simplified0.9
Final simplification0.9
herbie shell --seed 2019174 +o rules:numerics
(FPCore (z)
:name "Jmat.Real.gamma, branch z greater than 0.5"
(* (* (* (sqrt (* PI 2.0)) (pow (+ (+ (- z 1.0) 7.0) 0.5) (+ (- z 1.0) 0.5))) (exp (- (+ (+ (- z 1.0) 7.0) 0.5)))) (+ (+ (+ (+ (+ (+ (+ (+ 0.9999999999998099 (/ 676.5203681218851 (+ (- z 1.0) 1.0))) (/ -1259.1392167224028 (+ (- z 1.0) 2.0))) (/ 771.3234287776531 (+ (- z 1.0) 3.0))) (/ -176.6150291621406 (+ (- z 1.0) 4.0))) (/ 12.507343278686905 (+ (- z 1.0) 5.0))) (/ -0.13857109526572012 (+ (- z 1.0) 6.0))) (/ 9.984369578019572e-06 (+ (- z 1.0) 7.0))) (/ 1.5056327351493116e-07 (+ (- z 1.0) 8.0)))))