double f(double alpha, double beta, double i) {
double r13700059 = alpha;
double r13700060 = beta;
double r13700061 = r13700059 + r13700060;
double r13700062 = r13700060 - r13700059;
double r13700063 = r13700061 * r13700062;
double r13700064 = 2.0;
double r13700065 = i;
double r13700066 = r13700064 * r13700065;
double r13700067 = r13700061 + r13700066;
double r13700068 = r13700063 / r13700067;
double r13700069 = 2.0;
double r13700070 = r13700067 + r13700069;
double r13700071 = r13700068 / r13700070;
double r13700072 = 1.0;
double r13700073 = r13700071 + r13700072;
double r13700074 = r13700073 / r13700069;
return r13700074;
}
double f(double alpha, double beta, double i) {
double r13700075 = beta;
double r13700076 = alpha;
double r13700077 = r13700075 + r13700076;
double r13700078 = r13700075 - r13700076;
double r13700079 = r13700077 * r13700078;
double r13700080 = 2.0;
double r13700081 = i;
double r13700082 = r13700080 * r13700081;
double r13700083 = r13700082 + r13700077;
double r13700084 = r13700079 / r13700083;
double r13700085 = 2.0;
double r13700086 = r13700085 + r13700083;
double r13700087 = r13700084 / r13700086;
double r13700088 = -0.9999999999999999;
bool r13700089 = r13700087 <= r13700088;
double r13700090 = 8.0;
double r13700091 = r13700090 / r13700076;
double r13700092 = 4.0;
double r13700093 = r13700091 - r13700092;
double r13700094 = r13700093 / r13700076;
double r13700095 = r13700094 / r13700076;
double r13700096 = r13700085 / r13700076;
double r13700097 = r13700095 + r13700096;
double r13700098 = r13700097 / r13700085;
double r13700099 = r13700078 / r13700083;
double r13700100 = cbrt(r13700099);
double r13700101 = sqrt(r13700086);
double r13700102 = r13700100 / r13700101;
double r13700103 = r13700100 * r13700100;
double r13700104 = r13700103 / r13700101;
double r13700105 = r13700102 * r13700104;
double r13700106 = r13700077 * r13700105;
double r13700107 = exp(r13700106);
double r13700108 = 1.0;
double r13700109 = exp(r13700108);
double r13700110 = r13700107 * r13700109;
double r13700111 = log(r13700110);
double r13700112 = r13700108 + r13700106;
double r13700113 = r13700111 * r13700112;
double r13700114 = r13700113 * r13700112;
double r13700115 = cbrt(r13700114);
double r13700116 = r13700115 / r13700085;
double r13700117 = r13700089 ? r13700098 : r13700116;
return r13700117;
}
\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0} + 1.0}{2.0}\begin{array}{l}
\mathbf{if}\;\frac{\frac{\left(\beta + \alpha\right) \cdot \left(\beta - \alpha\right)}{2 \cdot i + \left(\beta + \alpha\right)}}{2.0 + \left(2 \cdot i + \left(\beta + \alpha\right)\right)} \le -0.9999999999999999:\\
\;\;\;\;\frac{\frac{\frac{\frac{8.0}{\alpha} - 4.0}{\alpha}}{\alpha} + \frac{2.0}{\alpha}}{2.0}\\
\mathbf{else}:\\
\;\;\;\;\frac{\sqrt[3]{\left(\log \left(e^{\left(\beta + \alpha\right) \cdot \left(\frac{\sqrt[3]{\frac{\beta - \alpha}{2 \cdot i + \left(\beta + \alpha\right)}}}{\sqrt{2.0 + \left(2 \cdot i + \left(\beta + \alpha\right)\right)}} \cdot \frac{\sqrt[3]{\frac{\beta - \alpha}{2 \cdot i + \left(\beta + \alpha\right)}} \cdot \sqrt[3]{\frac{\beta - \alpha}{2 \cdot i + \left(\beta + \alpha\right)}}}{\sqrt{2.0 + \left(2 \cdot i + \left(\beta + \alpha\right)\right)}}\right)} \cdot e^{1.0}\right) \cdot \left(1.0 + \left(\beta + \alpha\right) \cdot \left(\frac{\sqrt[3]{\frac{\beta - \alpha}{2 \cdot i + \left(\beta + \alpha\right)}}}{\sqrt{2.0 + \left(2 \cdot i + \left(\beta + \alpha\right)\right)}} \cdot \frac{\sqrt[3]{\frac{\beta - \alpha}{2 \cdot i + \left(\beta + \alpha\right)}} \cdot \sqrt[3]{\frac{\beta - \alpha}{2 \cdot i + \left(\beta + \alpha\right)}}}{\sqrt{2.0 + \left(2 \cdot i + \left(\beta + \alpha\right)\right)}}\right)\right)\right) \cdot \left(1.0 + \left(\beta + \alpha\right) \cdot \left(\frac{\sqrt[3]{\frac{\beta - \alpha}{2 \cdot i + \left(\beta + \alpha\right)}}}{\sqrt{2.0 + \left(2 \cdot i + \left(\beta + \alpha\right)\right)}} \cdot \frac{\sqrt[3]{\frac{\beta - \alpha}{2 \cdot i + \left(\beta + \alpha\right)}} \cdot \sqrt[3]{\frac{\beta - \alpha}{2 \cdot i + \left(\beta + \alpha\right)}}}{\sqrt{2.0 + \left(2 \cdot i + \left(\beta + \alpha\right)\right)}}\right)\right)}}{2.0}\\
\end{array}


Bits error versus alpha



Bits error versus beta



Bits error versus i
if (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2.0)) < -0.9999999999999999Initial program 62.8
Taylor expanded around -inf 33.0
Simplified33.0
if -0.9999999999999999 < (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2.0)) Initial program 12.1
rmApplied *-un-lft-identity12.1
Applied *-un-lft-identity12.1
Applied distribute-lft-out12.1
Applied *-un-lft-identity12.1
Applied times-frac0.3
Applied times-frac0.3
Simplified0.3
rmApplied add-sqr-sqrt0.4
Applied add-cube-cbrt0.4
Applied times-frac0.4
rmApplied add-cbrt-cube0.4
rmApplied add-log-exp0.4
Applied add-log-exp0.4
Applied sum-log0.4
Final simplification7.7
herbie shell --seed 2019102
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/2"
:pre (and (> alpha -1) (> beta -1) (> i 0))
(/ (+ (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2.0)) 1.0) 2.0))