Average Error: 0.1 → 0.1
Time: 31.4s
Precision: 64
\[0.0 \le e \le 1\]
\[\frac{e \cdot \sin v}{1 + e \cdot \cos v}\]
\[\left(1 - \cos v \cdot e\right) \cdot \frac{e \cdot \sin v}{1 \cdot 1 - \left(\cos v \cdot e\right) \cdot \left(\cos v \cdot e\right)}\]
\frac{e \cdot \sin v}{1 + e \cdot \cos v}
\left(1 - \cos v \cdot e\right) \cdot \frac{e \cdot \sin v}{1 \cdot 1 - \left(\cos v \cdot e\right) \cdot \left(\cos v \cdot e\right)}
double f(double e, double v) {
        double r909907 = e;
        double r909908 = v;
        double r909909 = sin(r909908);
        double r909910 = r909907 * r909909;
        double r909911 = 1.0;
        double r909912 = cos(r909908);
        double r909913 = r909907 * r909912;
        double r909914 = r909911 + r909913;
        double r909915 = r909910 / r909914;
        return r909915;
}

double f(double e, double v) {
        double r909916 = 1.0;
        double r909917 = v;
        double r909918 = cos(r909917);
        double r909919 = e;
        double r909920 = r909918 * r909919;
        double r909921 = r909916 - r909920;
        double r909922 = sin(r909917);
        double r909923 = r909919 * r909922;
        double r909924 = r909916 * r909916;
        double r909925 = r909920 * r909920;
        double r909926 = r909924 - r909925;
        double r909927 = r909923 / r909926;
        double r909928 = r909921 * r909927;
        return r909928;
}

Error

Bits error versus e

Bits error versus v

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.1

    \[\frac{e \cdot \sin v}{1 + e \cdot \cos v}\]
  2. Using strategy rm
  3. Applied flip-+0.1

    \[\leadsto \frac{e \cdot \sin v}{\color{blue}{\frac{1 \cdot 1 - \left(e \cdot \cos v\right) \cdot \left(e \cdot \cos v\right)}{1 - e \cdot \cos v}}}\]
  4. Applied associate-/r/0.1

    \[\leadsto \color{blue}{\frac{e \cdot \sin v}{1 \cdot 1 - \left(e \cdot \cos v\right) \cdot \left(e \cdot \cos v\right)} \cdot \left(1 - e \cdot \cos v\right)}\]
  5. Final simplification0.1

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

Reproduce

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