Average Error: 17.6 → 17.6
Time: 6.5s
Precision: binary64
\[{\left(\left(\frac{\left(2 \cdot l1\right) \cdot p1}{{a}^{2}} + \frac{\left(2 \cdot l2\right) \cdot p2}{{a}^{2}}\right) + \frac{\left(2 \cdot l3\right) \cdot p3}{{b}^{2}}\right)}^{2}\]
\[{\left(\left(\frac{\left(2 \cdot l1\right) \cdot p1}{{a}^{2}} + \frac{\left(2 \cdot l2\right) \cdot p2}{{a}^{2}}\right) + \frac{\left(2 \cdot l3\right) \cdot p3}{{b}^{2}}\right)}^{2}\]
{\left(\left(\frac{\left(2 \cdot l1\right) \cdot p1}{{a}^{2}} + \frac{\left(2 \cdot l2\right) \cdot p2}{{a}^{2}}\right) + \frac{\left(2 \cdot l3\right) \cdot p3}{{b}^{2}}\right)}^{2}
{\left(\left(\frac{\left(2 \cdot l1\right) \cdot p1}{{a}^{2}} + \frac{\left(2 \cdot l2\right) \cdot p2}{{a}^{2}}\right) + \frac{\left(2 \cdot l3\right) \cdot p3}{{b}^{2}}\right)}^{2}
double code(double l1, double p1, double a, double l2, double p2, double l3, double p3, double b) {
	return ((double) pow(((double) (((double) (((double) (((double) (((double) (2.0 * l1)) * p1)) / ((double) pow(a, 2.0)))) + ((double) (((double) (((double) (2.0 * l2)) * p2)) / ((double) pow(a, 2.0)))))) + ((double) (((double) (((double) (2.0 * l3)) * p3)) / ((double) pow(b, 2.0)))))), 2.0));
}
double code(double l1, double p1, double a, double l2, double p2, double l3, double p3, double b) {
	return ((double) pow(((double) (((double) (((double) (((double) (((double) (2.0 * l1)) * p1)) / ((double) pow(a, 2.0)))) + ((double) (((double) (((double) (2.0 * l2)) * p2)) / ((double) pow(a, 2.0)))))) + ((double) (((double) (((double) (2.0 * l3)) * p3)) / ((double) pow(b, 2.0)))))), 2.0));
}

Error

Bits error versus l1

Bits error versus p1

Bits error versus a

Bits error versus l2

Bits error versus p2

Bits error versus l3

Bits error versus p3

Bits error versus b

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 17.6

    \[{\left(\left(\frac{\left(2 \cdot l1\right) \cdot p1}{{a}^{2}} + \frac{\left(2 \cdot l2\right) \cdot p2}{{a}^{2}}\right) + \frac{\left(2 \cdot l3\right) \cdot p3}{{b}^{2}}\right)}^{2}\]
  2. Final simplification17.6

    \[\leadsto {\left(\left(\frac{\left(2 \cdot l1\right) \cdot p1}{{a}^{2}} + \frac{\left(2 \cdot l2\right) \cdot p2}{{a}^{2}}\right) + \frac{\left(2 \cdot l3\right) \cdot p3}{{b}^{2}}\right)}^{2}\]

Reproduce

herbie shell --seed 2020152 
(FPCore (l1 p1 a l2 p2 l3 p3 b)
  :name "(pow (+ (+ (/ (* (* 2 l1) p1) (pow a 2)) (/ (* (* 2 l2) p2) (pow a 2))) (/ (* (* 2 l3) p3) (pow b 2))) 2)"
  :precision binary64
  (pow (+ (+ (/ (* (* 2.0 l1) p1) (pow a 2.0)) (/ (* (* 2.0 l2) p2) (pow a 2.0))) (/ (* (* 2.0 l3) p3) (pow b 2.0))) 2.0))