Average Error: 0.0 → 0.0
Time: 5.0s
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 r518730 = 1.0;
        double r518731 = 8.0;
        double r518732 = r518730 / r518731;
        double r518733 = x;
        double r518734 = r518732 * r518733;
        double r518735 = y;
        double r518736 = z;
        double r518737 = r518735 * r518736;
        double r518738 = 2.0;
        double r518739 = r518737 / r518738;
        double r518740 = r518734 - r518739;
        double r518741 = t;
        double r518742 = r518740 + r518741;
        return r518742;
}

double f(double x, double y, double z, double t) {
        double r518743 = 1.0;
        double r518744 = 8.0;
        double r518745 = r518743 / r518744;
        double r518746 = x;
        double r518747 = r518745 * r518746;
        double r518748 = y;
        double r518749 = z;
        double r518750 = r518748 * r518749;
        double r518751 = 2.0;
        double r518752 = r518750 / r518751;
        double r518753 = r518747 - r518752;
        double r518754 = t;
        double r518755 = r518753 + r518754;
        return r518755;
}

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