Average Error: 27.3 → 2.6
Time: 3.5m
Precision: 64
\[\frac{\cos \left(2 \cdot x\right)}{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}\]
\[\frac{1}{\left(cos \cdot x\right) \cdot sin} \cdot \frac{1}{\frac{cos \cdot x}{\frac{\cos \left(x \cdot 2\right)}{sin}}}\]
\frac{\cos \left(2 \cdot x\right)}{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}
\frac{1}{\left(cos \cdot x\right) \cdot sin} \cdot \frac{1}{\frac{cos \cdot x}{\frac{\cos \left(x \cdot 2\right)}{sin}}}
double f(double x, double cos, double sin) {
        double r23254846 = 2.0;
        double r23254847 = x;
        double r23254848 = r23254846 * r23254847;
        double r23254849 = cos(r23254848);
        double r23254850 = cos;
        double r23254851 = pow(r23254850, r23254846);
        double r23254852 = sin;
        double r23254853 = pow(r23254852, r23254846);
        double r23254854 = r23254847 * r23254853;
        double r23254855 = r23254854 * r23254847;
        double r23254856 = r23254851 * r23254855;
        double r23254857 = r23254849 / r23254856;
        return r23254857;
}

double f(double x, double cos, double sin) {
        double r23254858 = 1.0;
        double r23254859 = cos;
        double r23254860 = x;
        double r23254861 = r23254859 * r23254860;
        double r23254862 = sin;
        double r23254863 = r23254861 * r23254862;
        double r23254864 = r23254858 / r23254863;
        double r23254865 = 2.0;
        double r23254866 = r23254860 * r23254865;
        double r23254867 = cos(r23254866);
        double r23254868 = r23254867 / r23254862;
        double r23254869 = r23254861 / r23254868;
        double r23254870 = r23254858 / r23254869;
        double r23254871 = r23254864 * r23254870;
        return r23254871;
}

Error

Bits error versus x

Bits error versus cos

Bits error versus sin

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 27.3

    \[\frac{\cos \left(2 \cdot x\right)}{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}\]
  2. Simplified2.8

    \[\leadsto \color{blue}{\frac{\cos \left(2 \cdot x\right)}{\left(sin \cdot \left(x \cdot cos\right)\right) \cdot \left(sin \cdot \left(x \cdot cos\right)\right)}}\]
  3. Using strategy rm
  4. Applied associate-/r*2.6

    \[\leadsto \color{blue}{\frac{\frac{\cos \left(2 \cdot x\right)}{sin \cdot \left(x \cdot cos\right)}}{sin \cdot \left(x \cdot cos\right)}}\]
  5. Using strategy rm
  6. Applied associate-/r*2.5

    \[\leadsto \frac{\color{blue}{\frac{\frac{\cos \left(2 \cdot x\right)}{sin}}{x \cdot cos}}}{sin \cdot \left(x \cdot cos\right)}\]
  7. Using strategy rm
  8. Applied *-un-lft-identity2.5

    \[\leadsto \frac{\frac{\color{blue}{1 \cdot \frac{\cos \left(2 \cdot x\right)}{sin}}}{x \cdot cos}}{sin \cdot \left(x \cdot cos\right)}\]
  9. Applied associate-/l*2.6

    \[\leadsto \frac{\color{blue}{\frac{1}{\frac{x \cdot cos}{\frac{\cos \left(2 \cdot x\right)}{sin}}}}}{sin \cdot \left(x \cdot cos\right)}\]
  10. Using strategy rm
  11. Applied div-inv2.6

    \[\leadsto \color{blue}{\frac{1}{\frac{x \cdot cos}{\frac{\cos \left(2 \cdot x\right)}{sin}}} \cdot \frac{1}{sin \cdot \left(x \cdot cos\right)}}\]
  12. Final simplification2.6

    \[\leadsto \frac{1}{\left(cos \cdot x\right) \cdot sin} \cdot \frac{1}{\frac{cos \cdot x}{\frac{\cos \left(x \cdot 2\right)}{sin}}}\]

Reproduce

herbie shell --seed 2019121 +o rules:numerics
(FPCore (x cos sin)
  :name "cos(2*x)/(cos^2(x)*sin^2(x))"
  (/ (cos (* 2 x)) (* (pow cos 2) (* (* x (pow sin 2)) x))))