double code(double e, double v) {
return (e * sin(v)) / (1.0 + (e * cos(v)));
}
double code(double e, double v) {
return e / (((e * cos(v)) + 1.0) / sin(v));
}



Bits error versus e



Bits error versus v
Results
Initial program 0.1
rmApplied associate-/l*0.3
Simplified0.3
Final simplification0.3
herbie shell --seed 2020338
(FPCore (e v)
:name "Trigonometry A"
:precision binary64
:pre (<= 0.0 e 1.0)
(/ (* e (sin v)) (+ 1.0 (* e (cos v)))))