Average Error: 0.0 → 0.7
Time: 5.9s
Precision: 64
\[\Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\]
\[\Re(\left(\frac{\mathsf{fma}\left(x, x, \mathsf{fma}\left(\frac{1}{12}, {x}^{4}, 2\right)\right)}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\]

Error

Bits error versus x

Bits error versus y

Derivation

  1. Initial program 0.0

    \[\Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\]
  2. Taylor expanded around 0 0.7

    \[\leadsto \Re(\left(\frac{\color{blue}{{x}^{2} + \left(\frac{1}{12} \cdot {x}^{4} + 2\right)}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\]
  3. Simplified0.7

    \[\leadsto \Re(\left(\frac{\color{blue}{\mathsf{fma}\left(x, x, \mathsf{fma}\left(\frac{1}{12}, {x}^{4}, 2\right)\right)}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\]
  4. Final simplification0.7

    \[\leadsto \Re(\left(\frac{\mathsf{fma}\left(x, x, \mathsf{fma}\left(\frac{1}{12}, {x}^{4}, 2\right)\right)}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\]

Reproduce

herbie shell --seed 2020060 +o rules:numerics
(FPCore (x y)
  :name "Euler formula real part (p55)"
  :precision binary64
  (re (complex (* (/ (+ (exp x) (exp (- x))) 2) (cos y)) (* (/ (- (exp x) (exp (- x))) 2) (sin y)))))