\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.9999999999998099 + \frac{676.5203681218851}{\left(\left(1 - z\right) - 1\right) + 1}\right) + \frac{-1259.1392167224028}{\left(\left(1 - z\right) - 1\right) + 2}\right) + \frac{771.3234287776531}{\left(\left(1 - z\right) - 1\right) + 3}\right) + \frac{-176.6150291621406}{\left(\left(1 - z\right) - 1\right) + 4}\right) + \frac{12.507343278686905}{\left(\left(1 - z\right) - 1\right) + 5}\right) + \frac{-0.13857109526572012}{\left(\left(1 - z\right) - 1\right) + 6}\right) + \frac{9.984369578019572 \cdot 10^{-06}}{\left(\left(1 - z\right) - 1\right) + 7}\right) + \frac{1.5056327351493116 \cdot 10^{-07}}{\left(\left(1 - z\right) - 1\right) + 8}\right)\right)\left(\left(\left(\left(\frac{676.5203681218851}{1 - z} + 0.9999999999998099\right) + \frac{771.3234287776531}{\left(1 - z\right) + 2}\right) + \left(\frac{-1259.1392167224028}{2 - z} + \frac{-176.6150291621406}{4 - z}\right)\right) + \left(\left(\frac{1.5056327351493116 \cdot 10^{-07}}{8 - z} + \left(\frac{-0.13857109526572012}{6 - z} + \frac{9.984369578019572 \cdot 10^{-06}}{7 - z}\right)\right) + \frac{12.507343278686905}{\left(-z\right) - -5}\right)\right) \cdot \left(\left(\sqrt{\pi \cdot 2} \cdot \frac{\pi}{\sin \left(\pi \cdot z\right)}\right) \cdot \left(\frac{\sqrt[3]{{\left(\left(7 - z\right) + 0.5\right)}^{\left(0.5 + \left(-z\right)\right)}}}{\sqrt[3]{e^{\left(7 - z\right) + 0.5}}} \cdot \frac{\sqrt[3]{{\left(\left(7 - z\right) + 0.5\right)}^{\left(0.5 + \left(-z\right)\right)}} \cdot \sqrt[3]{{\left(\left(7 - z\right) + 0.5\right)}^{\left(0.5 + \left(-z\right)\right)}}}{\sqrt[3]{e^{\left(7 - z\right) + 0.5}} \cdot \sqrt[3]{e^{\left(7 - z\right) + 0.5}}}\right)\right)double f(double z) {
double r4558292 = atan2(1.0, 0.0);
double r4558293 = z;
double r4558294 = r4558292 * r4558293;
double r4558295 = sin(r4558294);
double r4558296 = r4558292 / r4558295;
double r4558297 = 2.0;
double r4558298 = r4558292 * r4558297;
double r4558299 = sqrt(r4558298);
double r4558300 = 1.0;
double r4558301 = r4558300 - r4558293;
double r4558302 = r4558301 - r4558300;
double r4558303 = 7.0;
double r4558304 = r4558302 + r4558303;
double r4558305 = 0.5;
double r4558306 = r4558304 + r4558305;
double r4558307 = r4558302 + r4558305;
double r4558308 = pow(r4558306, r4558307);
double r4558309 = r4558299 * r4558308;
double r4558310 = -r4558306;
double r4558311 = exp(r4558310);
double r4558312 = r4558309 * r4558311;
double r4558313 = 0.9999999999998099;
double r4558314 = 676.5203681218851;
double r4558315 = r4558302 + r4558300;
double r4558316 = r4558314 / r4558315;
double r4558317 = r4558313 + r4558316;
double r4558318 = -1259.1392167224028;
double r4558319 = r4558302 + r4558297;
double r4558320 = r4558318 / r4558319;
double r4558321 = r4558317 + r4558320;
double r4558322 = 771.3234287776531;
double r4558323 = 3.0;
double r4558324 = r4558302 + r4558323;
double r4558325 = r4558322 / r4558324;
double r4558326 = r4558321 + r4558325;
double r4558327 = -176.6150291621406;
double r4558328 = 4.0;
double r4558329 = r4558302 + r4558328;
double r4558330 = r4558327 / r4558329;
double r4558331 = r4558326 + r4558330;
double r4558332 = 12.507343278686905;
double r4558333 = 5.0;
double r4558334 = r4558302 + r4558333;
double r4558335 = r4558332 / r4558334;
double r4558336 = r4558331 + r4558335;
double r4558337 = -0.13857109526572012;
double r4558338 = 6.0;
double r4558339 = r4558302 + r4558338;
double r4558340 = r4558337 / r4558339;
double r4558341 = r4558336 + r4558340;
double r4558342 = 9.984369578019572e-06;
double r4558343 = r4558342 / r4558304;
double r4558344 = r4558341 + r4558343;
double r4558345 = 1.5056327351493116e-07;
double r4558346 = 8.0;
double r4558347 = r4558302 + r4558346;
double r4558348 = r4558345 / r4558347;
double r4558349 = r4558344 + r4558348;
double r4558350 = r4558312 * r4558349;
double r4558351 = r4558296 * r4558350;
return r4558351;
}
double f(double z) {
double r4558352 = 676.5203681218851;
double r4558353 = 1.0;
double r4558354 = z;
double r4558355 = r4558353 - r4558354;
double r4558356 = r4558352 / r4558355;
double r4558357 = 0.9999999999998099;
double r4558358 = r4558356 + r4558357;
double r4558359 = 771.3234287776531;
double r4558360 = 2.0;
double r4558361 = r4558355 + r4558360;
double r4558362 = r4558359 / r4558361;
double r4558363 = r4558358 + r4558362;
double r4558364 = -1259.1392167224028;
double r4558365 = r4558360 - r4558354;
double r4558366 = r4558364 / r4558365;
double r4558367 = -176.6150291621406;
double r4558368 = 4.0;
double r4558369 = r4558368 - r4558354;
double r4558370 = r4558367 / r4558369;
double r4558371 = r4558366 + r4558370;
double r4558372 = r4558363 + r4558371;
double r4558373 = 1.5056327351493116e-07;
double r4558374 = 8.0;
double r4558375 = r4558374 - r4558354;
double r4558376 = r4558373 / r4558375;
double r4558377 = -0.13857109526572012;
double r4558378 = 6.0;
double r4558379 = r4558378 - r4558354;
double r4558380 = r4558377 / r4558379;
double r4558381 = 9.984369578019572e-06;
double r4558382 = 7.0;
double r4558383 = r4558382 - r4558354;
double r4558384 = r4558381 / r4558383;
double r4558385 = r4558380 + r4558384;
double r4558386 = r4558376 + r4558385;
double r4558387 = 12.507343278686905;
double r4558388 = -r4558354;
double r4558389 = -5.0;
double r4558390 = r4558388 - r4558389;
double r4558391 = r4558387 / r4558390;
double r4558392 = r4558386 + r4558391;
double r4558393 = r4558372 + r4558392;
double r4558394 = atan2(1.0, 0.0);
double r4558395 = r4558394 * r4558360;
double r4558396 = sqrt(r4558395);
double r4558397 = r4558394 * r4558354;
double r4558398 = sin(r4558397);
double r4558399 = r4558394 / r4558398;
double r4558400 = r4558396 * r4558399;
double r4558401 = 0.5;
double r4558402 = r4558383 + r4558401;
double r4558403 = r4558401 + r4558388;
double r4558404 = pow(r4558402, r4558403);
double r4558405 = cbrt(r4558404);
double r4558406 = exp(r4558402);
double r4558407 = cbrt(r4558406);
double r4558408 = r4558405 / r4558407;
double r4558409 = r4558405 * r4558405;
double r4558410 = r4558407 * r4558407;
double r4558411 = r4558409 / r4558410;
double r4558412 = r4558408 * r4558411;
double r4558413 = r4558400 * r4558412;
double r4558414 = r4558393 * r4558413;
return r4558414;
}



Bits error versus z
Results
Initial program 1.8
Simplified1.7
rmApplied add-cube-cbrt1.7
Applied add-cube-cbrt0.7
Applied times-frac0.7
Final simplification0.7
herbie shell --seed 2019133
(FPCore (z)
:name "Jmat.Real.gamma, branch z less than 0.5"
(* (/ 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.9999999999998099 (/ 676.5203681218851 (+ (- (- 1 z) 1) 1))) (/ -1259.1392167224028 (+ (- (- 1 z) 1) 2))) (/ 771.3234287776531 (+ (- (- 1 z) 1) 3))) (/ -176.6150291621406 (+ (- (- 1 z) 1) 4))) (/ 12.507343278686905 (+ (- (- 1 z) 1) 5))) (/ -0.13857109526572012 (+ (- (- 1 z) 1) 6))) (/ 9.984369578019572e-06 (+ (- (- 1 z) 1) 7))) (/ 1.5056327351493116e-07 (+ (- (- 1 z) 1) 8))))))