Average Error: 0.0 → 0.1
Time: 12.1s
Precision: 64
\[\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)\]
\[\left(\frac{1}{2} \cdot \cos re\right) \cdot \frac{e^{im + im} + 1}{e^{im}}\]
\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)
\left(\frac{1}{2} \cdot \cos re\right) \cdot \frac{e^{im + im} + 1}{e^{im}}
double f(double re, double im) {
        double r46643 = 0.5;
        double r46644 = re;
        double r46645 = cos(r46644);
        double r46646 = r46643 * r46645;
        double r46647 = im;
        double r46648 = -r46647;
        double r46649 = exp(r46648);
        double r46650 = exp(r46647);
        double r46651 = r46649 + r46650;
        double r46652 = r46646 * r46651;
        return r46652;
}

double f(double re, double im) {
        double r46653 = 1.0;
        double r46654 = 2.0;
        double r46655 = r46653 / r46654;
        double r46656 = re;
        double r46657 = cos(r46656);
        double r46658 = r46655 * r46657;
        double r46659 = im;
        double r46660 = r46659 + r46659;
        double r46661 = exp(r46660);
        double r46662 = 1.0;
        double r46663 = r46661 + r46662;
        double r46664 = exp(r46659);
        double r46665 = r46663 / r46664;
        double r46666 = r46658 * r46665;
        return r46666;
}

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 distribute-lft-in0.0

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

    \[\leadsto \color{blue}{\frac{\frac{1}{2} \cdot \cos re}{e^{im}}} + \left(0.5 \cdot \cos re\right) \cdot e^{im}\]
  5. Simplified0.0

    \[\leadsto \frac{\frac{1}{2} \cdot \cos re}{e^{im}} + \color{blue}{\left(\frac{1}{2} \cdot \cos re\right) \cdot e^{im}}\]
  6. Using strategy rm
  7. Applied associate-*l/0.0

    \[\leadsto \frac{\frac{1}{2} \cdot \cos re}{e^{im}} + \color{blue}{\frac{1 \cdot \cos re}{2}} \cdot e^{im}\]
  8. Applied associate-*l/0.0

    \[\leadsto \frac{\frac{1}{2} \cdot \cos re}{e^{im}} + \color{blue}{\frac{\left(1 \cdot \cos re\right) \cdot e^{im}}{2}}\]
  9. Applied frac-add0.1

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

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

Reproduce

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