\left(0.5 \cdot \sin re\right) \cdot \left(e^{0 - im} + e^{im}\right)\sin re \cdot \left(0.5 \cdot e^{im} + \frac{\sqrt{0.5}}{\frac{\sqrt{e^{im}}}{\frac{\sqrt{0.5}}{\sqrt{e^{im}}}}}\right)double f(double re, double im) {
double r904735 = 0.5;
double r904736 = re;
double r904737 = sin(r904736);
double r904738 = r904735 * r904737;
double r904739 = 0.0;
double r904740 = im;
double r904741 = r904739 - r904740;
double r904742 = exp(r904741);
double r904743 = exp(r904740);
double r904744 = r904742 + r904743;
double r904745 = r904738 * r904744;
return r904745;
}
double f(double re, double im) {
double r904746 = re;
double r904747 = sin(r904746);
double r904748 = 0.5;
double r904749 = im;
double r904750 = exp(r904749);
double r904751 = r904748 * r904750;
double r904752 = sqrt(r904748);
double r904753 = sqrt(r904750);
double r904754 = r904752 / r904753;
double r904755 = r904753 / r904754;
double r904756 = r904752 / r904755;
double r904757 = r904751 + r904756;
double r904758 = r904747 * r904757;
return r904758;
}



Bits error versus re



Bits error versus im
Results
Initial program 0.0
Simplified0.0
rmApplied add-sqr-sqrt0.0
Applied associate-/l*0.0
rmApplied add-sqr-sqrt0.1
Applied associate-/l*0.1
Final simplification0.1
herbie shell --seed 2019155
(FPCore (re im)
:name "math.sin on complex, real part"
(* (* 0.5 (sin re)) (+ (exp (- 0 im)) (exp im))))