double f(double z) {
double r37709678 = atan2(1.0, 0.0);
double r37709679 = 2.0;
double r37709680 = r37709678 * r37709679;
double r37709681 = sqrt(r37709680);
double r37709682 = z;
double r37709683 = 1.0;
double r37709684 = r37709682 - r37709683;
double r37709685 = 7.0;
double r37709686 = r37709684 + r37709685;
double r37709687 = 0.5;
double r37709688 = r37709686 + r37709687;
double r37709689 = r37709684 + r37709687;
double r37709690 = pow(r37709688, r37709689);
double r37709691 = r37709681 * r37709690;
double r37709692 = -r37709688;
double r37709693 = exp(r37709692);
double r37709694 = r37709691 * r37709693;
double r37709695 = 0.9999999999998099;
double r37709696 = 676.5203681218851;
double r37709697 = r37709684 + r37709683;
double r37709698 = r37709696 / r37709697;
double r37709699 = r37709695 + r37709698;
double r37709700 = -1259.1392167224028;
double r37709701 = r37709684 + r37709679;
double r37709702 = r37709700 / r37709701;
double r37709703 = r37709699 + r37709702;
double r37709704 = 771.3234287776531;
double r37709705 = 3.0;
double r37709706 = r37709684 + r37709705;
double r37709707 = r37709704 / r37709706;
double r37709708 = r37709703 + r37709707;
double r37709709 = -176.6150291621406;
double r37709710 = 4.0;
double r37709711 = r37709684 + r37709710;
double r37709712 = r37709709 / r37709711;
double r37709713 = r37709708 + r37709712;
double r37709714 = 12.507343278686905;
double r37709715 = 5.0;
double r37709716 = r37709684 + r37709715;
double r37709717 = r37709714 / r37709716;
double r37709718 = r37709713 + r37709717;
double r37709719 = -0.13857109526572012;
double r37709720 = 6.0;
double r37709721 = r37709684 + r37709720;
double r37709722 = r37709719 / r37709721;
double r37709723 = r37709718 + r37709722;
double r37709724 = 9.984369578019572e-06;
double r37709725 = r37709724 / r37709686;
double r37709726 = r37709723 + r37709725;
double r37709727 = 1.5056327351493116e-07;
double r37709728 = 8.0;
double r37709729 = r37709684 + r37709728;
double r37709730 = r37709727 / r37709729;
double r37709731 = r37709726 + r37709730;
double r37709732 = r37709694 * r37709731;
return r37709732;
}
double f(double z) {
double r37709733 = z;
double r37709734 = -5.0;
double r37709735 = r37709733 - r37709734;
double r37709736 = 6.0;
double r37709737 = r37709736 + r37709733;
double r37709738 = 7.0;
double r37709739 = r37709738 + r37709733;
double r37709740 = r37709737 * r37709739;
double r37709741 = 3.0;
double r37709742 = r37709741 + r37709733;
double r37709743 = 771.3234287776531;
double r37709744 = 2.0;
double r37709745 = r37709733 + r37709744;
double r37709746 = r37709743 / r37709745;
double r37709747 = pow(r37709746, r37709741);
double r37709748 = 12.507343278686905;
double r37709749 = 4.0;
double r37709750 = r37709749 + r37709733;
double r37709751 = r37709748 / r37709750;
double r37709752 = pow(r37709751, r37709741);
double r37709753 = r37709747 + r37709752;
double r37709754 = r37709742 * r37709753;
double r37709755 = -176.6150291621406;
double r37709756 = r37709751 * r37709751;
double r37709757 = r37709751 * r37709746;
double r37709758 = r37709756 - r37709757;
double r37709759 = r37709746 * r37709746;
double r37709760 = r37709758 + r37709759;
double r37709761 = r37709755 * r37709760;
double r37709762 = r37709754 + r37709761;
double r37709763 = 0.9999999999998099;
double r37709764 = -1259.1392167224028;
double r37709765 = -1.0;
double r37709766 = r37709733 - r37709765;
double r37709767 = r37709764 / r37709766;
double r37709768 = r37709763 - r37709767;
double r37709769 = r37709733 * r37709768;
double r37709770 = r37709762 * r37709769;
double r37709771 = r37709763 * r37709763;
double r37709772 = r37709767 * r37709767;
double r37709773 = r37709771 - r37709772;
double r37709774 = r37709773 * r37709733;
double r37709775 = 676.5203681218851;
double r37709776 = r37709768 * r37709775;
double r37709777 = r37709774 + r37709776;
double r37709778 = r37709760 * r37709742;
double r37709779 = r37709777 * r37709778;
double r37709780 = r37709770 + r37709779;
double r37709781 = r37709740 * r37709780;
double r37709782 = r37709778 * r37709769;
double r37709783 = 1.5056327351493116e-07;
double r37709784 = r37709737 * r37709783;
double r37709785 = 9.984369578019572e-06;
double r37709786 = r37709785 * r37709739;
double r37709787 = r37709784 + r37709786;
double r37709788 = r37709782 * r37709787;
double r37709789 = r37709781 + r37709788;
double r37709790 = r37709735 * r37709789;
double r37709791 = -0.13857109526572012;
double r37709792 = r37709740 * r37709782;
double r37709793 = r37709791 * r37709792;
double r37709794 = r37709790 + r37709793;
double r37709795 = atan2(1.0, 0.0);
double r37709796 = r37709795 * r37709744;
double r37709797 = sqrt(r37709796);
double r37709798 = 0.5;
double r37709799 = r37709798 + r37709733;
double r37709800 = r37709736 + r37709799;
double r37709801 = exp(r37709800);
double r37709802 = r37709797 / r37709801;
double r37709803 = r37709765 + r37709733;
double r37709804 = r37709798 + r37709803;
double r37709805 = pow(r37709800, r37709804);
double r37709806 = r37709802 * r37709805;
double r37709807 = r37709794 * r37709806;
double r37709808 = r37709735 * r37709792;
double r37709809 = r37709807 / r37709808;
return r37709809;
}
\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(z - -5\right) \cdot \left(\left(\left(6 + z\right) \cdot \left(7 + z\right)\right) \cdot \left(\left(\left(3 + z\right) \cdot \left({\left(\frac{771.3234287776531}{z + 2}\right)}^{3} + {\left(\frac{12.507343278686905}{4 + z}\right)}^{3}\right) + -176.6150291621406 \cdot \left(\left(\frac{12.507343278686905}{4 + z} \cdot \frac{12.507343278686905}{4 + z} - \frac{12.507343278686905}{4 + z} \cdot \frac{771.3234287776531}{z + 2}\right) + \frac{771.3234287776531}{z + 2} \cdot \frac{771.3234287776531}{z + 2}\right)\right) \cdot \left(z \cdot \left(0.9999999999998099 - \frac{-1259.1392167224028}{z - -1}\right)\right) + \left(\left(0.9999999999998099 \cdot 0.9999999999998099 - \frac{-1259.1392167224028}{z - -1} \cdot \frac{-1259.1392167224028}{z - -1}\right) \cdot z + \left(0.9999999999998099 - \frac{-1259.1392167224028}{z - -1}\right) \cdot 676.5203681218851\right) \cdot \left(\left(\left(\frac{12.507343278686905}{4 + z} \cdot \frac{12.507343278686905}{4 + z} - \frac{12.507343278686905}{4 + z} \cdot \frac{771.3234287776531}{z + 2}\right) + \frac{771.3234287776531}{z + 2} \cdot \frac{771.3234287776531}{z + 2}\right) \cdot \left(3 + z\right)\right)\right) + \left(\left(\left(\left(\frac{12.507343278686905}{4 + z} \cdot \frac{12.507343278686905}{4 + z} - \frac{12.507343278686905}{4 + z} \cdot \frac{771.3234287776531}{z + 2}\right) + \frac{771.3234287776531}{z + 2} \cdot \frac{771.3234287776531}{z + 2}\right) \cdot \left(3 + z\right)\right) \cdot \left(z \cdot \left(0.9999999999998099 - \frac{-1259.1392167224028}{z - -1}\right)\right)\right) \cdot \left(\left(6 + z\right) \cdot 1.5056327351493116 \cdot 10^{-07} + 9.984369578019572 \cdot 10^{-06} \cdot \left(7 + z\right)\right)\right) + -0.13857109526572012 \cdot \left(\left(\left(6 + z\right) \cdot \left(7 + z\right)\right) \cdot \left(\left(\left(\left(\frac{12.507343278686905}{4 + z} \cdot \frac{12.507343278686905}{4 + z} - \frac{12.507343278686905}{4 + z} \cdot \frac{771.3234287776531}{z + 2}\right) + \frac{771.3234287776531}{z + 2} \cdot \frac{771.3234287776531}{z + 2}\right) \cdot \left(3 + z\right)\right) \cdot \left(z \cdot \left(0.9999999999998099 - \frac{-1259.1392167224028}{z - -1}\right)\right)\right)\right)\right) \cdot \left(\frac{\sqrt{\pi \cdot 2}}{e^{6 + \left(0.5 + z\right)}} \cdot {\left(6 + \left(0.5 + z\right)\right)}^{\left(0.5 + \left(-1 + z\right)\right)}\right)}{\left(z - -5\right) \cdot \left(\left(\left(6 + z\right) \cdot \left(7 + z\right)\right) \cdot \left(\left(\left(\left(\frac{12.507343278686905}{4 + z} \cdot \frac{12.507343278686905}{4 + z} - \frac{12.507343278686905}{4 + z} \cdot \frac{771.3234287776531}{z + 2}\right) + \frac{771.3234287776531}{z + 2} \cdot \frac{771.3234287776531}{z + 2}\right) \cdot \left(3 + z\right)\right) \cdot \left(z \cdot \left(0.9999999999998099 - \frac{-1259.1392167224028}{z - -1}\right)\right)\right)\right)}


Bits error versus z
Initial program 59.9
Simplified0.8
Simplified1.1
rmApplied flip-+1.1
Applied frac-add1.0
Applied flip3-+1.0
Applied frac-add1.0
Applied frac-add1.2
Applied frac-add1.2
Applied frac-add1.1
Applied frac-add1.0
Applied associate-*r/0.5
Final simplification0.5
herbie shell --seed 2019101 +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)))))