Average Error: 0.0 → 0.0
Time: 7.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 r834862 = 1.0;
        double r834863 = 8.0;
        double r834864 = r834862 / r834863;
        double r834865 = x;
        double r834866 = r834864 * r834865;
        double r834867 = y;
        double r834868 = z;
        double r834869 = r834867 * r834868;
        double r834870 = 2.0;
        double r834871 = r834869 / r834870;
        double r834872 = r834866 - r834871;
        double r834873 = t;
        double r834874 = r834872 + r834873;
        return r834874;
}

double f(double x, double y, double z, double t) {
        double r834875 = 1.0;
        double r834876 = 8.0;
        double r834877 = r834875 / r834876;
        double r834878 = x;
        double r834879 = r834877 * r834878;
        double r834880 = y;
        double r834881 = z;
        double r834882 = r834880 * r834881;
        double r834883 = 2.0;
        double r834884 = r834882 / r834883;
        double r834885 = r834879 - r834884;
        double r834886 = t;
        double r834887 = r834885 + r834886;
        return r834887;
}

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