Average Error: 0.0 → 0.1
Time: 3.5s
Precision: 64
\[\left(\frac{1}{8} \cdot x - \frac{y \cdot z}{2}\right) + t\]
\[\left(\frac{1}{8} \cdot x - \frac{y}{\frac{2}{z}}\right) + t\]
\left(\frac{1}{8} \cdot x - \frac{y \cdot z}{2}\right) + t
\left(\frac{1}{8} \cdot x - \frac{y}{\frac{2}{z}}\right) + t
double f(double x, double y, double z, double t) {
        double r462079 = 1.0;
        double r462080 = 8.0;
        double r462081 = r462079 / r462080;
        double r462082 = x;
        double r462083 = r462081 * r462082;
        double r462084 = y;
        double r462085 = z;
        double r462086 = r462084 * r462085;
        double r462087 = 2.0;
        double r462088 = r462086 / r462087;
        double r462089 = r462083 - r462088;
        double r462090 = t;
        double r462091 = r462089 + r462090;
        return r462091;
}

double f(double x, double y, double z, double t) {
        double r462092 = 1.0;
        double r462093 = 8.0;
        double r462094 = r462092 / r462093;
        double r462095 = x;
        double r462096 = r462094 * r462095;
        double r462097 = y;
        double r462098 = 2.0;
        double r462099 = z;
        double r462100 = r462098 / r462099;
        double r462101 = r462097 / r462100;
        double r462102 = r462096 - r462101;
        double r462103 = t;
        double r462104 = r462102 + r462103;
        return r462104;
}

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.1
\[\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. Using strategy rm
  3. Applied associate-/l*0.1

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

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

Reproduce

herbie shell --seed 1978988140 
(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))