Average Error: 0.0 → 0.0
Time: 2.9m
Precision: 64
\[\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i\]
\[c \cdot i + \left(\left(z \cdot t + x \cdot y\right) + a \cdot b\right)\]
\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i
c \cdot i + \left(\left(z \cdot t + x \cdot y\right) + a \cdot b\right)
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r7031353 = x;
        double r7031354 = y;
        double r7031355 = r7031353 * r7031354;
        double r7031356 = z;
        double r7031357 = t;
        double r7031358 = r7031356 * r7031357;
        double r7031359 = r7031355 + r7031358;
        double r7031360 = a;
        double r7031361 = b;
        double r7031362 = r7031360 * r7031361;
        double r7031363 = r7031359 + r7031362;
        double r7031364 = c;
        double r7031365 = i;
        double r7031366 = r7031364 * r7031365;
        double r7031367 = r7031363 + r7031366;
        return r7031367;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r7031368 = c;
        double r7031369 = i;
        double r7031370 = r7031368 * r7031369;
        double r7031371 = z;
        double r7031372 = t;
        double r7031373 = r7031371 * r7031372;
        double r7031374 = x;
        double r7031375 = y;
        double r7031376 = r7031374 * r7031375;
        double r7031377 = r7031373 + r7031376;
        double r7031378 = a;
        double r7031379 = b;
        double r7031380 = r7031378 * r7031379;
        double r7031381 = r7031377 + r7031380;
        double r7031382 = r7031370 + r7031381;
        return r7031382;
}

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 c \cdot i + \left(\left(z \cdot t + x \cdot y\right) + a \cdot b\right)\]

Reproduce

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