e^{-\left(1 - x \cdot x\right)}
e^{x \cdot x} \cdot e^{-1}
(FPCore (x) :precision binary64 (exp (- (- 1.0 (* x x)))))
(FPCore (x) :precision binary64 (* (exp (* x x)) (exp -1.0)))
double code(double x) {
return exp(-(1.0 - (x * x)));
}
double code(double x) {
return exp(x * x) * exp(-1.0);
}



Bits error versus x
Results
Initial program 0.0
Simplified0.0
Applied *-un-lft-identity_binary640.0
Applied exp-prod_binary640.0
Simplified0.0
Applied fma-udef_binary640.0
Applied unpow-prod-up_binary640.0
Simplified0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2021215
(FPCore (x)
:name "exp neg sub"
:precision binary64
(exp (- (- 1.0 (* x x)))))