Average Error: 0.1 → 0.1
Time: 3.8s
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 r174023 = 1.0;
        double r174024 = 2.0;
        double r174025 = r174023 / r174024;
        double r174026 = x;
        double r174027 = y;
        double r174028 = z;
        double r174029 = sqrt(r174028);
        double r174030 = r174027 * r174029;
        double r174031 = r174026 + r174030;
        double r174032 = r174025 * r174031;
        return r174032;
}

double f(double x, double y, double z) {
        double r174033 = 1.0;
        double r174034 = 2.0;
        double r174035 = r174033 / r174034;
        double r174036 = x;
        double r174037 = y;
        double r174038 = z;
        double r174039 = sqrt(r174038);
        double r174040 = r174037 * r174039;
        double r174041 = r174036 + r174040;
        double r174042 = r174035 * r174041;
        return r174042;
}

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 2020001 +o rules:numerics
(FPCore (x y z)
  :name "Diagrams.Solve.Polynomial:quadForm from diagrams-solve-0.1, B"
  :precision binary64
  (* (/ 1 2) (+ x (* y (sqrt z)))))