Average Error: 26.4 → 2.3
Time: 50.6s
Precision: 64
Internal Precision: 576
\[\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}\;\frac{\cos \left(2 \cdot x\right)}{{\left(\left|cos \cdot \left(x \cdot sin\right)\right|\right)}^{2}} \le -5.756873111586061 \cdot 10^{-266}:\\ \;\;\;\;\frac{\cos \left(2 \cdot x\right)}{{\left(\left|cos \cdot \left(x \cdot sin\right)\right|\right)}^{2}}\\ \mathbf{else}:\\ \;\;\;\;\left(\left(\sqrt[3]{\frac{1}{\left|\left(x \cdot cos\right) \cdot sin\right|}} \cdot \sqrt[3]{\frac{1}{\left|\left(x \cdot cos\right) \cdot sin\right|}}\right) \cdot \sqrt[3]{\frac{1}{\left|\left(x \cdot cos\right) \cdot sin\right|}}\right) \cdot \frac{\cos \left(2 \cdot x\right)}{\left|\left(x \cdot cos\right) \cdot sin\right|}\\ \end{array}\]

Error

Bits error versus x

Bits error versus cos

Bits error versus sin

Derivation

  1. Split input into 2 regimes
  2. if (/ (cos (* 2 x)) (pow (fabs (* cos (* x sin))) 2)) < -5.756873111586061e-266

    1. Initial program 43.9

      \[\frac{\cos \left(2 \cdot x\right)}{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}\]
    2. Using strategy rm
    3. Applied add-sqr-sqrt44.0

      \[\leadsto \frac{\cos \left(2 \cdot x\right)}{\color{blue}{\sqrt{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)} \cdot \sqrt{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}}}\]
    4. Applied simplify43.9

      \[\leadsto \frac{\cos \left(2 \cdot x\right)}{\color{blue}{\left|\left(x \cdot cos\right) \cdot sin\right|} \cdot \sqrt{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}}\]
    5. Applied simplify4.0

      \[\leadsto \frac{\cos \left(2 \cdot x\right)}{\left|\left(x \cdot cos\right) \cdot sin\right| \cdot \color{blue}{\left|\left(x \cdot cos\right) \cdot sin\right|}}\]
    6. Taylor expanded around 0 0.7

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

    if -5.756873111586061e-266 < (/ (cos (* 2 x)) (pow (fabs (* cos (* x sin))) 2))

    1. Initial program 24.1

      \[\frac{\cos \left(2 \cdot x\right)}{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}\]
    2. Using strategy rm
    3. Applied add-sqr-sqrt24.1

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

      \[\leadsto \frac{\cos \left(2 \cdot x\right)}{\color{blue}{\left|\left(x \cdot cos\right) \cdot sin\right|} \cdot \sqrt{{cos}^{2} \cdot \left(\left(x \cdot {sin}^{2}\right) \cdot x\right)}}\]
    5. Applied simplify2.6

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

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

      \[\leadsto \color{blue}{\frac{1}{\left|\left(x \cdot cos\right) \cdot sin\right|} \cdot \frac{\cos \left(2 \cdot x\right)}{\left|\left(x \cdot cos\right) \cdot sin\right|}}\]
    9. Using strategy rm
    10. Applied add-cube-cbrt2.5

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

Runtime

Time bar (total: 50.6s)Debug logProfile

herbie shell --seed '#(1072330854 3074818769 591214268 3603999196 3863745332 3332387116)' +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))))