Average Error: 57.8 → 0.8
Time: 30.8s
Precision: 64
\[\frac{e^{x} - e^{-x}}{2}\]
\[\frac{{x}^{5} \cdot \frac{1}{60} + \left(2 \cdot x + \left(x \cdot \left(x \cdot \frac{1}{3}\right)\right) \cdot x\right)}{2}\]
\frac{e^{x} - e^{-x}}{2}
\frac{{x}^{5} \cdot \frac{1}{60} + \left(2 \cdot x + \left(x \cdot \left(x \cdot \frac{1}{3}\right)\right) \cdot x\right)}{2}
double f(double x) {
        double r5083014 = x;
        double r5083015 = exp(r5083014);
        double r5083016 = -r5083014;
        double r5083017 = exp(r5083016);
        double r5083018 = r5083015 - r5083017;
        double r5083019 = 2.0;
        double r5083020 = r5083018 / r5083019;
        return r5083020;
}

double f(double x) {
        double r5083021 = x;
        double r5083022 = 5.0;
        double r5083023 = pow(r5083021, r5083022);
        double r5083024 = 0.016666666666666666;
        double r5083025 = r5083023 * r5083024;
        double r5083026 = 2.0;
        double r5083027 = r5083026 * r5083021;
        double r5083028 = 0.3333333333333333;
        double r5083029 = r5083021 * r5083028;
        double r5083030 = r5083021 * r5083029;
        double r5083031 = r5083030 * r5083021;
        double r5083032 = r5083027 + r5083031;
        double r5083033 = r5083025 + r5083032;
        double r5083034 = r5083033 / r5083026;
        return r5083034;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 57.8

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

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

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

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

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

Reproduce

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