Average Error: 0.0 → 0.0
Time: 44.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 r2229176 = x;
        double r2229177 = exp(r2229176);
        double r2229178 = -r2229176;
        double r2229179 = exp(r2229178);
        double r2229180 = r2229177 + r2229179;
        double r2229181 = 2.0;
        double r2229182 = r2229180 / r2229181;
        double r2229183 = y;
        double r2229184 = cos(r2229183);
        double r2229185 = r2229182 * r2229184;
        double r2229186 = r2229177 - r2229179;
        double r2229187 = r2229186 / r2229181;
        double r2229188 = sin(r2229183);
        double r2229189 = r2229187 * r2229188;
        double r2229190 = /* ERROR: no complex support in C */;
        double r2229191 = /* ERROR: no complex support in C */;
        return r2229191;
}

double f(double x, double y) {
        double r2229192 = x;
        double r2229193 = exp(r2229192);
        double r2229194 = -r2229192;
        double r2229195 = exp(r2229194);
        double r2229196 = r2229193 + r2229195;
        double r2229197 = 2.0;
        double r2229198 = r2229196 / r2229197;
        double r2229199 = y;
        double r2229200 = cos(r2229199);
        double r2229201 = r2229198 * r2229200;
        double r2229202 = r2229193 - r2229195;
        double r2229203 = r2229202 / r2229197;
        double r2229204 = sin(r2229199);
        double r2229205 = r2229203 * r2229204;
        double r2229206 = /* ERROR: no complex support in C */;
        double r2229207 = /* ERROR: no complex support in C */;
        return r2229207;
}

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 2019104 +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)))))