\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(\frac{1.5056327351493116 \cdot 10^{-07}}{\left(\left(1 - z\right) - 1\right) + 8} + \left(\left(\frac{-0.13857109526572012}{\left(\left(1 - z\right) - 1\right) + 6} + \left(\frac{12.507343278686905}{5 + \left(\sqrt[3]{\left(1 - z\right) - 1} \cdot \sqrt[3]{\left(1 - z\right) - 1}\right) \cdot \sqrt[3]{\left(1 - z\right) - 1}} + \left(\frac{-176.6150291621406}{\left(\left(1 - z\right) - 1\right) + 4} + \left(\frac{771.3234287776531}{3 + \left(\left(1 - z\right) - 1\right)} + \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)\right)\right)\right)\right) + \frac{9.984369578019572 \cdot 10^{-06}}{7 + \left(\left(1 - z\right) - 1\right)}\right)\right) \cdot \left(\left(\sqrt{2 \cdot \pi} \cdot {\left(\left(7 + \left(\left(1 - z\right) - 1\right)\right) + 0.5\right)}^{\left(0.5 + \left(\left(1 - z\right) - 1\right)\right)}\right) \cdot e^{-\left(\left(7 + \left(\left(1 - z\right) - 1\right)\right) + 0.5\right)}\right)\right) \cdot \frac{\pi}{\sin \left(\pi \cdot z\right)}double f(double z) {
double r4193505 = atan2(1.0, 0.0);
double r4193506 = z;
double r4193507 = r4193505 * r4193506;
double r4193508 = sin(r4193507);
double r4193509 = r4193505 / r4193508;
double r4193510 = 2.0;
double r4193511 = r4193505 * r4193510;
double r4193512 = sqrt(r4193511);
double r4193513 = 1.0;
double r4193514 = r4193513 - r4193506;
double r4193515 = r4193514 - r4193513;
double r4193516 = 7.0;
double r4193517 = r4193515 + r4193516;
double r4193518 = 0.5;
double r4193519 = r4193517 + r4193518;
double r4193520 = r4193515 + r4193518;
double r4193521 = pow(r4193519, r4193520);
double r4193522 = r4193512 * r4193521;
double r4193523 = -r4193519;
double r4193524 = exp(r4193523);
double r4193525 = r4193522 * r4193524;
double r4193526 = 0.9999999999998099;
double r4193527 = 676.5203681218851;
double r4193528 = r4193515 + r4193513;
double r4193529 = r4193527 / r4193528;
double r4193530 = r4193526 + r4193529;
double r4193531 = -1259.1392167224028;
double r4193532 = r4193515 + r4193510;
double r4193533 = r4193531 / r4193532;
double r4193534 = r4193530 + r4193533;
double r4193535 = 771.3234287776531;
double r4193536 = 3.0;
double r4193537 = r4193515 + r4193536;
double r4193538 = r4193535 / r4193537;
double r4193539 = r4193534 + r4193538;
double r4193540 = -176.6150291621406;
double r4193541 = 4.0;
double r4193542 = r4193515 + r4193541;
double r4193543 = r4193540 / r4193542;
double r4193544 = r4193539 + r4193543;
double r4193545 = 12.507343278686905;
double r4193546 = 5.0;
double r4193547 = r4193515 + r4193546;
double r4193548 = r4193545 / r4193547;
double r4193549 = r4193544 + r4193548;
double r4193550 = -0.13857109526572012;
double r4193551 = 6.0;
double r4193552 = r4193515 + r4193551;
double r4193553 = r4193550 / r4193552;
double r4193554 = r4193549 + r4193553;
double r4193555 = 9.984369578019572e-06;
double r4193556 = r4193555 / r4193517;
double r4193557 = r4193554 + r4193556;
double r4193558 = 1.5056327351493116e-07;
double r4193559 = 8.0;
double r4193560 = r4193515 + r4193559;
double r4193561 = r4193558 / r4193560;
double r4193562 = r4193557 + r4193561;
double r4193563 = r4193525 * r4193562;
double r4193564 = r4193509 * r4193563;
return r4193564;
}
double f(double z) {
double r4193565 = 1.5056327351493116e-07;
double r4193566 = 1.0;
double r4193567 = z;
double r4193568 = r4193566 - r4193567;
double r4193569 = r4193568 - r4193566;
double r4193570 = 8.0;
double r4193571 = r4193569 + r4193570;
double r4193572 = r4193565 / r4193571;
double r4193573 = -0.13857109526572012;
double r4193574 = 6.0;
double r4193575 = r4193569 + r4193574;
double r4193576 = r4193573 / r4193575;
double r4193577 = 12.507343278686905;
double r4193578 = 5.0;
double r4193579 = cbrt(r4193569);
double r4193580 = r4193579 * r4193579;
double r4193581 = r4193580 * r4193579;
double r4193582 = r4193578 + r4193581;
double r4193583 = r4193577 / r4193582;
double r4193584 = -176.6150291621406;
double r4193585 = 4.0;
double r4193586 = r4193569 + r4193585;
double r4193587 = r4193584 / r4193586;
double r4193588 = 771.3234287776531;
double r4193589 = 3.0;
double r4193590 = r4193589 + r4193569;
double r4193591 = r4193588 / r4193590;
double r4193592 = 0.9999999999998099;
double r4193593 = 676.5203681218851;
double r4193594 = r4193569 + r4193566;
double r4193595 = r4193593 / r4193594;
double r4193596 = r4193592 + r4193595;
double r4193597 = -1259.1392167224028;
double r4193598 = 2.0;
double r4193599 = r4193569 + r4193598;
double r4193600 = r4193597 / r4193599;
double r4193601 = r4193596 + r4193600;
double r4193602 = r4193591 + r4193601;
double r4193603 = r4193587 + r4193602;
double r4193604 = r4193583 + r4193603;
double r4193605 = r4193576 + r4193604;
double r4193606 = 9.984369578019572e-06;
double r4193607 = 7.0;
double r4193608 = r4193607 + r4193569;
double r4193609 = r4193606 / r4193608;
double r4193610 = r4193605 + r4193609;
double r4193611 = r4193572 + r4193610;
double r4193612 = atan2(1.0, 0.0);
double r4193613 = r4193598 * r4193612;
double r4193614 = sqrt(r4193613);
double r4193615 = 0.5;
double r4193616 = r4193608 + r4193615;
double r4193617 = r4193615 + r4193569;
double r4193618 = pow(r4193616, r4193617);
double r4193619 = r4193614 * r4193618;
double r4193620 = -r4193616;
double r4193621 = exp(r4193620);
double r4193622 = r4193619 * r4193621;
double r4193623 = r4193611 * r4193622;
double r4193624 = r4193612 * r4193567;
double r4193625 = sin(r4193624);
double r4193626 = r4193612 / r4193625;
double r4193627 = r4193623 * r4193626;
return r4193627;
}



Bits error versus z
Results
Initial program 1.8
rmApplied add-cube-cbrt1.8
Final simplification1.8
herbie shell --seed 2019124
(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))))))