Average Error: 0.0 → 0.0
Time: 916.0ms
Precision: 64
\[\left(\frac{1}{8} \cdot x - \frac{y \cdot z}{2}\right) + t\]
\[\left(\frac{1}{8} \cdot x - \frac{y \cdot z}{2}\right) + t\]
\left(\frac{1}{8} \cdot x - \frac{y \cdot z}{2}\right) + t
\left(\frac{1}{8} \cdot x - \frac{y \cdot z}{2}\right) + t
double f(double x, double y, double z, double t) {
        double r905479 = 1.0;
        double r905480 = 8.0;
        double r905481 = r905479 / r905480;
        double r905482 = x;
        double r905483 = r905481 * r905482;
        double r905484 = y;
        double r905485 = z;
        double r905486 = r905484 * r905485;
        double r905487 = 2.0;
        double r905488 = r905486 / r905487;
        double r905489 = r905483 - r905488;
        double r905490 = t;
        double r905491 = r905489 + r905490;
        return r905491;
}

double f(double x, double y, double z, double t) {
        double r905492 = 1.0;
        double r905493 = 8.0;
        double r905494 = r905492 / r905493;
        double r905495 = x;
        double r905496 = r905494 * r905495;
        double r905497 = y;
        double r905498 = z;
        double r905499 = r905497 * r905498;
        double r905500 = 2.0;
        double r905501 = r905499 / r905500;
        double r905502 = r905496 - r905501;
        double r905503 = t;
        double r905504 = r905502 + r905503;
        return r905504;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

Original0.0
Target0.0
Herbie0.0
\[\left(\frac{x}{8} + t\right) - \frac{z}{2} \cdot y\]

Derivation

  1. Initial program 0.0

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

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

Reproduce

herbie shell --seed 2019362 +o rules:numerics
(FPCore (x y z t)
  :name "Diagrams.Solve.Polynomial:quartForm  from diagrams-solve-0.1, B"
  :precision binary64

  :herbie-target
  (- (+ (/ x 8) t) (* (/ z 2) y))

  (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t))