Average Error: 0.0 → 0.0
Time: 12.6s
Precision: 64
\[\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)\]
\[\cos re \cdot \left(\frac{0.5}{e^{im}} + 0.5 \cdot e^{im}\right)\]
\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)
\cos re \cdot \left(\frac{0.5}{e^{im}} + 0.5 \cdot e^{im}\right)
double f(double re, double im) {
        double r2512875 = 0.5;
        double r2512876 = re;
        double r2512877 = cos(r2512876);
        double r2512878 = r2512875 * r2512877;
        double r2512879 = im;
        double r2512880 = -r2512879;
        double r2512881 = exp(r2512880);
        double r2512882 = exp(r2512879);
        double r2512883 = r2512881 + r2512882;
        double r2512884 = r2512878 * r2512883;
        return r2512884;
}

double f(double re, double im) {
        double r2512885 = re;
        double r2512886 = cos(r2512885);
        double r2512887 = 0.5;
        double r2512888 = im;
        double r2512889 = exp(r2512888);
        double r2512890 = r2512887 / r2512889;
        double r2512891 = r2512887 * r2512889;
        double r2512892 = r2512890 + r2512891;
        double r2512893 = r2512886 * r2512892;
        return r2512893;
}

Error

Bits error versus re

Bits error versus im

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)\]
  2. Simplified0.0

    \[\leadsto \color{blue}{\left(\frac{0.5}{e^{im}} + e^{im} \cdot 0.5\right) \cdot \cos re}\]
  3. Final simplification0.0

    \[\leadsto \cos re \cdot \left(\frac{0.5}{e^{im}} + 0.5 \cdot e^{im}\right)\]

Reproduce

herbie shell --seed 2019169 
(FPCore (re im)
  :name "math.cos on complex, real part"
  (* (* 0.5 (cos re)) (+ (exp (- im)) (exp im))))