Average Error: 0.0 → 0.0
Time: 18.4s
Precision: 64
\[\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)\]
\[\left(e^{im} + e^{-im}\right) \cdot \left(0.5 \cdot \cos re\right)\]
\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)
\left(e^{im} + e^{-im}\right) \cdot \left(0.5 \cdot \cos re\right)
double f(double re, double im) {
        double r2007399 = 0.5;
        double r2007400 = re;
        double r2007401 = cos(r2007400);
        double r2007402 = r2007399 * r2007401;
        double r2007403 = im;
        double r2007404 = -r2007403;
        double r2007405 = exp(r2007404);
        double r2007406 = exp(r2007403);
        double r2007407 = r2007405 + r2007406;
        double r2007408 = r2007402 * r2007407;
        return r2007408;
}

double f(double re, double im) {
        double r2007409 = im;
        double r2007410 = exp(r2007409);
        double r2007411 = -r2007409;
        double r2007412 = exp(r2007411);
        double r2007413 = r2007410 + r2007412;
        double r2007414 = 0.5;
        double r2007415 = re;
        double r2007416 = cos(r2007415);
        double r2007417 = r2007414 * r2007416;
        double r2007418 = r2007413 * r2007417;
        return r2007418;
}

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(e^{im} + e^{-im}\right) \cdot \left(0.5 \cdot \cos re\right)\]

Reproduce

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