Average Error: 15.1 → 0.4
Time: 6.1s
Precision: 64
\[\frac{r \cdot \sin b}{\cos \left(a + b\right)}\]
\[\frac{r \cdot \sin b}{\frac{\left(\cos a \cdot \cos b\right) \cdot \left(\cos a \cdot \cos b\right) - \left(\sin a \cdot \sin b\right) \cdot \left(\sin a \cdot \sin b\right)}{\cos a \cdot \cos b + \sin a \cdot \sin b}}\]
\frac{r \cdot \sin b}{\cos \left(a + b\right)}
\frac{r \cdot \sin b}{\frac{\left(\cos a \cdot \cos b\right) \cdot \left(\cos a \cdot \cos b\right) - \left(\sin a \cdot \sin b\right) \cdot \left(\sin a \cdot \sin b\right)}{\cos a \cdot \cos b + \sin a \cdot \sin b}}
double f(double r, double a, double b) {
        double r16303 = r;
        double r16304 = b;
        double r16305 = sin(r16304);
        double r16306 = r16303 * r16305;
        double r16307 = a;
        double r16308 = r16307 + r16304;
        double r16309 = cos(r16308);
        double r16310 = r16306 / r16309;
        return r16310;
}

double f(double r, double a, double b) {
        double r16311 = r;
        double r16312 = b;
        double r16313 = sin(r16312);
        double r16314 = r16311 * r16313;
        double r16315 = a;
        double r16316 = cos(r16315);
        double r16317 = cos(r16312);
        double r16318 = r16316 * r16317;
        double r16319 = r16318 * r16318;
        double r16320 = sin(r16315);
        double r16321 = r16320 * r16313;
        double r16322 = r16321 * r16321;
        double r16323 = r16319 - r16322;
        double r16324 = r16318 + r16321;
        double r16325 = r16323 / r16324;
        double r16326 = r16314 / r16325;
        return r16326;
}

Error

Bits error versus r

Bits error versus a

Bits error versus b

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 15.1

    \[\frac{r \cdot \sin b}{\cos \left(a + b\right)}\]
  2. Using strategy rm
  3. Applied cos-sum0.3

    \[\leadsto \frac{r \cdot \sin b}{\color{blue}{\cos a \cdot \cos b - \sin a \cdot \sin b}}\]
  4. Using strategy rm
  5. Applied flip--0.4

    \[\leadsto \frac{r \cdot \sin b}{\color{blue}{\frac{\left(\cos a \cdot \cos b\right) \cdot \left(\cos a \cdot \cos b\right) - \left(\sin a \cdot \sin b\right) \cdot \left(\sin a \cdot \sin b\right)}{\cos a \cdot \cos b + \sin a \cdot \sin b}}}\]
  6. Final simplification0.4

    \[\leadsto \frac{r \cdot \sin b}{\frac{\left(\cos a \cdot \cos b\right) \cdot \left(\cos a \cdot \cos b\right) - \left(\sin a \cdot \sin b\right) \cdot \left(\sin a \cdot \sin b\right)}{\cos a \cdot \cos b + \sin a \cdot \sin b}}\]

Reproduce

herbie shell --seed 2019356 
(FPCore (r a b)
  :name "r*sin(b)/cos(a+b), A"
  :precision binary64
  (/ (* r (sin b)) (cos (+ a b))))