Average Error: 29.8 → 1.0
Time: 29.8s
Precision: 64
Internal Precision: 2432
\[\frac{1 - \cos x}{\sin x}\]
\[\log_* (1 + (e^{\frac{\sin x}{1 + \cos x}} - 1)^*)\]

Error

Bits error versus x

Target

Original29.8
Target0
Herbie1.0
\[\tan \left(\frac{x}{2}\right)\]

Derivation

  1. Initial program 29.8

    \[\frac{1 - \cos x}{\sin x}\]
  2. Using strategy rm
  3. Applied flip--30.0

    \[\leadsto \frac{\color{blue}{\frac{1 \cdot 1 - \cos x \cdot \cos x}{1 + \cos x}}}{\sin x}\]
  4. Applied simplify14.7

    \[\leadsto \frac{\frac{\color{blue}{\sin x \cdot \sin x}}{1 + \cos x}}{\sin x}\]
  5. Using strategy rm
  6. Applied log1p-expm1-u15.3

    \[\leadsto \color{blue}{\log_* (1 + (e^{\frac{\frac{\sin x \cdot \sin x}{1 + \cos x}}{\sin x}} - 1)^*)}\]
  7. Applied simplify1.0

    \[\leadsto \log_* (1 + \color{blue}{(e^{\frac{\sin x}{1 + \cos x}} - 1)^*})\]

Runtime

Time bar (total: 29.8s)Debug logProfile

herbie shell --seed '#(1070100504 930361288 1279167582 284574201 1450237281 2578255382)' +o rules:numerics
(FPCore (x)
  :name "tanhf (example 3.4)"
  :herbie-expected 2

  :herbie-target
  (tan (/ x 2))

  (/ (- 1 (cos x)) (sin x)))