\frac{e \cdot \sin v}{1 + e \cdot \cos v}\sqrt{1 - e \cdot \cos v} \cdot \frac{\frac{e}{\sqrt{1 + e \cdot \cos v}} \cdot \sin v}{\sqrt{1 - e \cdot \left(e \cdot {\cos v}^{2}\right)}}(FPCore (e v) :precision binary64 (/ (* e (sin v)) (+ 1.0 (* e (cos v)))))
(FPCore (e v) :precision binary64 (* (sqrt (- 1.0 (* e (cos v)))) (/ (* (/ e (sqrt (+ 1.0 (* e (cos v))))) (sin v)) (sqrt (- 1.0 (* e (* e (pow (cos v) 2.0))))))))
double code(double e, double v) {
return (e * sin(v)) / (1.0 + (e * cos(v)));
}
double code(double e, double v) {
return sqrt(1.0 - (e * cos(v))) * (((e / sqrt(1.0 + (e * cos(v)))) * sin(v)) / sqrt(1.0 - (e * (e * pow(cos(v), 2.0)))));
}













Bits error versus e













Bits error versus v
Results
| Alternative 1 | |
|---|---|
| Error | 0.1 |
| Cost | 13376 |
| Alternative 2 | |
|---|---|
| Error | 0.8 |
| Cost | 6848 |
| Alternative 3 | |
|---|---|
| Error | 1.4 |
| Cost | 6592 |
| Alternative 4 | |
|---|---|
| Error | 31.1 |
| Cost | 576 |
| Alternative 5 | |
|---|---|
| Error | 31.1 |
| Cost | 448 |
| Alternative 6 | |
|---|---|
| Error | 31.1 |
| Cost | 448 |
| Alternative 7 | |
|---|---|
| Error | 31.3 |
| Cost | 448 |
| Alternative 8 | |
|---|---|
| Error | 31.6 |
| Cost | 192 |
| Alternative 9 | |
|---|---|
| Error | 45.9 |
| Cost | 64 |
| Alternative 10 | |
|---|---|
| Error | 61.1 |
| Cost | 64 |

Initial program 0.1
rmApplied add-sqr-sqrt_binary64_14640.2
Applied associate-/r*_binary64_13860.2
Simplified0.2
rmApplied flip-+_binary64_14160.1
Applied sqrt-div_binary64_14590.1
Applied associate-/r/_binary64_13880.1
Simplified0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2021014
(FPCore (e v)
:name "Trigonometry A"
:precision binary64
:pre (<= 0.0 e 1.0)
(/ (* e (sin v)) (+ 1.0 (* e (cos v)))))