Average Error: 0.0 → 0.0
Time: 975.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 r752493 = 1.0;
        double r752494 = 8.0;
        double r752495 = r752493 / r752494;
        double r752496 = x;
        double r752497 = r752495 * r752496;
        double r752498 = y;
        double r752499 = z;
        double r752500 = r752498 * r752499;
        double r752501 = 2.0;
        double r752502 = r752500 / r752501;
        double r752503 = r752497 - r752502;
        double r752504 = t;
        double r752505 = r752503 + r752504;
        return r752505;
}

double f(double x, double y, double z, double t) {
        double r752506 = 1.0;
        double r752507 = 8.0;
        double r752508 = r752506 / r752507;
        double r752509 = x;
        double r752510 = r752508 * r752509;
        double r752511 = y;
        double r752512 = z;
        double r752513 = r752511 * r752512;
        double r752514 = 2.0;
        double r752515 = r752513 / r752514;
        double r752516 = r752510 - r752515;
        double r752517 = t;
        double r752518 = r752516 + r752517;
        return r752518;
}

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 2020018 
(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))