\frac{\pi}{\sin \left(\pi \cdot z\right)} \cdot \left(\left(\left(\sqrt{\pi \cdot 2} \cdot {\left(\left(\left(\left(1 - z\right) - 1\right) + 7\right) + 0.5\right)}^{\left(\left(\left(1 - z\right) - 1\right) + 0.5\right)}\right) \cdot e^{-\left(\left(\left(\left(1 - z\right) - 1\right) + 7\right) + 0.5\right)}\right) \cdot \left(\left(\left(\left(\left(\left(\left(\left(0.9999999999998099298181841732002794742584 + \frac{676.5203681218850988443591631948947906494}{\left(\left(1 - z\right) - 1\right) + 1}\right) + \frac{-1259.139216722402807135949842631816864014}{\left(\left(1 - z\right) - 1\right) + 2}\right) + \frac{771.3234287776531346025876700878143310547}{\left(\left(1 - z\right) - 1\right) + 3}\right) + \frac{-176.6150291621405870046146446838974952698}{\left(\left(1 - z\right) - 1\right) + 4}\right) + \frac{12.50734327868690520801919774385169148445}{\left(\left(1 - z\right) - 1\right) + 5}\right) + \frac{-0.1385710952657201178173096423051902092993}{\left(\left(1 - z\right) - 1\right) + 6}\right) + \frac{9.984369578019571583242346146658263705831 \cdot 10^{-6}}{\left(\left(1 - z\right) - 1\right) + 7}\right) + \frac{1.505632735149311617592788074479481785772 \cdot 10^{-7}}{\left(\left(1 - z\right) - 1\right) + 8}\right)\right)\frac{\left(\frac{\pi}{\sin \left(\pi \cdot z\right)} \cdot \left(\sqrt{\pi \cdot 2} \cdot {\left(\left(\left(\left(1 - z\right) - 1\right) + 7\right) + \frac{1}{2}\right)}^{\left(\left(\left(1 - z\right) - 1\right) + \frac{1}{2}\right)}\right)\right) \cdot \left(\left(\frac{\frac{5688119651184367}{37778931862957161709568}}{\left(\left(1 - z\right) - 1\right) + 8} + \left(\frac{\frac{-4992549864024149}{36028797018963968}}{\left(\left(1 - z\right) - 1\right) + 6} + \frac{\frac{5893731530977871}{590295810358705651712}}{\left(\left(1 - z\right) - 1\right) + 7}\right)\right) + \left(\left(\frac{\frac{7041008316161153}{562949953421312}}{\left(\left(1 - z\right) - 1\right) + 5} + \left(\frac{\frac{848079078717083}{1099511627776}}{\left(\sqrt{1 - z} + \sqrt{1}\right) \cdot \left(\left(\sqrt[3]{\left(\sqrt{\sqrt{1 - z}} + \sqrt{\sqrt{1}}\right) \cdot \left(\sqrt{\sqrt{1 - z}} - \sqrt{\sqrt{1}}\right)} \cdot \sqrt[3]{\sqrt{1 - z} - \sqrt{1}}\right) \cdot \sqrt[3]{\sqrt{1 - z} - \sqrt{1}}\right) + 3} + \frac{\frac{-6214088902520669}{35184372088832}}{\left(\left(1 - z\right) - 1\right) + 4}\right)\right) + \left(\left(\frac{562949953421205}{562949953421312} + \frac{\frac{-5537752839100187}{4398046511104}}{\left(\left(1 - z\right) - 1\right) + 2}\right) + \frac{\frac{5950736089418501}{1 - \left(z + 0\right)}}{8796093022208}\right)\right)\right)}{e^{\left(\left(\left(1 - z\right) - 1\right) + 7\right) + \frac{1}{2}}}double f(double z) {
double r114149 = atan2(1.0, 0.0);
double r114150 = z;
double r114151 = r114149 * r114150;
double r114152 = sin(r114151);
double r114153 = r114149 / r114152;
double r114154 = 2.0;
double r114155 = r114149 * r114154;
double r114156 = sqrt(r114155);
double r114157 = 1.0;
double r114158 = r114157 - r114150;
double r114159 = r114158 - r114157;
double r114160 = 7.0;
double r114161 = r114159 + r114160;
double r114162 = 0.5;
double r114163 = r114161 + r114162;
double r114164 = r114159 + r114162;
double r114165 = pow(r114163, r114164);
double r114166 = r114156 * r114165;
double r114167 = -r114163;
double r114168 = exp(r114167);
double r114169 = r114166 * r114168;
double r114170 = 0.9999999999998099;
double r114171 = 676.5203681218851;
double r114172 = r114159 + r114157;
double r114173 = r114171 / r114172;
double r114174 = r114170 + r114173;
double r114175 = -1259.1392167224028;
double r114176 = r114159 + r114154;
double r114177 = r114175 / r114176;
double r114178 = r114174 + r114177;
double r114179 = 771.3234287776531;
double r114180 = 3.0;
double r114181 = r114159 + r114180;
double r114182 = r114179 / r114181;
double r114183 = r114178 + r114182;
double r114184 = -176.6150291621406;
double r114185 = 4.0;
double r114186 = r114159 + r114185;
double r114187 = r114184 / r114186;
double r114188 = r114183 + r114187;
double r114189 = 12.507343278686905;
double r114190 = 5.0;
double r114191 = r114159 + r114190;
double r114192 = r114189 / r114191;
double r114193 = r114188 + r114192;
double r114194 = -0.13857109526572012;
double r114195 = 6.0;
double r114196 = r114159 + r114195;
double r114197 = r114194 / r114196;
double r114198 = r114193 + r114197;
double r114199 = 9.984369578019572e-06;
double r114200 = r114199 / r114161;
double r114201 = r114198 + r114200;
double r114202 = 1.5056327351493116e-07;
double r114203 = 8.0;
double r114204 = r114159 + r114203;
double r114205 = r114202 / r114204;
double r114206 = r114201 + r114205;
double r114207 = r114169 * r114206;
double r114208 = r114153 * r114207;
return r114208;
}
double f(double z) {
double r114209 = atan2(1.0, 0.0);
double r114210 = z;
double r114211 = r114209 * r114210;
double r114212 = sin(r114211);
double r114213 = r114209 / r114212;
double r114214 = 2.0;
double r114215 = r114209 * r114214;
double r114216 = sqrt(r114215);
double r114217 = 1.0;
double r114218 = r114217 - r114210;
double r114219 = r114218 - r114217;
double r114220 = 7.0;
double r114221 = r114219 + r114220;
double r114222 = r114217 / r114214;
double r114223 = r114221 + r114222;
double r114224 = r114219 + r114222;
double r114225 = pow(r114223, r114224);
double r114226 = r114216 * r114225;
double r114227 = r114213 * r114226;
double r114228 = 5688119651184367.0;
double r114229 = 3.777893186295716e+22;
double r114230 = r114228 / r114229;
double r114231 = 8.0;
double r114232 = r114219 + r114231;
double r114233 = r114230 / r114232;
double r114234 = -4992549864024149.0;
double r114235 = 3.602879701896397e+16;
double r114236 = r114234 / r114235;
double r114237 = 6.0;
double r114238 = r114219 + r114237;
double r114239 = r114236 / r114238;
double r114240 = 5893731530977871.0;
double r114241 = 5.902958103587057e+20;
double r114242 = r114240 / r114241;
double r114243 = r114242 / r114221;
double r114244 = r114239 + r114243;
double r114245 = r114233 + r114244;
double r114246 = 7041008316161153.0;
double r114247 = 562949953421312.0;
double r114248 = r114246 / r114247;
double r114249 = 5.0;
double r114250 = r114219 + r114249;
double r114251 = r114248 / r114250;
double r114252 = 848079078717083.0;
double r114253 = 1099511627776.0;
double r114254 = r114252 / r114253;
double r114255 = sqrt(r114218);
double r114256 = sqrt(r114217);
double r114257 = r114255 + r114256;
double r114258 = sqrt(r114255);
double r114259 = sqrt(r114256);
double r114260 = r114258 + r114259;
double r114261 = r114258 - r114259;
double r114262 = r114260 * r114261;
double r114263 = cbrt(r114262);
double r114264 = r114255 - r114256;
double r114265 = cbrt(r114264);
double r114266 = r114263 * r114265;
double r114267 = r114266 * r114265;
double r114268 = r114257 * r114267;
double r114269 = 3.0;
double r114270 = r114268 + r114269;
double r114271 = r114254 / r114270;
double r114272 = -6214088902520669.0;
double r114273 = 35184372088832.0;
double r114274 = r114272 / r114273;
double r114275 = 4.0;
double r114276 = r114219 + r114275;
double r114277 = r114274 / r114276;
double r114278 = r114271 + r114277;
double r114279 = r114251 + r114278;
double r114280 = 562949953421205.0;
double r114281 = r114280 / r114247;
double r114282 = -5537752839100187.0;
double r114283 = 4398046511104.0;
double r114284 = r114282 / r114283;
double r114285 = r114219 + r114214;
double r114286 = r114284 / r114285;
double r114287 = r114281 + r114286;
double r114288 = 5950736089418501.0;
double r114289 = 0.0;
double r114290 = r114210 + r114289;
double r114291 = r114217 - r114290;
double r114292 = r114288 / r114291;
double r114293 = 8796093022208.0;
double r114294 = r114292 / r114293;
double r114295 = r114287 + r114294;
double r114296 = r114279 + r114295;
double r114297 = r114245 + r114296;
double r114298 = r114227 * r114297;
double r114299 = exp(r114223);
double r114300 = r114298 / r114299;
return r114300;
}



Bits error versus z
Results
Initial program 1.8
Simplified1.8
rmApplied add-sqr-sqrt1.8
Applied add-sqr-sqrt1.9
Applied difference-of-squares1.9
rmApplied add-cube-cbrt1.9
rmApplied add-sqr-sqrt1.9
Applied sqrt-prod1.9
Applied add-sqr-sqrt1.9
Applied sqrt-prod1.9
Applied difference-of-squares1.9
Final simplification1.9
herbie shell --seed 2019304
(FPCore (z)
:name "Jmat.Real.gamma, branch z less than 0.5"
:precision binary64
(* (/ PI (sin (* PI z))) (* (* (* (sqrt (* PI 2)) (pow (+ (+ (- (- 1 z) 1) 7) 0.5) (+ (- (- 1 z) 1) 0.5))) (exp (- (+ (+ (- (- 1 z) 1) 7) 0.5)))) (+ (+ (+ (+ (+ (+ (+ (+ 0.99999999999980993 (/ 676.520368121885099 (+ (- (- 1 z) 1) 1))) (/ -1259.13921672240281 (+ (- (- 1 z) 1) 2))) (/ 771.32342877765313 (+ (- (- 1 z) 1) 3))) (/ -176.615029162140587 (+ (- (- 1 z) 1) 4))) (/ 12.5073432786869052 (+ (- (- 1 z) 1) 5))) (/ -0.138571095265720118 (+ (- (- 1 z) 1) 6))) (/ 9.98436957801957158e-6 (+ (- (- 1 z) 1) 7))) (/ 1.50563273514931162e-7 (+ (- (- 1 z) 1) 8))))))