Average Error: 0.3 → 0.3
Time: 2.8s
Precision: binary64
\[\left(x - \frac{\sin x - \frac{x}{2}}{\left(-\cos x\right) - \frac{1}{2}}\right) - \left(-timeout\right) \cdot 100\]
\[x - \left(\frac{\sin x - \frac{x}{2}}{\left(-\cos x\right) - \frac{1}{2}} - timeout \cdot 100\right)\]

Error

Bits error versus x

Bits error versus timeout

Derivation

  1. Initial program 0.3

    \[\left(x - \frac{\sin x - \frac{x}{2}}{\left(-\cos x\right) - \frac{1}{2}}\right) - \left(-timeout\right) \cdot 100\]
  2. Simplified0.3

    \[\leadsto \color{blue}{x - \left(\frac{\sin x - \frac{x}{2}}{\left(-\cos x\right) - \frac{1}{2}} - timeout \cdot 100\right)}\]
  3. Final simplification0.3

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

Reproduce

herbie shell --seed 2020153 
(FPCore (x timeout)
  :name "(- (- x (/ (- (sin x) (/ x 2)) (- (- (cos x)) (/ 1 2)))) (* (- timeout) 100))"
  :precision binary64
  (- (- x (/ (- (sin x) (/ x 2.0)) (- (neg (cos x)) (/ 1.0 2.0)))) (* (neg timeout) 100.0)))