\left(0.5 \cdot \sin re\right) \cdot \left(e^{0 - im} + e^{im}\right)\frac{\sin re \cdot \left(\left(e^{im} \cdot 0.5\right) \cdot \left(\left(e^{im} \cdot 0.5\right) \cdot \left(e^{im} \cdot 0.5\right)\right) + \sqrt[3]{\left(\frac{0.5}{e^{im}} \cdot \left(\frac{0.5}{e^{im}} \cdot \frac{0.5}{e^{im}}\right)\right) \cdot \left(\frac{0.5}{e^{im}} \cdot \left(\frac{0.5}{e^{im}} \cdot \frac{0.5}{e^{im}}\right)\right)} \cdot \frac{0.5}{e^{im}}\right)}{\left(e^{im} \cdot 0.5\right) \cdot \left(e^{im} \cdot 0.5\right) + \left(\frac{0.5}{e^{im}} \cdot \frac{0.5}{e^{im}} - \frac{0.5}{e^{im}} \cdot \left(e^{im} \cdot 0.5\right)\right)}double f(double re, double im) {
double r494696 = 0.5;
double r494697 = re;
double r494698 = sin(r494697);
double r494699 = r494696 * r494698;
double r494700 = 0.0;
double r494701 = im;
double r494702 = r494700 - r494701;
double r494703 = exp(r494702);
double r494704 = exp(r494701);
double r494705 = r494703 + r494704;
double r494706 = r494699 * r494705;
return r494706;
}
double f(double re, double im) {
double r494707 = re;
double r494708 = sin(r494707);
double r494709 = im;
double r494710 = exp(r494709);
double r494711 = 0.5;
double r494712 = r494710 * r494711;
double r494713 = r494712 * r494712;
double r494714 = r494712 * r494713;
double r494715 = r494711 / r494710;
double r494716 = r494715 * r494715;
double r494717 = r494715 * r494716;
double r494718 = r494717 * r494717;
double r494719 = cbrt(r494718);
double r494720 = r494719 * r494715;
double r494721 = r494714 + r494720;
double r494722 = r494708 * r494721;
double r494723 = r494715 * r494712;
double r494724 = r494716 - r494723;
double r494725 = r494713 + r494724;
double r494726 = r494722 / r494725;
return r494726;
}



Bits error versus re



Bits error versus im
Results
Initial program 0.0
Simplified0.0
rmApplied flip3-+0.2
Applied associate-*l/0.2
Simplified0.2
rmApplied add-cbrt-cube0.2
Applied add-cbrt-cube1.2
Applied cbrt-unprod0.3
Final simplification0.3
herbie shell --seed 2019156
(FPCore (re im)
:name "math.sin on complex, real part"
(* (* 0.5 (sin re)) (+ (exp (- 0 im)) (exp im))))