Average Error: 0.0 → 0.0
Time: 17.1s
Precision: 64
\[e^{-\left(1 - x \cdot x\right)}\]
\[{\left(e^{x + \sqrt{1}}\right)}^{x} \cdot \left({\left(e^{x}\right)}^{\left(-\sqrt{1}\right)} \cdot {\left(e^{\sqrt{1}}\right)}^{\left(-\sqrt{1}\right)}\right)\]
e^{-\left(1 - x \cdot x\right)}
{\left(e^{x + \sqrt{1}}\right)}^{x} \cdot \left({\left(e^{x}\right)}^{\left(-\sqrt{1}\right)} \cdot {\left(e^{\sqrt{1}}\right)}^{\left(-\sqrt{1}\right)}\right)
double f(double x) {
        double r39568 = 1.0;
        double r39569 = x;
        double r39570 = r39569 * r39569;
        double r39571 = r39568 - r39570;
        double r39572 = -r39571;
        double r39573 = exp(r39572);
        return r39573;
}

double f(double x) {
        double r39574 = x;
        double r39575 = 1.0;
        double r39576 = sqrt(r39575);
        double r39577 = r39574 + r39576;
        double r39578 = exp(r39577);
        double r39579 = pow(r39578, r39574);
        double r39580 = exp(r39574);
        double r39581 = -r39576;
        double r39582 = pow(r39580, r39581);
        double r39583 = exp(r39576);
        double r39584 = pow(r39583, r39581);
        double r39585 = r39582 * r39584;
        double r39586 = r39579 * r39585;
        return r39586;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[e^{-\left(1 - x \cdot x\right)}\]
  2. Simplified0.0

    \[\leadsto \color{blue}{e^{x \cdot x - 1}}\]
  3. Using strategy rm
  4. Applied add-sqr-sqrt0.0

    \[\leadsto e^{x \cdot x - \color{blue}{\sqrt{1} \cdot \sqrt{1}}}\]
  5. Applied difference-of-squares0.0

    \[\leadsto e^{\color{blue}{\left(x + \sqrt{1}\right) \cdot \left(x - \sqrt{1}\right)}}\]
  6. Applied exp-prod0.0

    \[\leadsto \color{blue}{{\left(e^{x + \sqrt{1}}\right)}^{\left(x - \sqrt{1}\right)}}\]
  7. Using strategy rm
  8. Applied sub-neg0.0

    \[\leadsto {\left(e^{x + \sqrt{1}}\right)}^{\color{blue}{\left(x + \left(-\sqrt{1}\right)\right)}}\]
  9. Applied unpow-prod-up0.0

    \[\leadsto \color{blue}{{\left(e^{x + \sqrt{1}}\right)}^{x} \cdot {\left(e^{x + \sqrt{1}}\right)}^{\left(-\sqrt{1}\right)}}\]
  10. Using strategy rm
  11. Applied exp-sum0.0

    \[\leadsto {\left(e^{x + \sqrt{1}}\right)}^{x} \cdot {\color{blue}{\left(e^{x} \cdot e^{\sqrt{1}}\right)}}^{\left(-\sqrt{1}\right)}\]
  12. Applied unpow-prod-down0.0

    \[\leadsto {\left(e^{x + \sqrt{1}}\right)}^{x} \cdot \color{blue}{\left({\left(e^{x}\right)}^{\left(-\sqrt{1}\right)} \cdot {\left(e^{\sqrt{1}}\right)}^{\left(-\sqrt{1}\right)}\right)}\]
  13. Final simplification0.0

    \[\leadsto {\left(e^{x + \sqrt{1}}\right)}^{x} \cdot \left({\left(e^{x}\right)}^{\left(-\sqrt{1}\right)} \cdot {\left(e^{\sqrt{1}}\right)}^{\left(-\sqrt{1}\right)}\right)\]

Reproduce

herbie shell --seed 2019198 +o rules:numerics
(FPCore (x)
  :name "exp neg sub"
  (exp (- (- 1.0 (* x x)))))