Average Error: 0.1 → 0.1
Time: 13.7s
Precision: 64
\[\frac{1}{2} \cdot \left(x + y \cdot \sqrt{z}\right)\]
\[\frac{1 \cdot \left(x + \sqrt{z} \cdot y\right)}{2}\]
\frac{1}{2} \cdot \left(x + y \cdot \sqrt{z}\right)
\frac{1 \cdot \left(x + \sqrt{z} \cdot y\right)}{2}
double f(double x, double y, double z) {
        double r787940 = 1.0;
        double r787941 = 2.0;
        double r787942 = r787940 / r787941;
        double r787943 = x;
        double r787944 = y;
        double r787945 = z;
        double r787946 = sqrt(r787945);
        double r787947 = r787944 * r787946;
        double r787948 = r787943 + r787947;
        double r787949 = r787942 * r787948;
        return r787949;
}

double f(double x, double y, double z) {
        double r787950 = 1.0;
        double r787951 = x;
        double r787952 = z;
        double r787953 = sqrt(r787952);
        double r787954 = y;
        double r787955 = r787953 * r787954;
        double r787956 = r787951 + r787955;
        double r787957 = r787950 * r787956;
        double r787958 = 2.0;
        double r787959 = r787957 / r787958;
        return r787959;
}

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. Simplified0.1

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

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

Reproduce

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