Average Error: 0.0 → 0.0
Time: 7.0s
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 r149715 = x;
        double r149716 = y;
        double r149717 = r149715 * r149716;
        double r149718 = z;
        double r149719 = t;
        double r149720 = r149718 * r149719;
        double r149721 = r149717 + r149720;
        double r149722 = a;
        double r149723 = b;
        double r149724 = r149722 * r149723;
        double r149725 = r149721 + r149724;
        double r149726 = c;
        double r149727 = i;
        double r149728 = r149726 * r149727;
        double r149729 = r149725 + r149728;
        return r149729;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r149730 = x;
        double r149731 = y;
        double r149732 = r149730 * r149731;
        double r149733 = z;
        double r149734 = t;
        double r149735 = r149733 * r149734;
        double r149736 = r149732 + r149735;
        double r149737 = a;
        double r149738 = b;
        double r149739 = r149737 * r149738;
        double r149740 = r149736 + r149739;
        double r149741 = c;
        double r149742 = i;
        double r149743 = r149741 * r149742;
        double r149744 = r149740 + r149743;
        return r149744;
}

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 2020100 
(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)))