\left(0.5 \cdot \sin re\right) \cdot \left(e^{0.0 - im} + e^{im}\right)\left(0.5 \cdot \sin re\right) \cdot \left(e^{0.0 - im} + e^{im}\right)double f(double re, double im) {
double r14503 = 0.5;
double r14504 = re;
double r14505 = sin(r14504);
double r14506 = r14503 * r14505;
double r14507 = 0.0;
double r14508 = im;
double r14509 = r14507 - r14508;
double r14510 = exp(r14509);
double r14511 = exp(r14508);
double r14512 = r14510 + r14511;
double r14513 = r14506 * r14512;
return r14513;
}
double f(double re, double im) {
double r14514 = 0.5;
double r14515 = re;
double r14516 = sin(r14515);
double r14517 = r14514 * r14516;
double r14518 = 0.0;
double r14519 = im;
double r14520 = r14518 - r14519;
double r14521 = exp(r14520);
double r14522 = exp(r14519);
double r14523 = r14521 + r14522;
double r14524 = r14517 * r14523;
return r14524;
}



Bits error versus re



Bits error versus im
Results
Initial program 0.0
Final simplification0.0
herbie shell --seed 2019194 +o rules:numerics
(FPCore (re im)
:name "math.sin on complex, real part"
(* (* 0.5 (sin re)) (+ (exp (- 0.0 im)) (exp im))))