Average Error: 14.2 → 0.0
Time: 3.7s
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|\sqrt[3]{{\left(\frac{a + b}{a} \cdot \frac{a - b}{a}\right)}^{3}}\right|}\]
\sqrt{\left|\frac{a \cdot a - b \cdot b}{a \cdot a}\right|}
\sqrt{\left|\sqrt[3]{{\left(\frac{a + b}{a} \cdot \frac{a - b}{a}\right)}^{3}}\right|}
double f(double a, double b) {
        double r104777 = a;
        double r104778 = r104777 * r104777;
        double r104779 = b;
        double r104780 = r104779 * r104779;
        double r104781 = r104778 - r104780;
        double r104782 = r104781 / r104778;
        double r104783 = fabs(r104782);
        double r104784 = sqrt(r104783);
        return r104784;
}

double f(double a, double b) {
        double r104785 = a;
        double r104786 = b;
        double r104787 = r104785 + r104786;
        double r104788 = r104787 / r104785;
        double r104789 = r104785 - r104786;
        double r104790 = r104789 / r104785;
        double r104791 = r104788 * r104790;
        double r104792 = 3.0;
        double r104793 = pow(r104791, r104792);
        double r104794 = cbrt(r104793);
        double r104795 = fabs(r104794);
        double r104796 = sqrt(r104795);
        return r104796;
}

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.2

    \[\sqrt{\left|\frac{a \cdot a - b \cdot b}{a \cdot a}\right|}\]
  2. Using strategy rm
  3. Applied difference-of-squares14.2

    \[\leadsto \sqrt{\left|\frac{\color{blue}{\left(a + b\right) \cdot \left(a - b\right)}}{a \cdot a}\right|}\]
  4. Applied times-frac0.0

    \[\leadsto \sqrt{\left|\color{blue}{\frac{a + b}{a} \cdot \frac{a - b}{a}}\right|}\]
  5. Using strategy rm
  6. Applied add-cbrt-cube27.3

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

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

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

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

    \[\leadsto \sqrt{\left|\frac{\color{blue}{\sqrt[3]{\left(\left(a + b\right) \cdot \left(a + b\right)\right) \cdot \left(a + b\right)}}}{\sqrt[3]{\left(a \cdot a\right) \cdot a}} \cdot \sqrt[3]{\frac{\left(\left(a - b\right) \cdot \left(a - b\right)\right) \cdot \left(a - b\right)}{\left(a \cdot a\right) \cdot a}}\right|}\]
  11. Applied cbrt-undiv26.8

    \[\leadsto \sqrt{\left|\color{blue}{\sqrt[3]{\frac{\left(\left(a + b\right) \cdot \left(a + b\right)\right) \cdot \left(a + b\right)}{\left(a \cdot a\right) \cdot a}}} \cdot \sqrt[3]{\frac{\left(\left(a - b\right) \cdot \left(a - b\right)\right) \cdot \left(a - b\right)}{\left(a \cdot a\right) \cdot a}}\right|}\]
  12. Applied cbrt-unprod26.8

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

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

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

Reproduce

herbie shell --seed 2020057 +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)))))