Average Error: 29.1 → 29.1
Time: 7.1s
Precision: binary64
\[\sqrt{\sqrt{{\left(\sqrt{x \cdot y}\right)}^{2} \cdot z} \cdot w}\]
\[\sqrt{\sqrt{{\left(\sqrt{x \cdot y}\right)}^{2} \cdot z} \cdot w}\]
\sqrt{\sqrt{{\left(\sqrt{x \cdot y}\right)}^{2} \cdot z} \cdot w}
\sqrt{\sqrt{{\left(\sqrt{x \cdot y}\right)}^{2} \cdot z} \cdot w}
double code(double x, double y, double z, double w) {
	return ((double) sqrt(((double) (((double) sqrt(((double) (((double) pow(((double) sqrt(((double) (x * y)))), 2.0)) * z)))) * w))));
}
double code(double x, double y, double z, double w) {
	return ((double) sqrt(((double) (((double) sqrt(((double) (((double) pow(((double) sqrt(((double) (x * y)))), 2.0)) * z)))) * w))));
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus w

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 29.1

    \[\sqrt{\sqrt{{\left(\sqrt{x \cdot y}\right)}^{2} \cdot z} \cdot w}\]
  2. Final simplification29.1

    \[\leadsto \sqrt{\sqrt{{\left(\sqrt{x \cdot y}\right)}^{2} \cdot z} \cdot w}\]

Reproduce

herbie shell --seed 2020152 
(FPCore (x y z w)
  :name "(sqrt (* (sqrt (* (pow (sqrt (* x y)) 2) z)) w))"
  :precision binary64
  (sqrt (* (sqrt (* (pow (sqrt (* x y)) 2.0) z)) w)))