Average Error: 1.7 → 2.0
Time: 20.5s
Precision: 64
\[\frac{\left(\left(-b_2\right) - \left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)\right)}{a}\]
\[\frac{\frac{\left(b_2 + \left(-b_2\right)\right) \cdot \left(\left(-b_2\right) + \left(-b_2\right)\right) + c \cdot a}{\left(-b_2\right) + \sqrt{b_2 \cdot b_2 - a \cdot c}}}{a}\]
\frac{\left(\left(-b_2\right) - \left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)\right)}{a}
\frac{\frac{\left(b_2 + \left(-b_2\right)\right) \cdot \left(\left(-b_2\right) + \left(-b_2\right)\right) + c \cdot a}{\left(-b_2\right) + \sqrt{b_2 \cdot b_2 - a \cdot c}}}{a}
double f(double a, double b_2, double c) {
        double r1535196 = b_2;
        double r1535197 = -r1535196;
        double r1535198 = r1535196 * r1535196;
        double r1535199 = a;
        double r1535200 = c;
        double r1535201 = r1535199 * r1535200;
        double r1535202 = r1535198 - r1535201;
        double r1535203 = sqrt(r1535202);
        double r1535204 = r1535197 - r1535203;
        double r1535205 = r1535204 / r1535199;
        return r1535205;
}

double f(double a, double b_2, double c) {
        double r1535206 = b_2;
        double r1535207 = -r1535206;
        double r1535208 = r1535206 + r1535207;
        double r1535209 = r1535207 + r1535207;
        double r1535210 = r1535208 * r1535209;
        double r1535211 = c;
        double r1535212 = a;
        double r1535213 = r1535211 * r1535212;
        double r1535214 = r1535210 + r1535213;
        double r1535215 = r1535206 * r1535206;
        double r1535216 = r1535212 * r1535211;
        double r1535217 = r1535215 - r1535216;
        double r1535218 = sqrt(r1535217);
        double r1535219 = r1535207 + r1535218;
        double r1535220 = r1535214 / r1535219;
        double r1535221 = r1535220 / r1535212;
        return r1535221;
}

Error

Bits error versus a

Bits error versus b_2

Bits error versus c

Derivation

  1. Initial program 1.7

    \[\frac{\left(\left(-b_2\right) - \left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)\right)}{a}\]
  2. Using strategy rm
  3. Applied p16-flip--3.0

    \[\leadsto \frac{\color{blue}{\left(\frac{\left(\left(\left(-b_2\right) \cdot \left(-b_2\right)\right) - \left(\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right) \cdot \left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)\right)\right)}{\left(\frac{\left(-b_2\right)}{\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)}\right)}\right)}}{a}\]
  4. Using strategy rm
  5. Applied difference-of-squares2.1

    \[\leadsto \frac{\left(\frac{\color{blue}{\left(\left(\frac{\left(-b_2\right)}{\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)}\right) \cdot \left(\left(-b_2\right) - \left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)\right)\right)}}{\left(\frac{\left(-b_2\right)}{\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)}\right)}\right)}{a}\]
  6. Applied associate-/l*2.3

    \[\leadsto \frac{\color{blue}{\left(\frac{\left(\frac{\left(-b_2\right)}{\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)}\right)}{\left(\frac{\left(\frac{\left(-b_2\right)}{\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)}\right)}{\left(\left(-b_2\right) - \left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)\right)}\right)}\right)}}{a}\]
  7. Using strategy rm
  8. Applied p16-flip--3.2

    \[\leadsto \frac{\left(\frac{\left(\frac{\left(-b_2\right)}{\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)}\right)}{\left(\frac{\left(\frac{\left(-b_2\right)}{\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)}\right)}{\color{blue}{\left(\frac{\left(\left(\left(-b_2\right) \cdot \left(-b_2\right)\right) - \left(\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right) \cdot \left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)\right)\right)}{\left(\frac{\left(-b_2\right)}{\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)}\right)}\right)}}\right)}\right)}{a}\]
  9. Applied associate-/r/3.2

    \[\leadsto \frac{\left(\frac{\left(\frac{\left(-b_2\right)}{\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)}\right)}{\color{blue}{\left(\left(\frac{\left(\frac{\left(-b_2\right)}{\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)}\right)}{\left(\left(\left(-b_2\right) \cdot \left(-b_2\right)\right) - \left(\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right) \cdot \left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)\right)\right)}\right) \cdot \left(\frac{\left(-b_2\right)}{\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)}\right)\right)}}\right)}{a}\]
  10. Applied associate-/r*3.2

    \[\leadsto \frac{\color{blue}{\left(\frac{\left(\frac{\left(\frac{\left(-b_2\right)}{\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)}\right)}{\left(\frac{\left(\frac{\left(-b_2\right)}{\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)}\right)}{\left(\left(\left(-b_2\right) \cdot \left(-b_2\right)\right) - \left(\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right) \cdot \left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)\right)\right)}\right)}\right)}{\left(\frac{\left(-b_2\right)}{\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)}\right)}\right)}}{a}\]
  11. Simplified2.0

    \[\leadsto \frac{\left(\frac{\color{blue}{\left(\frac{\left(\left(\frac{b_2}{\left(-b_2\right)}\right) \cdot \left(\frac{\left(-b_2\right)}{\left(-b_2\right)}\right)\right)}{\left(c \cdot a\right)}\right)}}{\left(\frac{\left(-b_2\right)}{\left(\sqrt{\left(\left(b_2 \cdot b_2\right) - \left(a \cdot c\right)\right)}\right)}\right)}\right)}{a}\]
  12. Final simplification2.0

    \[\leadsto \frac{\frac{\left(b_2 + \left(-b_2\right)\right) \cdot \left(\left(-b_2\right) + \left(-b_2\right)\right) + c \cdot a}{\left(-b_2\right) + \sqrt{b_2 \cdot b_2 - a \cdot c}}}{a}\]

Reproduce

herbie shell --seed 2019133 +o rules:numerics
(FPCore (a b_2 c)
  :name "quad2m (problem 3.2.1, negative)"
  (/.p16 (-.p16 (neg.p16 b_2) (sqrt.p16 (-.p16 (*.p16 b_2 b_2) (*.p16 a c)))) a))