Average Error: 0.0 → 0.0
Time: 15.7s
Precision: 64
\[\left(0.5 \cdot \sin re\right) \cdot \left(e^{0.0 - im} + e^{im}\right)\]
\[\left(0.5 \cdot \sin re\right) \cdot \left(e^{0.0 - im} + e^{im}\right)\]
\left(0.5 \cdot \sin re\right) \cdot \left(e^{0.0 - im} + e^{im}\right)
\left(0.5 \cdot \sin re\right) \cdot \left(e^{0.0 - im} + e^{im}\right)
double f(double re, double im) {
        double r14949 = 0.5;
        double r14950 = re;
        double r14951 = sin(r14950);
        double r14952 = r14949 * r14951;
        double r14953 = 0.0;
        double r14954 = im;
        double r14955 = r14953 - r14954;
        double r14956 = exp(r14955);
        double r14957 = exp(r14954);
        double r14958 = r14956 + r14957;
        double r14959 = r14952 * r14958;
        return r14959;
}

double f(double re, double im) {
        double r14960 = 0.5;
        double r14961 = re;
        double r14962 = sin(r14961);
        double r14963 = r14960 * r14962;
        double r14964 = 0.0;
        double r14965 = im;
        double r14966 = r14964 - r14965;
        double r14967 = exp(r14966);
        double r14968 = exp(r14965);
        double r14969 = r14967 + r14968;
        double r14970 = r14963 * r14969;
        return r14970;
}

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.0 - im} + e^{im}\right)\]
  2. Simplified0.0

    \[\leadsto \color{blue}{\left(\sin re \cdot 0.5\right) \cdot \left(e^{0.0 - im} + e^{im}\right)}\]
  3. Final simplification0.0

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

Reproduce

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