Average Error: 0.0 → 0.0
Time: 12.3s
Precision: 64
\[\Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\]
\[\frac{e^{x} \cdot \cos y + \frac{\cos y}{e^{x}}}{2}\]
\Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))
\frac{e^{x} \cdot \cos y + \frac{\cos y}{e^{x}}}{2}
double f(double x, double y) {
        double r832698 = x;
        double r832699 = exp(r832698);
        double r832700 = -r832698;
        double r832701 = exp(r832700);
        double r832702 = r832699 + r832701;
        double r832703 = 2.0;
        double r832704 = r832702 / r832703;
        double r832705 = y;
        double r832706 = cos(r832705);
        double r832707 = r832704 * r832706;
        double r832708 = r832699 - r832701;
        double r832709 = r832708 / r832703;
        double r832710 = sin(r832705);
        double r832711 = r832709 * r832710;
        double r832712 = /* ERROR: no complex support in C */;
        double r832713 = /* ERROR: no complex support in C */;
        return r832713;
}

double f(double x, double y) {
        double r832714 = x;
        double r832715 = exp(r832714);
        double r832716 = y;
        double r832717 = cos(r832716);
        double r832718 = r832715 * r832717;
        double r832719 = r832717 / r832715;
        double r832720 = r832718 + r832719;
        double r832721 = 2.0;
        double r832722 = r832720 / r832721;
        return r832722;
}

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. Simplified0.0

    \[\leadsto \color{blue}{\frac{\frac{\cos y}{e^{x}} + \cos y \cdot e^{x}}{2}}\]
  3. Final simplification0.0

    \[\leadsto \frac{e^{x} \cdot \cos y + \frac{\cos y}{e^{x}}}{2}\]

Reproduce

herbie shell --seed 2019141 
(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)))))