Average Error: 15.1 → 0.4
Time: 13.9s
Precision: 64
\[r \cdot \frac{\sin b}{\cos \left(a + b\right)}\]
\[\frac{r \cdot \sin b}{\frac{\left(\left(\cos a \cdot \cos a\right) \cdot \cos a\right) \cdot \left(\left(\cos b \cdot \cos b\right) \cdot \cos b\right) - {\left(\sin a \cdot \sin b\right)}^{3}}{\left(\cos a \cdot \cos b\right) \cdot \left(\cos a \cdot \cos b\right) + \left(\sin b \cdot \sin a\right) \cdot \left(\cos a \cdot \cos b + \sin a \cdot \sin b\right)}}\]
r \cdot \frac{\sin b}{\cos \left(a + b\right)}
\frac{r \cdot \sin b}{\frac{\left(\left(\cos a \cdot \cos a\right) \cdot \cos a\right) \cdot \left(\left(\cos b \cdot \cos b\right) \cdot \cos b\right) - {\left(\sin a \cdot \sin b\right)}^{3}}{\left(\cos a \cdot \cos b\right) \cdot \left(\cos a \cdot \cos b\right) + \left(\sin b \cdot \sin a\right) \cdot \left(\cos a \cdot \cos b + \sin a \cdot \sin b\right)}}
double f(double r, double a, double b) {
        double r19036 = r;
        double r19037 = b;
        double r19038 = sin(r19037);
        double r19039 = a;
        double r19040 = r19039 + r19037;
        double r19041 = cos(r19040);
        double r19042 = r19038 / r19041;
        double r19043 = r19036 * r19042;
        return r19043;
}

double f(double r, double a, double b) {
        double r19044 = r;
        double r19045 = b;
        double r19046 = sin(r19045);
        double r19047 = r19044 * r19046;
        double r19048 = a;
        double r19049 = cos(r19048);
        double r19050 = r19049 * r19049;
        double r19051 = r19050 * r19049;
        double r19052 = cos(r19045);
        double r19053 = r19052 * r19052;
        double r19054 = r19053 * r19052;
        double r19055 = r19051 * r19054;
        double r19056 = sin(r19048);
        double r19057 = r19056 * r19046;
        double r19058 = 3.0;
        double r19059 = pow(r19057, r19058);
        double r19060 = r19055 - r19059;
        double r19061 = r19049 * r19052;
        double r19062 = r19061 * r19061;
        double r19063 = r19046 * r19056;
        double r19064 = r19061 + r19057;
        double r19065 = r19063 * r19064;
        double r19066 = r19062 + r19065;
        double r19067 = r19060 / r19066;
        double r19068 = r19047 / r19067;
        return r19068;
}

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

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

    \[\leadsto r \cdot \frac{\sin b}{\color{blue}{\cos a \cdot \cos b - \sin a \cdot \sin b}}\]
  4. Using strategy rm
  5. Applied associate-*r/0.3

    \[\leadsto \color{blue}{\frac{r \cdot \sin b}{\cos a \cdot \cos b - \sin a \cdot \sin b}}\]
  6. Using strategy rm
  7. Applied flip3--0.4

    \[\leadsto \frac{r \cdot \sin b}{\color{blue}{\frac{{\left(\cos a \cdot \cos b\right)}^{3} - {\left(\sin a \cdot \sin b\right)}^{3}}{\left(\cos a \cdot \cos b\right) \cdot \left(\cos a \cdot \cos b\right) + \left(\left(\sin a \cdot \sin b\right) \cdot \left(\sin a \cdot \sin b\right) + \left(\cos a \cdot \cos b\right) \cdot \left(\sin a \cdot \sin b\right)\right)}}}\]
  8. Simplified0.4

    \[\leadsto \frac{r \cdot \sin b}{\frac{{\left(\cos a \cdot \cos b\right)}^{3} - {\left(\sin a \cdot \sin b\right)}^{3}}{\color{blue}{\left(\cos a \cdot \cos b\right) \cdot \left(\cos a \cdot \cos b\right) + \left(\sin b \cdot \sin a\right) \cdot \left(\cos a \cdot \cos b + \sin a \cdot \sin b\right)}}}\]
  9. Using strategy rm
  10. Applied add-cbrt-cube0.7

    \[\leadsto \frac{r \cdot \sin b}{\frac{{\left(\cos a \cdot \color{blue}{\sqrt[3]{\left(\cos b \cdot \cos b\right) \cdot \cos b}}\right)}^{3} - {\left(\sin a \cdot \sin b\right)}^{3}}{\left(\cos a \cdot \cos b\right) \cdot \left(\cos a \cdot \cos b\right) + \left(\sin b \cdot \sin a\right) \cdot \left(\cos a \cdot \cos b + \sin a \cdot \sin b\right)}}\]
  11. Applied add-cbrt-cube0.9

    \[\leadsto \frac{r \cdot \sin b}{\frac{{\left(\color{blue}{\sqrt[3]{\left(\cos a \cdot \cos a\right) \cdot \cos a}} \cdot \sqrt[3]{\left(\cos b \cdot \cos b\right) \cdot \cos b}\right)}^{3} - {\left(\sin a \cdot \sin b\right)}^{3}}{\left(\cos a \cdot \cos b\right) \cdot \left(\cos a \cdot \cos b\right) + \left(\sin b \cdot \sin a\right) \cdot \left(\cos a \cdot \cos b + \sin a \cdot \sin b\right)}}\]
  12. Applied cbrt-unprod0.9

    \[\leadsto \frac{r \cdot \sin b}{\frac{{\color{blue}{\left(\sqrt[3]{\left(\left(\cos a \cdot \cos a\right) \cdot \cos a\right) \cdot \left(\left(\cos b \cdot \cos b\right) \cdot \cos b\right)}\right)}}^{3} - {\left(\sin a \cdot \sin b\right)}^{3}}{\left(\cos a \cdot \cos b\right) \cdot \left(\cos a \cdot \cos b\right) + \left(\sin b \cdot \sin a\right) \cdot \left(\cos a \cdot \cos b + \sin a \cdot \sin b\right)}}\]
  13. Applied rem-cube-cbrt0.4

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

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

Reproduce

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