Average Error: 0.0 → 0.0
Time: 2.0m
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 r165949 = x;
        double r165950 = y;
        double r165951 = r165949 * r165950;
        double r165952 = z;
        double r165953 = t;
        double r165954 = r165952 * r165953;
        double r165955 = r165951 + r165954;
        double r165956 = a;
        double r165957 = b;
        double r165958 = r165956 * r165957;
        double r165959 = r165955 + r165958;
        double r165960 = c;
        double r165961 = i;
        double r165962 = r165960 * r165961;
        double r165963 = r165959 + r165962;
        return r165963;
}

double f(double x, double y, double z, double t, double a, double b, double c, double i) {
        double r165964 = x;
        double r165965 = y;
        double r165966 = r165964 * r165965;
        double r165967 = z;
        double r165968 = t;
        double r165969 = r165967 * r165968;
        double r165970 = r165966 + r165969;
        double r165971 = a;
        double r165972 = b;
        double r165973 = r165971 * r165972;
        double r165974 = r165970 + r165973;
        double r165975 = c;
        double r165976 = i;
        double r165977 = r165975 * r165976;
        double r165978 = r165974 + r165977;
        return r165978;
}

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