Average Error: 10.7 → 10.7
Time: 2.4s
Precision: binary64
\[w \cdot t + \left(S \cdot T\right) \cdot \left(H + r \cdot \left(r \cdot H + R\right)\right)\]
\[w \cdot t + \left(S \cdot T\right) \cdot \left(H + r \cdot \left(r \cdot H + R\right)\right)\]
w \cdot t + \left(S \cdot T\right) \cdot \left(H + r \cdot \left(r \cdot H + R\right)\right)
w \cdot t + \left(S \cdot T\right) \cdot \left(H + r \cdot \left(r \cdot H + R\right)\right)
double code(double w, double t, double S, double T, double H, double r, double R) {
	return ((double) (((double) (w * t)) + ((double) (((double) (S * T)) * ((double) (H + ((double) (r * ((double) (((double) (r * H)) + R))))))))));
}
double code(double w, double t, double S, double T, double H, double r, double R) {
	return ((double) (((double) (w * t)) + ((double) (((double) (S * T)) * ((double) (H + ((double) (r * ((double) (((double) (r * H)) + R))))))))));
}

Error

Bits error versus w

Bits error versus t

Bits error versus S

Bits error versus T

Bits error versus H

Bits error versus r

Bits error versus R

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 10.7

    \[w \cdot t + \left(S \cdot T\right) \cdot \left(H + r \cdot \left(r \cdot H + R\right)\right)\]
  2. Final simplification10.7

    \[\leadsto w \cdot t + \left(S \cdot T\right) \cdot \left(H + r \cdot \left(r \cdot H + R\right)\right)\]

Reproduce

herbie shell --seed 2020153 
(FPCore (w t S T H r R)
  :name "(+ (* w t) (* (* S T) (+ H (* r (+ (* r H) R)))))"
  :precision binary64
  (+ (* w t) (* (* S T) (+ H (* r (+ (* r H) R))))))