Average Error: 0.0 → 0.1
Time: 6.5s
Precision: 64
\[\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)\]
\[\frac{\left(0.5 \cdot \cos re\right) \cdot \left({\left(e^{-im}\right)}^{3} + {\left(e^{im}\right)}^{3}\right)}{e^{-im} \cdot e^{-im} + \left(e^{im} \cdot e^{im} - e^{-im} \cdot e^{im}\right)}\]
\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)
\frac{\left(0.5 \cdot \cos re\right) \cdot \left({\left(e^{-im}\right)}^{3} + {\left(e^{im}\right)}^{3}\right)}{e^{-im} \cdot e^{-im} + \left(e^{im} \cdot e^{im} - e^{-im} \cdot e^{im}\right)}
double f(double re, double im) {
        double r97474 = 0.5;
        double r97475 = re;
        double r97476 = cos(r97475);
        double r97477 = r97474 * r97476;
        double r97478 = im;
        double r97479 = -r97478;
        double r97480 = exp(r97479);
        double r97481 = exp(r97478);
        double r97482 = r97480 + r97481;
        double r97483 = r97477 * r97482;
        return r97483;
}

double f(double re, double im) {
        double r97484 = 0.5;
        double r97485 = re;
        double r97486 = cos(r97485);
        double r97487 = r97484 * r97486;
        double r97488 = im;
        double r97489 = -r97488;
        double r97490 = exp(r97489);
        double r97491 = 3.0;
        double r97492 = pow(r97490, r97491);
        double r97493 = exp(r97488);
        double r97494 = pow(r97493, r97491);
        double r97495 = r97492 + r97494;
        double r97496 = r97487 * r97495;
        double r97497 = r97490 * r97490;
        double r97498 = r97493 * r97493;
        double r97499 = r97490 * r97493;
        double r97500 = r97498 - r97499;
        double r97501 = r97497 + r97500;
        double r97502 = r97496 / r97501;
        return r97502;
}

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. Using strategy rm
  3. Applied flip3-+0.1

    \[\leadsto \left(0.5 \cdot \cos re\right) \cdot \color{blue}{\frac{{\left(e^{-im}\right)}^{3} + {\left(e^{im}\right)}^{3}}{e^{-im} \cdot e^{-im} + \left(e^{im} \cdot e^{im} - e^{-im} \cdot e^{im}\right)}}\]
  4. Applied associate-*r/0.1

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

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

Reproduce

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