Average Error: 0.1 → 0.1
Time: 17.7s
Precision: 64
\[\frac{1}{2} \cdot \left(x + y \cdot \sqrt{z}\right)\]
\[\frac{1}{2} \cdot \left(x + y \cdot \sqrt{z}\right)\]
\frac{1}{2} \cdot \left(x + y \cdot \sqrt{z}\right)
\frac{1}{2} \cdot \left(x + y \cdot \sqrt{z}\right)
double f(double x, double y, double z) {
        double r248644 = 1.0;
        double r248645 = 2.0;
        double r248646 = r248644 / r248645;
        double r248647 = x;
        double r248648 = y;
        double r248649 = z;
        double r248650 = sqrt(r248649);
        double r248651 = r248648 * r248650;
        double r248652 = r248647 + r248651;
        double r248653 = r248646 * r248652;
        return r248653;
}

double f(double x, double y, double z) {
        double r248654 = 1.0;
        double r248655 = 2.0;
        double r248656 = r248654 / r248655;
        double r248657 = x;
        double r248658 = y;
        double r248659 = z;
        double r248660 = sqrt(r248659);
        double r248661 = r248658 * r248660;
        double r248662 = r248657 + r248661;
        double r248663 = r248656 * r248662;
        return r248663;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.1

    \[\frac{1}{2} \cdot \left(x + y \cdot \sqrt{z}\right)\]
  2. Final simplification0.1

    \[\leadsto \frac{1}{2} \cdot \left(x + y \cdot \sqrt{z}\right)\]

Reproduce

herbie shell --seed 2019303 
(FPCore (x y z)
  :name "Diagrams.Solve.Polynomial:quadForm from diagrams-solve-0.1, B"
  :precision binary64
  (* (/ 1 2) (+ x (* y (sqrt z)))))