\frac{e \cdot \sin v}{1 + e \cdot \cos v}\frac{\sin v}{\frac{\mathsf{fma}\left(\cos v, e, 1\right)}{e}}double f(double e, double v) {
double r10690 = e;
double r10691 = v;
double r10692 = sin(r10691);
double r10693 = r10690 * r10692;
double r10694 = 1.0;
double r10695 = cos(r10691);
double r10696 = r10690 * r10695;
double r10697 = r10694 + r10696;
double r10698 = r10693 / r10697;
return r10698;
}
double f(double e, double v) {
double r10699 = v;
double r10700 = sin(r10699);
double r10701 = cos(r10699);
double r10702 = e;
double r10703 = 1.0;
double r10704 = fma(r10701, r10702, r10703);
double r10705 = r10704 / r10702;
double r10706 = r10700 / r10705;
return r10706;
}



Bits error versus e



Bits error versus v
Initial program 0.1
Simplified0.3
Final simplification0.3
herbie shell --seed 2020064 +o rules:numerics
(FPCore (e v)
:name "Trigonometry A"
:precision binary64
:pre (<= 0.0 e 1)
(/ (* e (sin v)) (+ 1 (* e (cos v)))))