Average Error: 15.2 → 0.4
Time: 22.0s
Precision: 64
\[\frac{r \cdot \sin b}{\cos \left(a + b\right)}\]
\[\frac{r}{\frac{\cos b \cdot \cos a - \sin b \cdot \sin a}{\sin b}}\]
\frac{r \cdot \sin b}{\cos \left(a + b\right)}
\frac{r}{\frac{\cos b \cdot \cos a - \sin b \cdot \sin a}{\sin b}}
double f(double r, double a, double b) {
        double r1122213 = r;
        double r1122214 = b;
        double r1122215 = sin(r1122214);
        double r1122216 = r1122213 * r1122215;
        double r1122217 = a;
        double r1122218 = r1122217 + r1122214;
        double r1122219 = cos(r1122218);
        double r1122220 = r1122216 / r1122219;
        return r1122220;
}

double f(double r, double a, double b) {
        double r1122221 = r;
        double r1122222 = b;
        double r1122223 = cos(r1122222);
        double r1122224 = a;
        double r1122225 = cos(r1122224);
        double r1122226 = r1122223 * r1122225;
        double r1122227 = sin(r1122222);
        double r1122228 = sin(r1122224);
        double r1122229 = r1122227 * r1122228;
        double r1122230 = r1122226 - r1122229;
        double r1122231 = r1122230 / r1122227;
        double r1122232 = r1122221 / r1122231;
        return r1122232;
}

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.2

    \[\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 associate-/l*0.4

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

    \[\leadsto \frac{r}{\frac{\cos b \cdot \cos a - \sin b \cdot \sin a}{\sin b}}\]

Reproduce

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