\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.9999999999998099 + \frac{676.5203681218851}{\left(z - 1\right) + 1}\right) + \frac{-1259.1392167224028}{\left(z - 1\right) + 2}\right) + \frac{771.3234287776531}{\left(z - 1\right) + 3}\right) + \frac{-176.6150291621406}{\left(z - 1\right) + 4}\right) + \frac{12.507343278686905}{\left(z - 1\right) + 5}\right) + \frac{-0.13857109526572012}{\left(z - 1\right) + 6}\right) + \frac{9.984369578019572 \cdot 10^{-06}}{\left(z - 1\right) + 7}\right) + \frac{1.5056327351493116 \cdot 10^{-07}}{\left(z - 1\right) + 8}\right)\frac{{\left(\left(0.5 + z\right) - -6\right)}^{\left(0.5 + \left(z - 1\right)\right)}}{e^{0.5 + z}} \cdot \left(\left(\left(\left(\frac{12.507343278686905}{z + 4} + \frac{-0.13857109526572012}{\left(z - 1\right) + 6}\right) + \left(\frac{9.984369578019572 \cdot 10^{-06}}{z + 6} + \frac{1.5056327351493116 \cdot 10^{-07}}{z + 7}\right)\right) + \left(0.9999999999998099 + \left(\left(\frac{771.3234287776531}{2 + z} + \frac{-1259.1392167224028}{1 + z}\right) + \left(\frac{-176.6150291621406}{3 + z} + \frac{676.5203681218851}{z}\right)\right)\right)\right) \cdot \frac{\sqrt{\pi \cdot 2}}{e^{6}}\right)double f(double z) {
double r5999585 = atan2(1.0, 0.0);
double r5999586 = 2.0;
double r5999587 = r5999585 * r5999586;
double r5999588 = sqrt(r5999587);
double r5999589 = z;
double r5999590 = 1.0;
double r5999591 = r5999589 - r5999590;
double r5999592 = 7.0;
double r5999593 = r5999591 + r5999592;
double r5999594 = 0.5;
double r5999595 = r5999593 + r5999594;
double r5999596 = r5999591 + r5999594;
double r5999597 = pow(r5999595, r5999596);
double r5999598 = r5999588 * r5999597;
double r5999599 = -r5999595;
double r5999600 = exp(r5999599);
double r5999601 = r5999598 * r5999600;
double r5999602 = 0.9999999999998099;
double r5999603 = 676.5203681218851;
double r5999604 = r5999591 + r5999590;
double r5999605 = r5999603 / r5999604;
double r5999606 = r5999602 + r5999605;
double r5999607 = -1259.1392167224028;
double r5999608 = r5999591 + r5999586;
double r5999609 = r5999607 / r5999608;
double r5999610 = r5999606 + r5999609;
double r5999611 = 771.3234287776531;
double r5999612 = 3.0;
double r5999613 = r5999591 + r5999612;
double r5999614 = r5999611 / r5999613;
double r5999615 = r5999610 + r5999614;
double r5999616 = -176.6150291621406;
double r5999617 = 4.0;
double r5999618 = r5999591 + r5999617;
double r5999619 = r5999616 / r5999618;
double r5999620 = r5999615 + r5999619;
double r5999621 = 12.507343278686905;
double r5999622 = 5.0;
double r5999623 = r5999591 + r5999622;
double r5999624 = r5999621 / r5999623;
double r5999625 = r5999620 + r5999624;
double r5999626 = -0.13857109526572012;
double r5999627 = 6.0;
double r5999628 = r5999591 + r5999627;
double r5999629 = r5999626 / r5999628;
double r5999630 = r5999625 + r5999629;
double r5999631 = 9.984369578019572e-06;
double r5999632 = r5999631 / r5999593;
double r5999633 = r5999630 + r5999632;
double r5999634 = 1.5056327351493116e-07;
double r5999635 = 8.0;
double r5999636 = r5999591 + r5999635;
double r5999637 = r5999634 / r5999636;
double r5999638 = r5999633 + r5999637;
double r5999639 = r5999601 * r5999638;
return r5999639;
}
double f(double z) {
double r5999640 = 0.5;
double r5999641 = z;
double r5999642 = r5999640 + r5999641;
double r5999643 = -6.0;
double r5999644 = r5999642 - r5999643;
double r5999645 = 1.0;
double r5999646 = r5999641 - r5999645;
double r5999647 = r5999640 + r5999646;
double r5999648 = pow(r5999644, r5999647);
double r5999649 = exp(r5999642);
double r5999650 = r5999648 / r5999649;
double r5999651 = 12.507343278686905;
double r5999652 = 4.0;
double r5999653 = r5999641 + r5999652;
double r5999654 = r5999651 / r5999653;
double r5999655 = -0.13857109526572012;
double r5999656 = 6.0;
double r5999657 = r5999646 + r5999656;
double r5999658 = r5999655 / r5999657;
double r5999659 = r5999654 + r5999658;
double r5999660 = 9.984369578019572e-06;
double r5999661 = r5999641 + r5999656;
double r5999662 = r5999660 / r5999661;
double r5999663 = 1.5056327351493116e-07;
double r5999664 = 7.0;
double r5999665 = r5999641 + r5999664;
double r5999666 = r5999663 / r5999665;
double r5999667 = r5999662 + r5999666;
double r5999668 = r5999659 + r5999667;
double r5999669 = 0.9999999999998099;
double r5999670 = 771.3234287776531;
double r5999671 = 2.0;
double r5999672 = r5999671 + r5999641;
double r5999673 = r5999670 / r5999672;
double r5999674 = -1259.1392167224028;
double r5999675 = r5999645 + r5999641;
double r5999676 = r5999674 / r5999675;
double r5999677 = r5999673 + r5999676;
double r5999678 = -176.6150291621406;
double r5999679 = 3.0;
double r5999680 = r5999679 + r5999641;
double r5999681 = r5999678 / r5999680;
double r5999682 = 676.5203681218851;
double r5999683 = r5999682 / r5999641;
double r5999684 = r5999681 + r5999683;
double r5999685 = r5999677 + r5999684;
double r5999686 = r5999669 + r5999685;
double r5999687 = r5999668 + r5999686;
double r5999688 = atan2(1.0, 0.0);
double r5999689 = r5999688 * r5999671;
double r5999690 = sqrt(r5999689);
double r5999691 = exp(r5999656);
double r5999692 = r5999690 / r5999691;
double r5999693 = r5999687 * r5999692;
double r5999694 = r5999650 * r5999693;
return r5999694;
}



Bits error versus z
Results
Initial program 60.0
Simplified1.1
rmApplied sub-neg1.1
Applied exp-sum1.1
Applied times-frac1.1
Applied associate-*l*0.8
Simplified0.8
Final simplification0.8
herbie shell --seed 2019128 +o rules:numerics
(FPCore (z)
:name "Jmat.Real.gamma, branch z greater than 0.5"
(* (* (* (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)))))