Average Error: 0.0 → 0.0
Time: 1.2m
Precision: 64
\[\left(0.5 \cdot \sin re\right) \cdot \left(e^{0 - im} + e^{im}\right)\]
\[\left(0.5 \cdot \sin re\right) \cdot \left(e^{-im} + e^{im}\right)\]
\left(0.5 \cdot \sin re\right) \cdot \left(e^{0 - im} + e^{im}\right)
\left(0.5 \cdot \sin re\right) \cdot \left(e^{-im} + e^{im}\right)
double f(double re, double im) {
        double r4508734 = 0.5;
        double r4508735 = re;
        double r4508736 = sin(r4508735);
        double r4508737 = r4508734 * r4508736;
        double r4508738 = 0.0;
        double r4508739 = im;
        double r4508740 = r4508738 - r4508739;
        double r4508741 = exp(r4508740);
        double r4508742 = exp(r4508739);
        double r4508743 = r4508741 + r4508742;
        double r4508744 = r4508737 * r4508743;
        return r4508744;
}

double f(double re, double im) {
        double r4508745 = 0.5;
        double r4508746 = re;
        double r4508747 = sin(r4508746);
        double r4508748 = r4508745 * r4508747;
        double r4508749 = im;
        double r4508750 = -r4508749;
        double r4508751 = exp(r4508750);
        double r4508752 = exp(r4508749);
        double r4508753 = r4508751 + r4508752;
        double r4508754 = r4508748 * r4508753;
        return r4508754;
}

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 \sin re\right) \cdot \left(e^{0 - im} + e^{im}\right)\]
  2. Final simplification0.0

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

Reproduce

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