Average Error: 43.5 → 0.9
Time: 33.3s
Precision: 64
\[\Im(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\]
\[\Im(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{\frac{1}{60} \cdot {x}^{5} + \left(2 + \frac{1}{3} \cdot \left(x \cdot x\right)\right) \cdot x}{2} \cdot \sin y i\right))\]
\Im(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))
\Im(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{\frac{1}{60} \cdot {x}^{5} + \left(2 + \frac{1}{3} \cdot \left(x \cdot x\right)\right) \cdot x}{2} \cdot \sin y i\right))
double f(double x, double y) {
        double r2182963 = x;
        double r2182964 = exp(r2182963);
        double r2182965 = -r2182963;
        double r2182966 = exp(r2182965);
        double r2182967 = r2182964 + r2182966;
        double r2182968 = 2.0;
        double r2182969 = r2182967 / r2182968;
        double r2182970 = y;
        double r2182971 = cos(r2182970);
        double r2182972 = r2182969 * r2182971;
        double r2182973 = r2182964 - r2182966;
        double r2182974 = r2182973 / r2182968;
        double r2182975 = sin(r2182970);
        double r2182976 = r2182974 * r2182975;
        double r2182977 = /* ERROR: no complex support in C */;
        double r2182978 = /* ERROR: no complex support in C */;
        return r2182978;
}

double f(double x, double y) {
        double r2182979 = x;
        double r2182980 = exp(r2182979);
        double r2182981 = -r2182979;
        double r2182982 = exp(r2182981);
        double r2182983 = r2182980 + r2182982;
        double r2182984 = 2.0;
        double r2182985 = r2182983 / r2182984;
        double r2182986 = y;
        double r2182987 = cos(r2182986);
        double r2182988 = r2182985 * r2182987;
        double r2182989 = 0.016666666666666666;
        double r2182990 = 5.0;
        double r2182991 = pow(r2182979, r2182990);
        double r2182992 = r2182989 * r2182991;
        double r2182993 = 0.3333333333333333;
        double r2182994 = r2182979 * r2182979;
        double r2182995 = r2182993 * r2182994;
        double r2182996 = r2182984 + r2182995;
        double r2182997 = r2182996 * r2182979;
        double r2182998 = r2182992 + r2182997;
        double r2182999 = r2182998 / r2182984;
        double r2183000 = sin(r2182986);
        double r2183001 = r2182999 * r2183000;
        double r2183002 = /* ERROR: no complex support in C */;
        double r2183003 = /* ERROR: no complex support in C */;
        return r2183003;
}

Error

Bits error versus x

Bits error versus y

Derivation

  1. Initial program 43.5

    \[\Im(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\]
  2. Taylor expanded around 0 0.9

    \[\leadsto \Im(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{\color{blue}{2 \cdot x + \left(\frac{1}{3} \cdot {x}^{3} + \frac{1}{60} \cdot {x}^{5}\right)}}{2} \cdot \sin y i\right))\]
  3. Simplified0.9

    \[\leadsto \Im(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{\color{blue}{x \cdot \left(\frac{1}{3} \cdot \left(x \cdot x\right) + 2\right) + \frac{1}{60} \cdot {x}^{5}}}{2} \cdot \sin y i\right))\]
  4. Final simplification0.9

    \[\leadsto \Im(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{\frac{1}{60} \cdot {x}^{5} + \left(2 + \frac{1}{3} \cdot \left(x \cdot x\right)\right) \cdot x}{2} \cdot \sin y i\right))\]

Reproduce

herbie shell --seed 2019162 
(FPCore (x y)
  :name "Euler formula imaginary part (p55)"
  (im (complex (* (/ (+ (exp x) (exp (- x))) 2) (cos y)) (* (/ (- (exp x) (exp (- x))) 2) (sin y)))))