Average Error: 28.0 → 2.2
Time: 44.0s
Precision: 64
\[\frac{\cos \left(2 \cdot x\right)}{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}\]
\[\begin{array}{l} \mathbf{if}\;cos \le 2.3344053992995315 \cdot 10^{-226}:\\ \;\;\;\;\frac{\cos \left(x \cdot 2\right)}{x \cdot \left(sin \cdot cos\right)} \cdot \left(\frac{1}{sin \cdot cos} \cdot \frac{1}{x}\right)\\ \mathbf{elif}\;cos \le 7.956426647105508 \cdot 10^{+132}:\\ \;\;\;\;\frac{\cos \left(x \cdot 2\right)}{\left(cos \cdot \left(x \cdot sin\right)\right) \cdot \left(cos \cdot \left(x \cdot sin\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\cos \left(x \cdot 2\right)}{x \cdot \left(sin \cdot cos\right)} \cdot \left(\frac{1}{sin \cdot cos} \cdot \frac{1}{x}\right)\\ \end{array}\]
\frac{\cos \left(2 \cdot x\right)}{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}
\begin{array}{l}
\mathbf{if}\;cos \le 2.3344053992995315 \cdot 10^{-226}:\\
\;\;\;\;\frac{\cos \left(x \cdot 2\right)}{x \cdot \left(sin \cdot cos\right)} \cdot \left(\frac{1}{sin \cdot cos} \cdot \frac{1}{x}\right)\\

\mathbf{elif}\;cos \le 7.956426647105508 \cdot 10^{+132}:\\
\;\;\;\;\frac{\cos \left(x \cdot 2\right)}{\left(cos \cdot \left(x \cdot sin\right)\right) \cdot \left(cos \cdot \left(x \cdot sin\right)\right)}\\

\mathbf{else}:\\
\;\;\;\;\frac{\cos \left(x \cdot 2\right)}{x \cdot \left(sin \cdot cos\right)} \cdot \left(\frac{1}{sin \cdot cos} \cdot \frac{1}{x}\right)\\

\end{array}
double f(double x, double cos, double sin) {
        double r1866451 = 2.0;
        double r1866452 = x;
        double r1866453 = r1866451 * r1866452;
        double r1866454 = cos(r1866453);
        double r1866455 = cos;
        double r1866456 = pow(r1866455, r1866451);
        double r1866457 = sin;
        double r1866458 = pow(r1866457, r1866451);
        double r1866459 = r1866452 * r1866458;
        double r1866460 = r1866459 * r1866452;
        double r1866461 = r1866456 * r1866460;
        double r1866462 = r1866454 / r1866461;
        return r1866462;
}

double f(double x, double cos, double sin) {
        double r1866463 = cos;
        double r1866464 = 2.3344053992995315e-226;
        bool r1866465 = r1866463 <= r1866464;
        double r1866466 = x;
        double r1866467 = 2.0;
        double r1866468 = r1866466 * r1866467;
        double r1866469 = cos(r1866468);
        double r1866470 = sin;
        double r1866471 = r1866470 * r1866463;
        double r1866472 = r1866466 * r1866471;
        double r1866473 = r1866469 / r1866472;
        double r1866474 = 1.0;
        double r1866475 = r1866474 / r1866471;
        double r1866476 = r1866474 / r1866466;
        double r1866477 = r1866475 * r1866476;
        double r1866478 = r1866473 * r1866477;
        double r1866479 = 7.956426647105508e+132;
        bool r1866480 = r1866463 <= r1866479;
        double r1866481 = r1866466 * r1866470;
        double r1866482 = r1866463 * r1866481;
        double r1866483 = r1866482 * r1866482;
        double r1866484 = r1866469 / r1866483;
        double r1866485 = r1866480 ? r1866484 : r1866478;
        double r1866486 = r1866465 ? r1866478 : r1866485;
        return r1866486;
}

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. Split input into 2 regimes
  2. if cos < 2.3344053992995315e-226 or 7.956426647105508e+132 < cos

    1. Initial program 28.4

      \[\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(\left(sin \cdot cos\right) \cdot x\right) \cdot \left(\left(sin \cdot cos\right) \cdot x\right)}}\]
    3. Using strategy rm
    4. Applied *-un-lft-identity2.8

      \[\leadsto \frac{\color{blue}{1 \cdot \cos \left(2 \cdot x\right)}}{\left(\left(sin \cdot cos\right) \cdot x\right) \cdot \left(\left(sin \cdot cos\right) \cdot x\right)}\]
    5. Applied times-frac2.6

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

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

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

    if 2.3344053992995315e-226 < cos < 7.956426647105508e+132

    1. Initial program 26.8

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

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

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

      \[\leadsto \color{blue}{\frac{\cos \left(x \cdot 2\right)}{\left(cos \cdot \left(x \cdot sin\right)\right) \cdot \left(cos \cdot \left(x \cdot sin\right)\right)}}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification2.2

    \[\leadsto \begin{array}{l} \mathbf{if}\;cos \le 2.3344053992995315 \cdot 10^{-226}:\\ \;\;\;\;\frac{\cos \left(x \cdot 2\right)}{x \cdot \left(sin \cdot cos\right)} \cdot \left(\frac{1}{sin \cdot cos} \cdot \frac{1}{x}\right)\\ \mathbf{elif}\;cos \le 7.956426647105508 \cdot 10^{+132}:\\ \;\;\;\;\frac{\cos \left(x \cdot 2\right)}{\left(cos \cdot \left(x \cdot sin\right)\right) \cdot \left(cos \cdot \left(x \cdot sin\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\cos \left(x \cdot 2\right)}{x \cdot \left(sin \cdot cos\right)} \cdot \left(\frac{1}{sin \cdot cos} \cdot \frac{1}{x}\right)\\ \end{array}\]

Reproduce

herbie shell --seed 2019130 
(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))))