Average Error: 0.0 → 0.0
Time: 15.5s
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(\left(\sqrt[3]{\frac{e^{x} + e^{-x}}{2}} \cdot \cos y\right) \cdot \left(\sqrt[3]{\frac{e^{x} + e^{-x}}{2}} \cdot \sqrt[3]{\frac{e^{x} + e^{-x}}{2}}\right) + \sin y \cdot \frac{e^{x} - e^{-x}}{2} 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(\left(\sqrt[3]{\frac{e^{x} + e^{-x}}{2}} \cdot \cos y\right) \cdot \left(\sqrt[3]{\frac{e^{x} + e^{-x}}{2}} \cdot \sqrt[3]{\frac{e^{x} + e^{-x}}{2}}\right) + \sin y \cdot \frac{e^{x} - e^{-x}}{2} i\right))
double f(double x, double y) {
        double r572048 = x;
        double r572049 = exp(r572048);
        double r572050 = -r572048;
        double r572051 = exp(r572050);
        double r572052 = r572049 + r572051;
        double r572053 = 2.0;
        double r572054 = r572052 / r572053;
        double r572055 = y;
        double r572056 = cos(r572055);
        double r572057 = r572054 * r572056;
        double r572058 = r572049 - r572051;
        double r572059 = r572058 / r572053;
        double r572060 = sin(r572055);
        double r572061 = r572059 * r572060;
        double r572062 = /* ERROR: no complex support in C */;
        double r572063 = /* ERROR: no complex support in C */;
        return r572063;
}

double f(double x, double y) {
        double r572064 = x;
        double r572065 = exp(r572064);
        double r572066 = -r572064;
        double r572067 = exp(r572066);
        double r572068 = r572065 + r572067;
        double r572069 = 2.0;
        double r572070 = r572068 / r572069;
        double r572071 = cbrt(r572070);
        double r572072 = y;
        double r572073 = cos(r572072);
        double r572074 = r572071 * r572073;
        double r572075 = r572071 * r572071;
        double r572076 = r572074 * r572075;
        double r572077 = sin(r572072);
        double r572078 = r572065 - r572067;
        double r572079 = r572078 / r572069;
        double r572080 = r572077 * r572079;
        double r572081 = /* ERROR: no complex support in C */;
        double r572082 = /* ERROR: no complex support in C */;
        return r572082;
}

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. Using strategy rm
  3. Applied add-cube-cbrt0.0

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

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

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

Reproduce

herbie shell --seed 2019152 +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)))))