Average Error: 0.0 → 0.2
Time: 23.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))\]
\[\sqrt{\frac{\sqrt[3]{{\left(e^{-x} + e^{x}\right)}^{3}}}{2}} \cdot \left(\cos y \cdot \sqrt{\frac{e^{x} + e^{-x}}{2}}\right)\]
\Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))
\sqrt{\frac{\sqrt[3]{{\left(e^{-x} + e^{x}\right)}^{3}}}{2}} \cdot \left(\cos y \cdot \sqrt{\frac{e^{x} + e^{-x}}{2}}\right)
double f(double x, double y) {
        double r44270 = x;
        double r44271 = exp(r44270);
        double r44272 = -r44270;
        double r44273 = exp(r44272);
        double r44274 = r44271 + r44273;
        double r44275 = 2.0;
        double r44276 = r44274 / r44275;
        double r44277 = y;
        double r44278 = cos(r44277);
        double r44279 = r44276 * r44278;
        double r44280 = r44271 - r44273;
        double r44281 = r44280 / r44275;
        double r44282 = sin(r44277);
        double r44283 = r44281 * r44282;
        double r44284 = /* ERROR: no complex support in C */;
        double r44285 = /* ERROR: no complex support in C */;
        return r44285;
}

double f(double x, double y) {
        double r44286 = x;
        double r44287 = -r44286;
        double r44288 = exp(r44287);
        double r44289 = exp(r44286);
        double r44290 = r44288 + r44289;
        double r44291 = 3.0;
        double r44292 = pow(r44290, r44291);
        double r44293 = cbrt(r44292);
        double r44294 = 2.0;
        double r44295 = r44293 / r44294;
        double r44296 = sqrt(r44295);
        double r44297 = y;
        double r44298 = cos(r44297);
        double r44299 = r44289 + r44288;
        double r44300 = r44299 / r44294;
        double r44301 = sqrt(r44300);
        double r44302 = r44298 * r44301;
        double r44303 = r44296 * r44302;
        return r44303;
}

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. Using strategy rm
  4. Applied add-cbrt-cube0.2

    \[\leadsto \frac{\color{blue}{\sqrt[3]{\left(\left(e^{x} + e^{-x}\right) \cdot \left(e^{x} + e^{-x}\right)\right) \cdot \left(e^{x} + e^{-x}\right)}}}{2} \cdot \cos y\]
  5. Simplified0.2

    \[\leadsto \frac{\sqrt[3]{\color{blue}{{\left(e^{-x} + e^{x}\right)}^{3}}}}{2} \cdot \cos y\]
  6. Using strategy rm
  7. Applied add-sqr-sqrt0.2

    \[\leadsto \color{blue}{\left(\sqrt{\frac{\sqrt[3]{{\left(e^{-x} + e^{x}\right)}^{3}}}{2}} \cdot \sqrt{\frac{\sqrt[3]{{\left(e^{-x} + e^{x}\right)}^{3}}}{2}}\right)} \cdot \cos y\]
  8. Applied associate-*l*0.2

    \[\leadsto \color{blue}{\sqrt{\frac{\sqrt[3]{{\left(e^{-x} + e^{x}\right)}^{3}}}{2}} \cdot \left(\sqrt{\frac{\sqrt[3]{{\left(e^{-x} + e^{x}\right)}^{3}}}{2}} \cdot \cos y\right)}\]
  9. Simplified0.2

    \[\leadsto \sqrt{\frac{\sqrt[3]{{\left(e^{-x} + e^{x}\right)}^{3}}}{2}} \cdot \color{blue}{\left(\cos y \cdot \sqrt{\frac{e^{x} + e^{-x}}{2}}\right)}\]
  10. Final simplification0.2

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

Reproduce

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