Average Error: 0.0 → 0.0
Time: 5.6m
Precision: 64
\[\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i\]
\[\left(c \cdot i + \left(b \cdot a + x \cdot y\right)\right) + z \cdot t\]
\left(\left(x \cdot y + z \cdot t\right) + a \cdot b\right) + c \cdot i
\left(c \cdot i + \left(b \cdot a + x \cdot y\right)\right) + z \cdot t
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r458706 = x;
        double r458707 = y;
        double r458708 = r458706 * r458707;
        double r458709 = z;
        double r458710 = t;
        double r458711 = r458709 * r458710;
        double r458712 = r458708 + r458711;
        double r458713 = a;
        double r458714 = b;
        double r458715 = r458713 * r458714;
        double r458716 = r458712 + r458715;
        double r458717 = c;
        double r458718 = i;
        double r458719 = r458717 * r458718;
        double r458720 = r458716 + r458719;
        return r458720;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r458721 = c;
        double r458722 = i;
        double r458723 = r458721 * r458722;
        double r458724 = b;
        double r458725 = a;
        double r458726 = r458724 * r458725;
        double r458727 = x;
        double r458728 = y;
        double r458729 = r458727 * r458728;
        double r458730 = r458726 + r458729;
        double r458731 = r458723 + r458730;
        double r458732 = z;
        double r458733 = t;
        double r458734 = r458732 * r458733;
        double r458735 = r458731 + r458734;
        return r458735;
}

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. Simplified0.0

    \[\leadsto \color{blue}{z \cdot t + \left(c \cdot i + \left(a \cdot b + x \cdot y\right)\right)}\]
  3. Final simplification0.0

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

Reproduce

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