Average Error: 0.0 → 0.0
Time: 19.1s
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 r932913 = x;
        double r932914 = exp(r932913);
        double r932915 = -r932913;
        double r932916 = exp(r932915);
        double r932917 = r932914 + r932916;
        double r932918 = 2.0;
        double r932919 = r932917 / r932918;
        double r932920 = y;
        double r932921 = cos(r932920);
        double r932922 = r932919 * r932921;
        double r932923 = r932914 - r932916;
        double r932924 = r932923 / r932918;
        double r932925 = sin(r932920);
        double r932926 = r932924 * r932925;
        double r932927 = /* ERROR: no complex support in C */;
        double r932928 = /* ERROR: no complex support in C */;
        return r932928;
}

double f(double x, double y) {
        double r932929 = x;
        double r932930 = exp(r932929);
        double r932931 = -r932929;
        double r932932 = exp(r932931);
        double r932933 = r932930 + r932932;
        double r932934 = 2.0;
        double r932935 = r932933 / r932934;
        double r932936 = cbrt(r932935);
        double r932937 = y;
        double r932938 = cos(r932937);
        double r932939 = r932936 * r932938;
        double r932940 = r932936 * r932936;
        double r932941 = r932939 * r932940;
        double r932942 = sin(r932937);
        double r932943 = r932930 - r932932;
        double r932944 = r932943 / r932934;
        double r932945 = r932942 * r932944;
        double r932946 = /* ERROR: no complex support in C */;
        double r932947 = /* ERROR: no complex support in C */;
        return r932947;
}

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