Average Error: 1.8 → 2.5
Time: 1.6m
Precision: 64
\[\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) + 0.5\right)}^{\left(\left(\left(1 - z\right) - 1\right) + 0.5\right)}\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)}{e^{\left(\left(\left(1 - z\right) - 1\right) + 7\right) + 0.5}}\]
\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) + 0.5\right)}^{\left(\left(\left(1 - z\right) - 1\right) + 0.5\right)}\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)}{e^{\left(\left(\left(1 - z\right) - 1\right) + 7\right) + 0.5}}
double f(double z) {
        double r100035 = atan2(1.0, 0.0);
        double r100036 = z;
        double r100037 = r100035 * r100036;
        double r100038 = sin(r100037);
        double r100039 = r100035 / r100038;
        double r100040 = 2.0;
        double r100041 = r100035 * r100040;
        double r100042 = sqrt(r100041);
        double r100043 = 1.0;
        double r100044 = r100043 - r100036;
        double r100045 = r100044 - r100043;
        double r100046 = 7.0;
        double r100047 = r100045 + r100046;
        double r100048 = 0.5;
        double r100049 = r100047 + r100048;
        double r100050 = r100045 + r100048;
        double r100051 = pow(r100049, r100050);
        double r100052 = r100042 * r100051;
        double r100053 = -r100049;
        double r100054 = exp(r100053);
        double r100055 = r100052 * r100054;
        double r100056 = 0.9999999999998099;
        double r100057 = 676.5203681218851;
        double r100058 = r100045 + r100043;
        double r100059 = r100057 / r100058;
        double r100060 = r100056 + r100059;
        double r100061 = -1259.1392167224028;
        double r100062 = r100045 + r100040;
        double r100063 = r100061 / r100062;
        double r100064 = r100060 + r100063;
        double r100065 = 771.3234287776531;
        double r100066 = 3.0;
        double r100067 = r100045 + r100066;
        double r100068 = r100065 / r100067;
        double r100069 = r100064 + r100068;
        double r100070 = -176.6150291621406;
        double r100071 = 4.0;
        double r100072 = r100045 + r100071;
        double r100073 = r100070 / r100072;
        double r100074 = r100069 + r100073;
        double r100075 = 12.507343278686905;
        double r100076 = 5.0;
        double r100077 = r100045 + r100076;
        double r100078 = r100075 / r100077;
        double r100079 = r100074 + r100078;
        double r100080 = -0.13857109526572012;
        double r100081 = 6.0;
        double r100082 = r100045 + r100081;
        double r100083 = r100080 / r100082;
        double r100084 = r100079 + r100083;
        double r100085 = 9.984369578019572e-06;
        double r100086 = r100085 / r100047;
        double r100087 = r100084 + r100086;
        double r100088 = 1.5056327351493116e-07;
        double r100089 = 8.0;
        double r100090 = r100045 + r100089;
        double r100091 = r100088 / r100090;
        double r100092 = r100087 + r100091;
        double r100093 = r100055 * r100092;
        double r100094 = r100039 * r100093;
        return r100094;
}

double f(double z) {
        double r100095 = atan2(1.0, 0.0);
        double r100096 = z;
        double r100097 = r100095 * r100096;
        double r100098 = sin(r100097);
        double r100099 = r100095 / r100098;
        double r100100 = 2.0;
        double r100101 = r100095 * r100100;
        double r100102 = sqrt(r100101);
        double r100103 = 1.0;
        double r100104 = r100103 - r100096;
        double r100105 = r100104 - r100103;
        double r100106 = 7.0;
        double r100107 = r100105 + r100106;
        double r100108 = 0.5;
        double r100109 = r100107 + r100108;
        double r100110 = r100105 + r100108;
        double r100111 = pow(r100109, r100110);
        double r100112 = r100102 * r100111;
        double r100113 = r100099 * r100112;
        double r100114 = 0.9999999999998099;
        double r100115 = 676.5203681218851;
        double r100116 = r100105 + r100103;
        double r100117 = r100115 / r100116;
        double r100118 = r100114 + r100117;
        double r100119 = -1259.1392167224028;
        double r100120 = r100105 + r100100;
        double r100121 = r100119 / r100120;
        double r100122 = r100118 + r100121;
        double r100123 = 771.3234287776531;
        double r100124 = 3.0;
        double r100125 = r100105 + r100124;
        double r100126 = r100123 / r100125;
        double r100127 = r100122 + r100126;
        double r100128 = -176.6150291621406;
        double r100129 = 4.0;
        double r100130 = r100105 + r100129;
        double r100131 = r100128 / r100130;
        double r100132 = r100127 + r100131;
        double r100133 = 12.507343278686905;
        double r100134 = 5.0;
        double r100135 = r100105 + r100134;
        double r100136 = r100133 / r100135;
        double r100137 = r100132 + r100136;
        double r100138 = -0.13857109526572012;
        double r100139 = 6.0;
        double r100140 = r100105 + r100139;
        double r100141 = r100138 / r100140;
        double r100142 = r100137 + r100141;
        double r100143 = 9.984369578019572e-06;
        double r100144 = r100143 / r100107;
        double r100145 = r100142 + r100144;
        double r100146 = 1.5056327351493116e-07;
        double r100147 = 8.0;
        double r100148 = r100105 + r100147;
        double r100149 = r100146 / r100148;
        double r100150 = r100145 + r100149;
        double r100151 = r100113 * r100150;
        double r100152 = exp(r100109);
        double r100153 = r100151 / r100152;
        return r100153;
}

Error

Bits error versus z

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 1.8

    \[\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)\]
  2. Final simplification2.5

    \[\leadsto \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) + 0.5\right)}^{\left(\left(\left(1 - z\right) - 1\right) + 0.5\right)}\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)}{e^{\left(\left(\left(1 - z\right) - 1\right) + 7\right) + 0.5}}\]

Reproduce

herbie shell --seed 2019291 
(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))))))