Average Error: 16.5 → 16.5
Time: 5.9s
Precision: binary64
\[\frac{\left(m3 - \left(3 \cdot m1\right) \cdot \left(m2 - {m1}^{2}\right)\right) - {m1}^{3}}{{\left(m2 - {m1}^{2}\right)}^{\left(\frac{3}{2}\right)}}\]
\[\frac{\left(m3 - \left(3 \cdot m1\right) \cdot \left(m2 - {m1}^{2}\right)\right) - {m1}^{3}}{{\left(m2 - {m1}^{2}\right)}^{\left(\frac{3}{2}\right)}}\]
\frac{\left(m3 - \left(3 \cdot m1\right) \cdot \left(m2 - {m1}^{2}\right)\right) - {m1}^{3}}{{\left(m2 - {m1}^{2}\right)}^{\left(\frac{3}{2}\right)}}
\frac{\left(m3 - \left(3 \cdot m1\right) \cdot \left(m2 - {m1}^{2}\right)\right) - {m1}^{3}}{{\left(m2 - {m1}^{2}\right)}^{\left(\frac{3}{2}\right)}}
double code(double m3, double m1, double m2) {
	return ((double) (((double) (((double) (m3 - ((double) (((double) (3.0 * m1)) * ((double) (m2 - ((double) pow(m1, 2.0)))))))) - ((double) pow(m1, 3.0)))) / ((double) pow(((double) (m2 - ((double) pow(m1, 2.0)))), ((double) (3.0 / 2.0))))));
}
double code(double m3, double m1, double m2) {
	return ((double) (((double) (((double) (m3 - ((double) (((double) (3.0 * m1)) * ((double) (m2 - ((double) pow(m1, 2.0)))))))) - ((double) pow(m1, 3.0)))) / ((double) pow(((double) (m2 - ((double) pow(m1, 2.0)))), ((double) (3.0 / 2.0))))));
}

Error

Bits error versus m3

Bits error versus m1

Bits error versus m2

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 16.5

    \[\frac{\left(m3 - \left(3 \cdot m1\right) \cdot \left(m2 - {m1}^{2}\right)\right) - {m1}^{3}}{{\left(m2 - {m1}^{2}\right)}^{\left(\frac{3}{2}\right)}}\]
  2. Final simplification16.5

    \[\leadsto \frac{\left(m3 - \left(3 \cdot m1\right) \cdot \left(m2 - {m1}^{2}\right)\right) - {m1}^{3}}{{\left(m2 - {m1}^{2}\right)}^{\left(\frac{3}{2}\right)}}\]

Reproduce

herbie shell --seed 2020152 
(FPCore (m3 m1 m2)
  :name "(/ (- (- m3 (* (* 3 m1) (- m2 (pow m1 2)))) (pow m1 3)) (pow (- m2 (pow m1 2)) (/ 3 2)))"
  :precision binary64
  (/ (- (- m3 (* (* 3.0 m1) (- m2 (pow m1 2.0)))) (pow m1 3.0)) (pow (- m2 (pow m1 2.0)) (/ 3.0 2.0))))