Average Error: 0.0 → 0.2
Time: 22.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))\]
\[\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 r41028 = x;
        double r41029 = exp(r41028);
        double r41030 = -r41028;
        double r41031 = exp(r41030);
        double r41032 = r41029 + r41031;
        double r41033 = 2.0;
        double r41034 = r41032 / r41033;
        double r41035 = y;
        double r41036 = cos(r41035);
        double r41037 = r41034 * r41036;
        double r41038 = r41029 - r41031;
        double r41039 = r41038 / r41033;
        double r41040 = sin(r41035);
        double r41041 = r41039 * r41040;
        double r41042 = /* ERROR: no complex support in C */;
        double r41043 = /* ERROR: no complex support in C */;
        return r41043;
}

double f(double x, double y) {
        double r41044 = x;
        double r41045 = -r41044;
        double r41046 = exp(r41045);
        double r41047 = exp(r41044);
        double r41048 = r41046 + r41047;
        double r41049 = 3.0;
        double r41050 = pow(r41048, r41049);
        double r41051 = cbrt(r41050);
        double r41052 = 2.0;
        double r41053 = r41051 / r41052;
        double r41054 = sqrt(r41053);
        double r41055 = y;
        double r41056 = cos(r41055);
        double r41057 = r41047 + r41046;
        double r41058 = r41057 / r41052;
        double r41059 = sqrt(r41058);
        double r41060 = r41056 * r41059;
        double r41061 = r41054 * r41060;
        return r41061;
}

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