Average Error: 0.0 → 0.0
Time: 11.7s
Precision: 64
\[\left(\frac{1.0}{8.0} \cdot x - \frac{y \cdot z}{2.0}\right) + t\]
\[t + \left(\frac{1.0}{8.0} \cdot x - \frac{y \cdot z}{2.0}\right)\]
\left(\frac{1.0}{8.0} \cdot x - \frac{y \cdot z}{2.0}\right) + t
t + \left(\frac{1.0}{8.0} \cdot x - \frac{y \cdot z}{2.0}\right)
double f(double x, double y, double z, double t) {
        double r31582181 = 1.0;
        double r31582182 = 8.0;
        double r31582183 = r31582181 / r31582182;
        double r31582184 = x;
        double r31582185 = r31582183 * r31582184;
        double r31582186 = y;
        double r31582187 = z;
        double r31582188 = r31582186 * r31582187;
        double r31582189 = 2.0;
        double r31582190 = r31582188 / r31582189;
        double r31582191 = r31582185 - r31582190;
        double r31582192 = t;
        double r31582193 = r31582191 + r31582192;
        return r31582193;
}

double f(double x, double y, double z, double t) {
        double r31582194 = t;
        double r31582195 = 1.0;
        double r31582196 = 8.0;
        double r31582197 = r31582195 / r31582196;
        double r31582198 = x;
        double r31582199 = r31582197 * r31582198;
        double r31582200 = y;
        double r31582201 = z;
        double r31582202 = r31582200 * r31582201;
        double r31582203 = 2.0;
        double r31582204 = r31582202 / r31582203;
        double r31582205 = r31582199 - r31582204;
        double r31582206 = r31582194 + r31582205;
        return r31582206;
}

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.0} + t\right) - \frac{z}{2.0} \cdot y\]

Derivation

  1. Initial program 0.0

    \[\left(\frac{1.0}{8.0} \cdot x - \frac{y \cdot z}{2.0}\right) + t\]
  2. Final simplification0.0

    \[\leadsto t + \left(\frac{1.0}{8.0} \cdot x - \frac{y \cdot z}{2.0}\right)\]

Reproduce

herbie shell --seed 2019163 
(FPCore (x y z t)
  :name "Diagrams.Solve.Polynomial:quartForm  from diagrams-solve-0.1, B"

  :herbie-target
  (- (+ (/ x 8.0) t) (* (/ z 2.0) y))

  (+ (- (* (/ 1.0 8.0) x) (/ (* y z) 2.0)) t))