Average Error: 27.3 → 2.8
Time: 2.2m
Precision: 64
\[\frac{\cos \left(2 \cdot x\right)}{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}\]
\[\frac{\sqrt[3]{\cos \left(2 \cdot x\right)} \cdot \sqrt[3]{\cos \left(2 \cdot x\right)}}{\left(sin \cdot cos\right) \cdot x} \cdot \frac{\sqrt[3]{\cos \left(2 \cdot x\right)}}{\left(sin \cdot cos\right) \cdot x}\]
\frac{\cos \left(2 \cdot x\right)}{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}
\frac{\sqrt[3]{\cos \left(2 \cdot x\right)} \cdot \sqrt[3]{\cos \left(2 \cdot x\right)}}{\left(sin \cdot cos\right) \cdot x} \cdot \frac{\sqrt[3]{\cos \left(2 \cdot x\right)}}{\left(sin \cdot cos\right) \cdot x}
double f(double x, double cos, double sin) {
        double r15599361 = 2.0;
        double r15599362 = x;
        double r15599363 = r15599361 * r15599362;
        double r15599364 = cos(r15599363);
        double r15599365 = cos;
        double r15599366 = pow(r15599365, r15599361);
        double r15599367 = sin;
        double r15599368 = pow(r15599367, r15599361);
        double r15599369 = r15599362 * r15599368;
        double r15599370 = r15599369 * r15599362;
        double r15599371 = r15599366 * r15599370;
        double r15599372 = r15599364 / r15599371;
        return r15599372;
}

double f(double x, double cos, double sin) {
        double r15599373 = 2.0;
        double r15599374 = x;
        double r15599375 = r15599373 * r15599374;
        double r15599376 = cos(r15599375);
        double r15599377 = cbrt(r15599376);
        double r15599378 = r15599377 * r15599377;
        double r15599379 = sin;
        double r15599380 = cos;
        double r15599381 = r15599379 * r15599380;
        double r15599382 = r15599381 * r15599374;
        double r15599383 = r15599378 / r15599382;
        double r15599384 = r15599377 / r15599382;
        double r15599385 = r15599383 * r15599384;
        return r15599385;
}

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. Taylor expanded around inf 31.0

    \[\leadsto \color{blue}{\frac{\cos \left(2 \cdot x\right)}{{sin}^{2} \cdot \left({x}^{2} \cdot {cos}^{2}\right)}}\]
  4. Simplified3.1

    \[\leadsto \color{blue}{\frac{\cos \left(2 \cdot x\right)}{\left(\left(x \cdot sin\right) \cdot cos\right) \cdot \left(\left(x \cdot sin\right) \cdot cos\right)}}\]
  5. Taylor expanded around -inf 30.9

    \[\leadsto \frac{\cos \left(2 \cdot x\right)}{\color{blue}{{x}^{2} \cdot \left({cos}^{2} \cdot {sin}^{2}\right)}}\]
  6. Simplified3.0

    \[\leadsto \frac{\cos \left(2 \cdot x\right)}{\color{blue}{\left(\left(cos \cdot sin\right) \cdot x\right) \cdot \left(\left(cos \cdot sin\right) \cdot x\right)}}\]
  7. Using strategy rm
  8. Applied add-cube-cbrt3.2

    \[\leadsto \frac{\color{blue}{\left(\sqrt[3]{\cos \left(2 \cdot x\right)} \cdot \sqrt[3]{\cos \left(2 \cdot x\right)}\right) \cdot \sqrt[3]{\cos \left(2 \cdot x\right)}}}{\left(\left(cos \cdot sin\right) \cdot x\right) \cdot \left(\left(cos \cdot sin\right) \cdot x\right)}\]
  9. Applied times-frac2.8

    \[\leadsto \color{blue}{\frac{\sqrt[3]{\cos \left(2 \cdot x\right)} \cdot \sqrt[3]{\cos \left(2 \cdot x\right)}}{\left(cos \cdot sin\right) \cdot x} \cdot \frac{\sqrt[3]{\cos \left(2 \cdot x\right)}}{\left(cos \cdot sin\right) \cdot x}}\]
  10. Final simplification2.8

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

Reproduce

herbie shell --seed 2019112 +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))))