Average Error: 0.0 → 0.7
Time: 4.7s
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{{x}^{2} + \left(\frac{1}{12} \cdot {x}^{4} + 2\right)}{2} \cdot \cos y\]
\Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))
\frac{{x}^{2} + \left(\frac{1}{12} \cdot {x}^{4} + 2\right)}{2} \cdot \cos y
double f(double x, double y) {
        double r29174 = x;
        double r29175 = exp(r29174);
        double r29176 = -r29174;
        double r29177 = exp(r29176);
        double r29178 = r29175 + r29177;
        double r29179 = 2.0;
        double r29180 = r29178 / r29179;
        double r29181 = y;
        double r29182 = cos(r29181);
        double r29183 = r29180 * r29182;
        double r29184 = r29175 - r29177;
        double r29185 = r29184 / r29179;
        double r29186 = sin(r29181);
        double r29187 = r29185 * r29186;
        double r29188 = /* ERROR: no complex support in C */;
        double r29189 = /* ERROR: no complex support in C */;
        return r29189;
}

double f(double x, double y) {
        double r29190 = x;
        double r29191 = 2.0;
        double r29192 = pow(r29190, r29191);
        double r29193 = 0.08333333333333333;
        double r29194 = 4.0;
        double r29195 = pow(r29190, r29194);
        double r29196 = r29193 * r29195;
        double r29197 = r29196 + r29191;
        double r29198 = r29192 + r29197;
        double r29199 = 2.0;
        double r29200 = r29198 / r29199;
        double r29201 = y;
        double r29202 = cos(r29201);
        double r29203 = r29200 * r29202;
        return r29203;
}

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{e^{x} + e^{-x}}{2} \cdot \cos y}\]
  3. Taylor expanded around 0 0.7

    \[\leadsto \frac{\color{blue}{{x}^{2} + \left(\frac{1}{12} \cdot {x}^{4} + 2\right)}}{2} \cdot \cos y\]
  4. Final simplification0.7

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

Reproduce

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