Average Error: 0.0 → 0.0
Time: 19.5s
Precision: 64
\[\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i\]
\[\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i\]
\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i
\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r160479 = x;
        double r160480 = y;
        double r160481 = r160479 * r160480;
        double r160482 = z;
        double r160483 = t;
        double r160484 = r160482 * r160483;
        double r160485 = r160481 + r160484;
        double r160486 = a;
        double r160487 = b;
        double r160488 = r160486 * r160487;
        double r160489 = r160485 + r160488;
        double r160490 = c;
        double r160491 = i;
        double r160492 = r160490 * r160491;
        double r160493 = r160489 + r160492;
        return r160493;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r160494 = x;
        double r160495 = y;
        double r160496 = r160494 * r160495;
        double r160497 = z;
        double r160498 = t;
        double r160499 = r160497 * r160498;
        double r160500 = r160496 + r160499;
        double r160501 = a;
        double r160502 = b;
        double r160503 = r160501 * r160502;
        double r160504 = r160500 + r160503;
        double r160505 = c;
        double r160506 = i;
        double r160507 = r160505 * r160506;
        double r160508 = r160504 + r160507;
        return r160508;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Bits error versus a

Bits error versus b

Bits error versus c

Bits error versus i

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i\]
  2. Final simplification0.0

    \[\leadsto \left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i\]

Reproduce

herbie shell --seed 2019350 
(FPCore (x y z t a b c i)
  :name "Linear.V4:$cdot from linear-1.19.1.3, C"
  :precision binary64
  (+ (+ (+ (* x y) (* z t)) (* a b)) (* c i)))