Average Error: 0.1 → 0.1
Time: 15.4s
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 r169296 = 1.0;
        double r169297 = 2.0;
        double r169298 = r169296 / r169297;
        double r169299 = x;
        double r169300 = y;
        double r169301 = z;
        double r169302 = sqrt(r169301);
        double r169303 = r169300 * r169302;
        double r169304 = r169299 + r169303;
        double r169305 = r169298 * r169304;
        return r169305;
}

double f(double x, double y, double z) {
        double r169306 = 1.0;
        double r169307 = 2.0;
        double r169308 = r169306 / r169307;
        double r169309 = x;
        double r169310 = y;
        double r169311 = z;
        double r169312 = sqrt(r169311);
        double r169313 = r169310 * r169312;
        double r169314 = r169309 + r169313;
        double r169315 = r169308 * r169314;
        return r169315;
}

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. Using strategy rm
  3. Applied +-commutative0.1

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

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

Reproduce

herbie shell --seed 2019194 +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)))))