Average Error: 0.0 → 0.0
Time: 2.3m
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 r94095 = x;
        double r94096 = y;
        double r94097 = r94095 * r94096;
        double r94098 = z;
        double r94099 = t;
        double r94100 = r94098 * r94099;
        double r94101 = r94097 + r94100;
        double r94102 = a;
        double r94103 = b;
        double r94104 = r94102 * r94103;
        double r94105 = r94101 + r94104;
        double r94106 = c;
        double r94107 = i;
        double r94108 = r94106 * r94107;
        double r94109 = r94105 + r94108;
        return r94109;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r94110 = c;
        double r94111 = i;
        double r94112 = r94110 * r94111;
        double r94113 = b;
        double r94114 = a;
        double r94115 = r94113 * r94114;
        double r94116 = x;
        double r94117 = y;
        double r94118 = r94116 * r94117;
        double r94119 = r94115 + r94118;
        double r94120 = r94112 + r94119;
        double r94121 = z;
        double r94122 = t;
        double r94123 = r94121 * r94122;
        double r94124 = r94120 + r94123;
        return r94124;
}

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 2019174 
(FPCore (x y z t a b c i)
  :name "Linear.V4:$cdot from linear-1.19.1.3"
  (+ (+ (+ (* x y) (* z t)) (* a b)) (* c i)))