\frac{e \cdot \sin v}{1 + e \cdot \cos v}\frac{e \cdot \sin v}{1 + e \cdot \cos v}(FPCore (e v) :precision binary64 (/ (* e (sin v)) (+ 1.0 (* e (cos v)))))
(FPCore (e v) :precision binary64 (/ (* e (sin v)) (+ 1.0 (* e (cos v)))))
double code(double e, double v) {
return (e * sin(v)) / (1.0 + (e * cos(v)));
}
double code(double e, double v) {
return (e * sin(v)) / (1.0 + (e * cos(v)));
}











Bits error versus e











Bits error versus v
Results
| Alternative 1 | |
|---|---|
| Error | 0.7 |
| Cost | 6848 |
| Alternative 2 | |
|---|---|
| Error | 0.9 |
| Cost | 6920 |
| Alternative 3 | |
|---|---|
| Error | 31.4 |
| Cost | 448 |
| Alternative 4 | |
|---|---|
| Error | 31.5 |
| Cost | 448 |
| Alternative 5 | |
|---|---|
| Error | 31.8 |
| Cost | 448 |
| Alternative 6 | |
|---|---|
| Error | 32.1 |
| Cost | 192 |
| Alternative 7 | |
|---|---|
| Error | 45.7 |
| Cost | 64 |
| Alternative 8 | |
|---|---|
| Error | 61.1 |
| Cost | 64 |


Initial program 0.1
rmApplied add-sqr-sqrt_binary64_44125.0
Simplified25.0
Simplified25.0
rmApplied *-un-lft-identity_binary64_41925.0
Applied sqrt-prod_binary64_43525.0
Applied associate-*l*_binary64_36025.0
Simplified0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2021040
(FPCore (e v)
:name "Trigonometry A"
:precision binary64
:pre (<= 0.0 e 1.0)
(/ (* e (sin v)) (+ 1.0 (* e (cos v)))))