Average Error: 59.6 → 2.3
Time: 8.6m
Precision: 64
Internal Precision: 1344
\[-\frac{1}{\frac{\pi}{4}} \cdot \log \left(\frac{e^{\frac{\pi}{4} \cdot f} + e^{-\frac{\pi}{4} \cdot f}}{e^{\frac{\pi}{4} \cdot f} - e^{-\frac{\pi}{4} \cdot f}}\right)\]
\[-\left(\left(4 \cdot \frac{\log \left(\frac{4}{\pi}\right)}{\pi} + \frac{1}{12} \cdot \left(\pi \cdot {f}^{2}\right)\right) - \left(\frac{7}{5760} \cdot \left({\pi}^{3} \cdot {f}^{4}\right) + 4 \cdot \frac{1}{\frac{\pi}{\log f}}\right)\right)\]

Error

Bits error versus f

Derivation

  1. Initial program 59.6

    \[-\frac{1}{\frac{\pi}{4}} \cdot \log \left(\frac{e^{\frac{\pi}{4} \cdot f} + e^{-\frac{\pi}{4} \cdot f}}{e^{\frac{\pi}{4} \cdot f} - e^{-\frac{\pi}{4} \cdot f}}\right)\]
  2. Taylor expanded around 0 2.2

    \[\leadsto -\color{blue}{\left(\left(4 \cdot \frac{\log \left(\frac{4}{\pi}\right)}{\pi} + \frac{1}{12} \cdot \left(\pi \cdot {f}^{2}\right)\right) - \left(\frac{7}{5760} \cdot \left({\pi}^{3} \cdot {f}^{4}\right) + 4 \cdot \frac{\log f}{\pi}\right)\right)}\]
  3. Using strategy rm
  4. Applied clear-num2.3

    \[\leadsto -\left(\left(4 \cdot \frac{\log \left(\frac{4}{\pi}\right)}{\pi} + \frac{1}{12} \cdot \left(\pi \cdot {f}^{2}\right)\right) - \left(\frac{7}{5760} \cdot \left({\pi}^{3} \cdot {f}^{4}\right) + 4 \cdot \color{blue}{\frac{1}{\frac{\pi}{\log f}}}\right)\right)\]

Runtime

Time bar (total: 8.6m)Debug logProfile

herbie shell --seed '#(1071821486 549052472 3784827256 1559736200 3548510075 881134285)' 
(FPCore (f)
  :name "VandenBroeck and Keller, Equation (20)"
  (- (* (/ 1 (/ PI 4)) (log (/ (+ (exp (* (/ PI 4) f)) (exp (- (* (/ PI 4) f)))) (- (exp (* (/ PI 4) f)) (exp (- (* (/ PI 4) f)))))))))