Average Error: 0.0 → 0.0
Time: 14.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 r44368 = 0.5;
        double r44369 = re;
        double r44370 = cos(r44369);
        double r44371 = r44368 * r44370;
        double r44372 = im;
        double r44373 = -r44372;
        double r44374 = exp(r44373);
        double r44375 = exp(r44372);
        double r44376 = r44374 + r44375;
        double r44377 = r44371 * r44376;
        return r44377;
}

double f(double re, double im) {
        double r44378 = 0.5;
        double r44379 = re;
        double r44380 = cos(r44379);
        double r44381 = r44378 * r44380;
        double r44382 = im;
        double r44383 = -r44382;
        double r44384 = exp(r44383);
        double r44385 = exp(r44382);
        double r44386 = r44384 + r44385;
        double r44387 = r44381 * r44386;
        return r44387;
}

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 2019306 
(FPCore (re im)
  :name "math.cos on complex, real part"
  :precision binary64
  (* (* 0.5 (cos re)) (+ (exp (- im)) (exp im))))