Average Error: 0.1 → 0.1
Time: 1.6m
Precision: 64
Internal Precision: 576
\[\frac{e \cdot \sin v}{1 + e \cdot \cos v}\]
\[e \cdot \frac{\sin v}{(\left(\cos v\right) \cdot e + 1)_*}\]

Error

Bits error versus e

Bits error versus v

Derivation

  1. Initial program 0.1

    \[\frac{e \cdot \sin v}{1 + e \cdot \cos v}\]
  2. Initial simplification0.1

    \[\leadsto \frac{e \cdot \sin v}{(\left(\cos v\right) \cdot e + 1)_*}\]
  3. Using strategy rm
  4. Applied add-sqr-sqrt0.2

    \[\leadsto \frac{e \cdot \sin v}{\color{blue}{\sqrt{(\left(\cos v\right) \cdot e + 1)_*} \cdot \sqrt{(\left(\cos v\right) \cdot e + 1)_*}}}\]
  5. Applied associate-/r*0.2

    \[\leadsto \color{blue}{\frac{\frac{e \cdot \sin v}{\sqrt{(\left(\cos v\right) \cdot e + 1)_*}}}{\sqrt{(\left(\cos v\right) \cdot e + 1)_*}}}\]
  6. Using strategy rm
  7. Applied *-un-lft-identity0.2

    \[\leadsto \frac{\frac{e \cdot \sin v}{\sqrt{(\left(\cos v\right) \cdot e + 1)_*}}}{\color{blue}{1 \cdot \sqrt{(\left(\cos v\right) \cdot e + 1)_*}}}\]
  8. Applied *-un-lft-identity0.2

    \[\leadsto \frac{\frac{e \cdot \sin v}{\color{blue}{1 \cdot \sqrt{(\left(\cos v\right) \cdot e + 1)_*}}}}{1 \cdot \sqrt{(\left(\cos v\right) \cdot e + 1)_*}}\]
  9. Applied times-frac0.2

    \[\leadsto \frac{\color{blue}{\frac{e}{1} \cdot \frac{\sin v}{\sqrt{(\left(\cos v\right) \cdot e + 1)_*}}}}{1 \cdot \sqrt{(\left(\cos v\right) \cdot e + 1)_*}}\]
  10. Applied times-frac0.2

    \[\leadsto \color{blue}{\frac{\frac{e}{1}}{1} \cdot \frac{\frac{\sin v}{\sqrt{(\left(\cos v\right) \cdot e + 1)_*}}}{\sqrt{(\left(\cos v\right) \cdot e + 1)_*}}}\]
  11. Simplified0.2

    \[\leadsto \color{blue}{e} \cdot \frac{\frac{\sin v}{\sqrt{(\left(\cos v\right) \cdot e + 1)_*}}}{\sqrt{(\left(\cos v\right) \cdot e + 1)_*}}\]
  12. Simplified0.1

    \[\leadsto e \cdot \color{blue}{\frac{\sin v}{(\left(\cos v\right) \cdot e + 1)_*}}\]
  13. Final simplification0.1

    \[\leadsto e \cdot \frac{\sin v}{(\left(\cos v\right) \cdot e + 1)_*}\]

Runtime

Time bar (total: 1.6m)Debug logProfile

herbie shell --seed 2018234 +o rules:numerics
(FPCore (e v)
  :name "Trigonometry A"
  :pre (<= 0 e 1)
  (/ (* e (sin v)) (+ 1 (* e (cos v)))))