Average Error: 22.2 → 22.2
Time: 1.6s
Precision: binary64
\[\frac{\left(\left(n + 1\right) \cdot \left(\frac{m_4}{{m_2}^{2}} - 3\right) + 6\right) \cdot \left(n - 1\right)}{\left(n - 2\right) \cdot \left(n - 3\right)}\]
\[\frac{\left(\left(n + 1\right) \cdot \left(\frac{m_4}{{m_2}^{2}} - 3\right) + 6\right) \cdot \left(n - 1\right)}{\left(n - 2\right) \cdot \left(n - 3\right)}\]
\frac{\left(\left(n + 1\right) \cdot \left(\frac{m_4}{{m_2}^{2}} - 3\right) + 6\right) \cdot \left(n - 1\right)}{\left(n - 2\right) \cdot \left(n - 3\right)}
\frac{\left(\left(n + 1\right) \cdot \left(\frac{m_4}{{m_2}^{2}} - 3\right) + 6\right) \cdot \left(n - 1\right)}{\left(n - 2\right) \cdot \left(n - 3\right)}
double code(double n, double m_4, double m_2) {
	return ((double) (((double) (((double) (((double) (((double) (n + 1.0)) * ((double) (((double) (m_4 / ((double) pow(m_2, 2.0)))) - 3.0)))) + 6.0)) * ((double) (n - 1.0)))) / ((double) (((double) (n - 2.0)) * ((double) (n - 3.0))))));
}
double code(double n, double m_4, double m_2) {
	return ((double) (((double) (((double) (((double) (((double) (n + 1.0)) * ((double) (((double) (m_4 / ((double) pow(m_2, 2.0)))) - 3.0)))) + 6.0)) * ((double) (n - 1.0)))) / ((double) (((double) (n - 2.0)) * ((double) (n - 3.0))))));
}

Error

Bits error versus n

Bits error versus m_4

Bits error versus m_2

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 22.2

    \[\frac{\left(\left(n + 1\right) \cdot \left(\frac{m_4}{{m_2}^{2}} - 3\right) + 6\right) \cdot \left(n - 1\right)}{\left(n - 2\right) \cdot \left(n - 3\right)}\]
  2. Final simplification22.2

    \[\leadsto \frac{\left(\left(n + 1\right) \cdot \left(\frac{m_4}{{m_2}^{2}} - 3\right) + 6\right) \cdot \left(n - 1\right)}{\left(n - 2\right) \cdot \left(n - 3\right)}\]

Reproduce

herbie shell --seed 2020152 
(FPCore (n m_4 m_2)
  :name "(/ (* (+ (* (+ n 1) (- (/ m_4 (pow m_2 2)) 3)) 6) (- n 1)) (* (- n 2) (- n 3)))"
  :precision binary64
  (/ (* (+ (* (+ n 1.0) (- (/ m_4 (pow m_2 2.0)) 3.0)) 6.0) (- n 1.0)) (* (- n 2.0) (- n 3.0))))