Average Error: 0.2 → 0.2
Time: 11.3s
Precision: 64
\[\frac{1.0}{2.0} \cdot \left(x + y \cdot \sqrt{z}\right)\]
\[\frac{1.0}{2.0} \cdot \left(x + \sqrt{z} \cdot y\right)\]
\frac{1.0}{2.0} \cdot \left(x + y \cdot \sqrt{z}\right)
\frac{1.0}{2.0} \cdot \left(x + \sqrt{z} \cdot y\right)
double f(double x, double y, double z) {
        double r3622576 = 1.0;
        double r3622577 = 2.0;
        double r3622578 = r3622576 / r3622577;
        double r3622579 = x;
        double r3622580 = y;
        double r3622581 = z;
        double r3622582 = sqrt(r3622581);
        double r3622583 = r3622580 * r3622582;
        double r3622584 = r3622579 + r3622583;
        double r3622585 = r3622578 * r3622584;
        return r3622585;
}

double f(double x, double y, double z) {
        double r3622586 = 1.0;
        double r3622587 = 2.0;
        double r3622588 = r3622586 / r3622587;
        double r3622589 = x;
        double r3622590 = z;
        double r3622591 = sqrt(r3622590);
        double r3622592 = y;
        double r3622593 = r3622591 * r3622592;
        double r3622594 = r3622589 + r3622593;
        double r3622595 = r3622588 * r3622594;
        return r3622595;
}

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.2

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

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

Reproduce

herbie shell --seed 2019156 +o rules:numerics
(FPCore (x y z)
  :name "Diagrams.Solve.Polynomial:quadForm from diagrams-solve-0.1, B"
  (* (/ 1.0 2.0) (+ x (* y (sqrt z)))))