Average Error: 0.0 → 0.0
Time: 9.1s
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 r827359 = 1.0;
        double r827360 = 8.0;
        double r827361 = r827359 / r827360;
        double r827362 = x;
        double r827363 = r827361 * r827362;
        double r827364 = y;
        double r827365 = z;
        double r827366 = r827364 * r827365;
        double r827367 = 2.0;
        double r827368 = r827366 / r827367;
        double r827369 = r827363 - r827368;
        double r827370 = t;
        double r827371 = r827369 + r827370;
        return r827371;
}

double f(double x, double y, double z, double t) {
        double r827372 = 1.0;
        double r827373 = 8.0;
        double r827374 = r827372 / r827373;
        double r827375 = x;
        double r827376 = r827374 * r827375;
        double r827377 = y;
        double r827378 = z;
        double r827379 = r827377 * r827378;
        double r827380 = 2.0;
        double r827381 = r827379 / r827380;
        double r827382 = r827376 - r827381;
        double r827383 = t;
        double r827384 = r827382 + r827383;
        return r827384;
}

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