Average Error: 0.0 → 0.0
Time: 14.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{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\]
\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{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))
double f(double x, double y) {
        double r546270 = x;
        double r546271 = exp(r546270);
        double r546272 = -r546270;
        double r546273 = exp(r546272);
        double r546274 = r546271 + r546273;
        double r546275 = 2.0;
        double r546276 = r546274 / r546275;
        double r546277 = y;
        double r546278 = cos(r546277);
        double r546279 = r546276 * r546278;
        double r546280 = r546271 - r546273;
        double r546281 = r546280 / r546275;
        double r546282 = sin(r546277);
        double r546283 = r546281 * r546282;
        double r546284 = /* ERROR: no complex support in C */;
        double r546285 = /* ERROR: no complex support in C */;
        return r546285;
}

double f(double x, double y) {
        double r546286 = x;
        double r546287 = exp(r546286);
        double r546288 = -r546286;
        double r546289 = exp(r546288);
        double r546290 = r546287 + r546289;
        double r546291 = 2.0;
        double r546292 = r546290 / r546291;
        double r546293 = y;
        double r546294 = cos(r546293);
        double r546295 = r546292 * r546294;
        double r546296 = r546287 - r546289;
        double r546297 = r546296 / r546291;
        double r546298 = sin(r546293);
        double r546299 = r546297 * r546298;
        double r546300 = /* ERROR: no complex support in C */;
        double r546301 = /* ERROR: no complex support in C */;
        return r546301;
}

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. Final simplification0.0

    \[\leadsto \Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\]

Reproduce

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