Average Error: 0.0 → 0.0
Time: 20.4s
Precision: 64
\[\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)\]
\[\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)\]
\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)
\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)
double f(double re, double im) {
        double r28670 = 0.5;
        double r28671 = re;
        double r28672 = cos(r28671);
        double r28673 = r28670 * r28672;
        double r28674 = im;
        double r28675 = -r28674;
        double r28676 = exp(r28675);
        double r28677 = exp(r28674);
        double r28678 = r28676 + r28677;
        double r28679 = r28673 * r28678;
        return r28679;
}

double f(double re, double im) {
        double r28680 = 0.5;
        double r28681 = re;
        double r28682 = cos(r28681);
        double r28683 = r28680 * r28682;
        double r28684 = im;
        double r28685 = -r28684;
        double r28686 = exp(r28685);
        double r28687 = exp(r28684);
        double r28688 = r28686 + r28687;
        double r28689 = r28683 * r28688;
        return r28689;
}

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. Final simplification0.0

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

Reproduce

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