Average Error: 14.3 → 0.0
Time: 15.4s
Precision: 64
\[0.0 \le b \le a \le 1\]
\[\sqrt{\left|\frac{a \cdot a - b \cdot b}{a \cdot a}\right|}\]
\[\sqrt{\left|1 - \sqrt[3]{{\left(\log \left(e^{\frac{\frac{b}{a} \cdot b}{a}}\right)\right)}^{3}}\right|}\]
\sqrt{\left|\frac{a \cdot a - b \cdot b}{a \cdot a}\right|}
\sqrt{\left|1 - \sqrt[3]{{\left(\log \left(e^{\frac{\frac{b}{a} \cdot b}{a}}\right)\right)}^{3}}\right|}
double f(double a, double b) {
        double r68071 = a;
        double r68072 = r68071 * r68071;
        double r68073 = b;
        double r68074 = r68073 * r68073;
        double r68075 = r68072 - r68074;
        double r68076 = r68075 / r68072;
        double r68077 = fabs(r68076);
        double r68078 = sqrt(r68077);
        return r68078;
}

double f(double a, double b) {
        double r68079 = 1.0;
        double r68080 = b;
        double r68081 = a;
        double r68082 = r68080 / r68081;
        double r68083 = r68082 * r68080;
        double r68084 = r68083 / r68081;
        double r68085 = exp(r68084);
        double r68086 = log(r68085);
        double r68087 = 3.0;
        double r68088 = pow(r68086, r68087);
        double r68089 = cbrt(r68088);
        double r68090 = r68079 - r68089;
        double r68091 = fabs(r68090);
        double r68092 = sqrt(r68091);
        return r68092;
}

Error

Bits error versus a

Bits error versus b

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 14.3

    \[\sqrt{\left|\frac{a \cdot a - b \cdot b}{a \cdot a}\right|}\]
  2. Simplified14.3

    \[\leadsto \color{blue}{\sqrt{\left|1 - \frac{b \cdot b}{a \cdot a}\right|}}\]
  3. Using strategy rm
  4. Applied add-cbrt-cube26.8

    \[\leadsto \sqrt{\left|1 - \frac{b \cdot b}{a \cdot \color{blue}{\sqrt[3]{\left(a \cdot a\right) \cdot a}}}\right|}\]
  5. Applied add-cbrt-cube26.8

    \[\leadsto \sqrt{\left|1 - \frac{b \cdot b}{\color{blue}{\sqrt[3]{\left(a \cdot a\right) \cdot a}} \cdot \sqrt[3]{\left(a \cdot a\right) \cdot a}}\right|}\]
  6. Applied cbrt-unprod43.4

    \[\leadsto \sqrt{\left|1 - \frac{b \cdot b}{\color{blue}{\sqrt[3]{\left(\left(a \cdot a\right) \cdot a\right) \cdot \left(\left(a \cdot a\right) \cdot a\right)}}}\right|}\]
  7. Applied add-cbrt-cube43.4

    \[\leadsto \sqrt{\left|1 - \frac{b \cdot \color{blue}{\sqrt[3]{\left(b \cdot b\right) \cdot b}}}{\sqrt[3]{\left(\left(a \cdot a\right) \cdot a\right) \cdot \left(\left(a \cdot a\right) \cdot a\right)}}\right|}\]
  8. Applied add-cbrt-cube43.4

    \[\leadsto \sqrt{\left|1 - \frac{\color{blue}{\sqrt[3]{\left(b \cdot b\right) \cdot b}} \cdot \sqrt[3]{\left(b \cdot b\right) \cdot b}}{\sqrt[3]{\left(\left(a \cdot a\right) \cdot a\right) \cdot \left(\left(a \cdot a\right) \cdot a\right)}}\right|}\]
  9. Applied cbrt-unprod43.4

    \[\leadsto \sqrt{\left|1 - \frac{\color{blue}{\sqrt[3]{\left(\left(b \cdot b\right) \cdot b\right) \cdot \left(\left(b \cdot b\right) \cdot b\right)}}}{\sqrt[3]{\left(\left(a \cdot a\right) \cdot a\right) \cdot \left(\left(a \cdot a\right) \cdot a\right)}}\right|}\]
  10. Applied cbrt-undiv43.4

    \[\leadsto \sqrt{\left|1 - \color{blue}{\sqrt[3]{\frac{\left(\left(b \cdot b\right) \cdot b\right) \cdot \left(\left(b \cdot b\right) \cdot b\right)}{\left(\left(a \cdot a\right) \cdot a\right) \cdot \left(\left(a \cdot a\right) \cdot a\right)}}}\right|}\]
  11. Simplified0.0

    \[\leadsto \sqrt{\left|1 - \sqrt[3]{\color{blue}{{\left(\frac{\frac{b}{a} \cdot b}{a}\right)}^{3}}}\right|}\]
  12. Using strategy rm
  13. Applied add-log-exp0.0

    \[\leadsto \sqrt{\left|1 - \sqrt[3]{{\color{blue}{\left(\log \left(e^{\frac{\frac{b}{a} \cdot b}{a}}\right)\right)}}^{3}}\right|}\]
  14. Final simplification0.0

    \[\leadsto \sqrt{\left|1 - \sqrt[3]{{\left(\log \left(e^{\frac{\frac{b}{a} \cdot b}{a}}\right)\right)}^{3}}\right|}\]

Reproduce

herbie shell --seed 2020046 +o rules:numerics
(FPCore (a b)
  :name "Eccentricity of an ellipse"
  :precision binary64
  :pre (<= 0.0 b a 1)
  (sqrt (fabs (/ (- (* a a) (* b b)) (* a a)))))