Average Error: 0.0 → 0.0
Time: 22.2s
Precision: 64
\[\Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\]
\[\left(\frac{\cos y}{e^{x}} + e^{x} \cdot \cos y\right) \cdot \frac{1}{2}\]
\Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))
\left(\frac{\cos y}{e^{x}} + e^{x} \cdot \cos y\right) \cdot \frac{1}{2}
double f(double x, double y) {
        double r725183 = x;
        double r725184 = exp(r725183);
        double r725185 = -r725183;
        double r725186 = exp(r725185);
        double r725187 = r725184 + r725186;
        double r725188 = 2.0;
        double r725189 = r725187 / r725188;
        double r725190 = y;
        double r725191 = cos(r725190);
        double r725192 = r725189 * r725191;
        double r725193 = r725184 - r725186;
        double r725194 = r725193 / r725188;
        double r725195 = sin(r725190);
        double r725196 = r725194 * r725195;
        double r725197 = /* ERROR: no complex support in C */;
        double r725198 = /* ERROR: no complex support in C */;
        return r725198;
}

double f(double x, double y) {
        double r725199 = y;
        double r725200 = cos(r725199);
        double r725201 = x;
        double r725202 = exp(r725201);
        double r725203 = r725200 / r725202;
        double r725204 = r725202 * r725200;
        double r725205 = r725203 + r725204;
        double r725206 = 0.5;
        double r725207 = r725205 * r725206;
        return r725207;
}

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{1}{2} \cdot \left(\frac{\cos y}{e^{x}} + e^{x} \cdot \cos y\right)}\]
  3. Final simplification0.0

    \[\leadsto \left(\frac{\cos y}{e^{x}} + e^{x} \cdot \cos y\right) \cdot \frac{1}{2}\]

Reproduce

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