Average Error: 58.2 → 0.6
Time: 10.2s
Precision: 64
\[\frac{e^{x} - e^{-x}}{2}\]
\[\frac{\frac{x \cdot \left(4 - \left(\left(x \cdot x\right) \cdot \frac{1}{3}\right) \cdot \left(\left(x \cdot x\right) \cdot \frac{1}{3}\right)\right)}{2 - \left(x \cdot x\right) \cdot \frac{1}{3}} + \frac{1}{60} \cdot {x}^{5}}{2}\]
\frac{e^{x} - e^{-x}}{2}
\frac{\frac{x \cdot \left(4 - \left(\left(x \cdot x\right) \cdot \frac{1}{3}\right) \cdot \left(\left(x \cdot x\right) \cdot \frac{1}{3}\right)\right)}{2 - \left(x \cdot x\right) \cdot \frac{1}{3}} + \frac{1}{60} \cdot {x}^{5}}{2}
double f(double x) {
        double r1037573 = x;
        double r1037574 = exp(r1037573);
        double r1037575 = -r1037573;
        double r1037576 = exp(r1037575);
        double r1037577 = r1037574 - r1037576;
        double r1037578 = 2.0;
        double r1037579 = r1037577 / r1037578;
        return r1037579;
}

double f(double x) {
        double r1037580 = x;
        double r1037581 = 4.0;
        double r1037582 = r1037580 * r1037580;
        double r1037583 = 0.3333333333333333;
        double r1037584 = r1037582 * r1037583;
        double r1037585 = r1037584 * r1037584;
        double r1037586 = r1037581 - r1037585;
        double r1037587 = r1037580 * r1037586;
        double r1037588 = 2.0;
        double r1037589 = r1037588 - r1037584;
        double r1037590 = r1037587 / r1037589;
        double r1037591 = 0.016666666666666666;
        double r1037592 = 5.0;
        double r1037593 = pow(r1037580, r1037592);
        double r1037594 = r1037591 * r1037593;
        double r1037595 = r1037590 + r1037594;
        double r1037596 = r1037595 / r1037588;
        return r1037596;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 58.2

    \[\frac{e^{x} - e^{-x}}{2}\]
  2. Taylor expanded around 0 0.6

    \[\leadsto \frac{\color{blue}{2 \cdot x + \left(\frac{1}{3} \cdot {x}^{3} + \frac{1}{60} \cdot {x}^{5}\right)}}{2}\]
  3. Simplified0.6

    \[\leadsto \frac{\color{blue}{\left(2 + \frac{1}{3} \cdot \left(x \cdot x\right)\right) \cdot x + \frac{1}{60} \cdot {x}^{5}}}{2}\]
  4. Using strategy rm
  5. Applied flip-+0.6

    \[\leadsto \frac{\color{blue}{\frac{2 \cdot 2 - \left(\frac{1}{3} \cdot \left(x \cdot x\right)\right) \cdot \left(\frac{1}{3} \cdot \left(x \cdot x\right)\right)}{2 - \frac{1}{3} \cdot \left(x \cdot x\right)}} \cdot x + \frac{1}{60} \cdot {x}^{5}}{2}\]
  6. Applied associate-*l/0.6

    \[\leadsto \frac{\color{blue}{\frac{\left(2 \cdot 2 - \left(\frac{1}{3} \cdot \left(x \cdot x\right)\right) \cdot \left(\frac{1}{3} \cdot \left(x \cdot x\right)\right)\right) \cdot x}{2 - \frac{1}{3} \cdot \left(x \cdot x\right)}} + \frac{1}{60} \cdot {x}^{5}}{2}\]
  7. Final simplification0.6

    \[\leadsto \frac{\frac{x \cdot \left(4 - \left(\left(x \cdot x\right) \cdot \frac{1}{3}\right) \cdot \left(\left(x \cdot x\right) \cdot \frac{1}{3}\right)\right)}{2 - \left(x \cdot x\right) \cdot \frac{1}{3}} + \frac{1}{60} \cdot {x}^{5}}{2}\]

Reproduce

herbie shell --seed 2019128 
(FPCore (x)
  :name "Hyperbolic sine"
  (/ (- (exp x) (exp (- x))) 2))