Average Error: 38.6 → 5.3
Time: 56.5s
Precision: 64
Ground Truth: 128
\[\cos \left(x + \varepsilon\right) - \cos x\]
\[\begin{array}{l} \mathbf{if}\;\varepsilon \le -8.658073314327725 \cdot 10^{-05}:\\ \;\;\;\;\left(\cos x \cdot \cos \varepsilon - \sqrt[3]{{\left(\sin x\right)}^3 \cdot {\left(\sin \varepsilon\right)}^3}\right) - \cos x\\ \mathbf{if}\;\varepsilon \le -2.3361824468930465 \cdot 10^{-158}:\\ \;\;\;\;-\left(\frac{1}{2} \cdot {\varepsilon}^2 + \sqrt[3]{{\left(\sin x\right)}^3 \cdot {\left(\sin \varepsilon\right)}^3}\right)\\ \mathbf{if}\;\varepsilon \le 4.1153145131375503 \cdot 10^{-94}:\\ \;\;\;\;\left(\varepsilon \cdot \frac{1}{6}\right) \cdot {x}^3 - \varepsilon \cdot \left(\frac{1}{2} \cdot \varepsilon + x\right)\\ \mathbf{if}\;\varepsilon \le 3.384489567637978 \cdot 10^{-06}:\\ \;\;\;\;-\left(\frac{1}{2} \cdot {\varepsilon}^2 + \sqrt[3]{{\left(\sin x\right)}^3 \cdot {\left(\sin \varepsilon\right)}^3}\right)\\ \mathbf{else}:\\ \;\;\;\;\left(\cos x \cdot \cos \varepsilon - \sqrt[3]{{\left(\sin x\right)}^3 \cdot {\left(\sin \varepsilon\right)}^3}\right) - \cos x\\ \end{array}\]

Error

Bits error versus x

Bits error versus eps

Derivation

  1. Split input into 3 regimes.
  2. if eps < -8.658073314327725e-05 or 3.384489567637978e-06 < eps

    1. Initial program 30.2

      \[\cos \left(x + \varepsilon\right) - \cos x\]
    2. Using strategy rm
    3. Applied cos-sum 1.0

      \[\leadsto \color{blue}{\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right)} - \cos x\]
    4. Using strategy rm
    5. Applied add-cbrt-cube 1.0

      \[\leadsto \left(\cos x \cdot \cos \varepsilon - \sin x \cdot \color{blue}{\sqrt[3]{{\left(\sin \varepsilon\right)}^3}}\right) - \cos x\]
    6. Applied add-cbrt-cube 1.1

      \[\leadsto \left(\cos x \cdot \cos \varepsilon - \color{blue}{\sqrt[3]{{\left(\sin x\right)}^3}} \cdot \sqrt[3]{{\left(\sin \varepsilon\right)}^3}\right) - \cos x\]
    7. Applied cbrt-unprod 1.1

      \[\leadsto \left(\cos x \cdot \cos \varepsilon - \color{blue}{\sqrt[3]{{\left(\sin x\right)}^3 \cdot {\left(\sin \varepsilon\right)}^3}}\right) - \cos x\]

    if -8.658073314327725e-05 < eps < -2.3361824468930465e-158 or 4.1153145131375503e-94 < eps < 3.384489567637978e-06

    1. Initial program 60.9

      \[\cos \left(x + \varepsilon\right) - \cos x\]
    2. Using strategy rm
    3. Applied cos-sum 59.7

      \[\leadsto \color{blue}{\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right)} - \cos x\]
    4. Using strategy rm
    5. Applied add-cbrt-cube 59.7

      \[\leadsto \left(\cos x \cdot \cos \varepsilon - \sin x \cdot \color{blue}{\sqrt[3]{{\left(\sin \varepsilon\right)}^3}}\right) - \cos x\]
    6. Applied add-cbrt-cube 59.7

      \[\leadsto \left(\cos x \cdot \cos \varepsilon - \color{blue}{\sqrt[3]{{\left(\sin x\right)}^3}} \cdot \sqrt[3]{{\left(\sin \varepsilon\right)}^3}\right) - \cos x\]
    7. Applied cbrt-unprod 59.7

      \[\leadsto \left(\cos x \cdot \cos \varepsilon - \color{blue}{\sqrt[3]{{\left(\sin x\right)}^3 \cdot {\left(\sin \varepsilon\right)}^3}}\right) - \cos x\]
    8. Applied taylor 11.5

      \[\leadsto -\left(\frac{1}{2} \cdot {\varepsilon}^2 + \sqrt[3]{{\left(\sin x\right)}^3 \cdot {\left(\sin \varepsilon\right)}^3}\right)\]
    9. Taylor expanded around 0 11.5

      \[\leadsto \color{blue}{-\left(\frac{1}{2} \cdot {\varepsilon}^2 + \sqrt[3]{{\left(\sin x\right)}^3 \cdot {\left(\sin \varepsilon\right)}^3}\right)}\]

    if -2.3361824468930465e-158 < eps < 4.1153145131375503e-94

    1. Initial program 38.2

      \[\cos \left(x + \varepsilon\right) - \cos x\]
    2. Applied taylor 9.5

      \[\leadsto \frac{1}{6} \cdot \left(\varepsilon \cdot {x}^{3}\right) - \left(\frac{1}{2} \cdot {\varepsilon}^2 + \varepsilon \cdot x\right)\]
    3. Taylor expanded around 0 9.5

      \[\leadsto \color{blue}{\frac{1}{6} \cdot \left(\varepsilon \cdot {x}^{3}\right) - \left(\frac{1}{2} \cdot {\varepsilon}^2 + \varepsilon \cdot x\right)}\]
    4. Applied simplify 9.5

      \[\leadsto \color{blue}{\left(\varepsilon \cdot \frac{1}{6}\right) \cdot {x}^3 - \varepsilon \cdot \left(\frac{1}{2} \cdot \varepsilon + x\right)}\]
  3. Recombined 3 regimes into one program.
  4. Removed slow pow expressions

Runtime

Total time: 56.5s Debug log

Please include this information when filing a bug report:

herbie --seed '#(80236762 994875836 3097055555 749753005 47649860 2615944061)'
(FPCore (x eps)
  :name "NMSE problem 3.3.5"
  (- (cos (+ x eps)) (cos x)))