Average Error: 0.2 → 0.2
Time: 29.0s
Precision: 64
Internal Precision: 320
\[\left(-x \cdot \frac{1}{\tan B}\right) + \frac{1}{\sin B}\]
\[(\left(\frac{x}{\sin B}\right) \cdot \left(-\cos B\right) + \left(\frac{1}{\sin B}\right))_*\]

Error

Bits error versus B

Bits error versus x

Derivation

  1. Initial program 0.2

    \[\left(-x \cdot \frac{1}{\tan B}\right) + \frac{1}{\sin B}\]
  2. Initial simplification0.2

    \[\leadsto \frac{1}{\sin B} - \frac{x}{\tan B}\]
  3. Taylor expanded around -inf 0.2

    \[\leadsto \color{blue}{\frac{1}{\sin B} - \frac{x \cdot \cos B}{\sin B}}\]
  4. Using strategy rm
  5. Applied *-un-lft-identity0.2

    \[\leadsto \frac{1}{\sin B} - \color{blue}{1 \cdot \frac{x \cdot \cos B}{\sin B}}\]
  6. Applied add-sqr-sqrt31.2

    \[\leadsto \color{blue}{\sqrt{\frac{1}{\sin B}} \cdot \sqrt{\frac{1}{\sin B}}} - 1 \cdot \frac{x \cdot \cos B}{\sin B}\]
  7. Applied prod-diff31.2

    \[\leadsto \color{blue}{(\left(\sqrt{\frac{1}{\sin B}}\right) \cdot \left(\sqrt{\frac{1}{\sin B}}\right) + \left(-\frac{x \cdot \cos B}{\sin B} \cdot 1\right))_* + (\left(-\frac{x \cdot \cos B}{\sin B}\right) \cdot 1 + \left(\frac{x \cdot \cos B}{\sin B} \cdot 1\right))_*}\]
  8. Simplified0.2

    \[\leadsto \color{blue}{(\left(\frac{x}{\sin B}\right) \cdot \left(-\cos B\right) + \left(\frac{1}{\sin B}\right))_*} + (\left(-\frac{x \cdot \cos B}{\sin B}\right) \cdot 1 + \left(\frac{x \cdot \cos B}{\sin B} \cdot 1\right))_*\]
  9. Simplified0.2

    \[\leadsto (\left(\frac{x}{\sin B}\right) \cdot \left(-\cos B\right) + \left(\frac{1}{\sin B}\right))_* + \color{blue}{0}\]
  10. Final simplification0.2

    \[\leadsto (\left(\frac{x}{\sin B}\right) \cdot \left(-\cos B\right) + \left(\frac{1}{\sin B}\right))_*\]

Runtime

Time bar (total: 29.0s)Debug logProfile

herbie shell --seed 2018273 +o rules:numerics
(FPCore (B x)
  :name "VandenBroeck and Keller, Equation (24)"
  (+ (- (* x (/ 1 (tan B)))) (/ 1 (sin B))))