\left(1 + \sin x\right) + \sin x
2 \cdot \sin x + 1
double code(double x) {
return ((double) (((double) (1.0 + ((double) sin(x)))) + ((double) sin(x))));
}
double code(double x) {
return ((double) (((double) (2.0 * ((double) sin(x)))) + 1.0));
}



Bits error versus x
Results
Initial program 0.3
Simplified0.2
Final simplification0.2
herbie shell --seed 2020153
(FPCore (x)
:name "(+ (+ 1 (sin x)) (sin x))"
:precision binary64
(+ (+ 1.0 (sin x)) (sin x)))