Average Error: 0 → 0
Time: 27.4s
Precision: 64
\[\Im(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(\left(\left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(20 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0.0 i\right)\right))\]
\[\Im(\left(\left(\left(\left(1 + 0.0 i\right) + \left(\left(-1 \cdot 6 - 1 \cdot 0.0\right) + \left(1 \cdot 6 + 0.0 \cdot -1\right) i\right)\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) i\right) \cdot \left(\left(\left(-1 \cdot 20 - 1 \cdot 0.0\right) + 15\right) + \left(0.0 + \left(0.0 \cdot -1 + 20 \cdot 1\right)\right) i\right)\right)\right) + \left(\left(\left(\left(15 + 0.0 i\right) + \left(\left(-1 \cdot 6 - 1 \cdot 0.0\right) + \left(1 \cdot 6 + 0.0 \cdot -1\right) i\right)\right) \cdot \left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) i\right)\right) + \left(\left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) - \left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) + \left(\left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right)\right) i\right)\right)\right))\]
\Im(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(\left(\left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(20 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0.0 i\right)\right))
\Im(\left(\left(\left(\left(1 + 0.0 i\right) + \left(\left(-1 \cdot 6 - 1 \cdot 0.0\right) + \left(1 \cdot 6 + 0.0 \cdot -1\right) i\right)\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) i\right) \cdot \left(\left(\left(-1 \cdot 20 - 1 \cdot 0.0\right) + 15\right) + \left(0.0 + \left(0.0 \cdot -1 + 20 \cdot 1\right)\right) i\right)\right)\right) + \left(\left(\left(\left(15 + 0.0 i\right) + \left(\left(-1 \cdot 6 - 1 \cdot 0.0\right) + \left(1 \cdot 6 + 0.0 \cdot -1\right) i\right)\right) \cdot \left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) i\right)\right) + \left(\left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) - \left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) + \left(\left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right)\right) i\right)\right)\right))
double f() {
        double r1917911 = -1.0;
        double r1917912 = 1.0;
        double r1917913 = /* ERROR: no complex support in C */;
        double r1917914 = r1917913 * r1917913;
        double r1917915 = r1917914 * r1917913;
        double r1917916 = r1917915 * r1917913;
        double r1917917 = r1917916 * r1917913;
        double r1917918 = r1917917 * r1917913;
        double r1917919 = 6.0;
        double r1917920 = 0.0;
        double r1917921 = /* ERROR: no complex support in C */;
        double r1917922 = r1917921 * r1917913;
        double r1917923 = r1917922 * r1917913;
        double r1917924 = r1917923 * r1917913;
        double r1917925 = r1917924 * r1917913;
        double r1917926 = r1917925 * r1917913;
        double r1917927 = r1917918 + r1917926;
        double r1917928 = 15.0;
        double r1917929 = /* ERROR: no complex support in C */;
        double r1917930 = r1917929 * r1917913;
        double r1917931 = r1917930 * r1917913;
        double r1917932 = r1917931 * r1917913;
        double r1917933 = r1917932 * r1917913;
        double r1917934 = r1917927 + r1917933;
        double r1917935 = 20.0;
        double r1917936 = /* ERROR: no complex support in C */;
        double r1917937 = r1917936 * r1917913;
        double r1917938 = r1917937 * r1917913;
        double r1917939 = r1917938 * r1917913;
        double r1917940 = r1917934 + r1917939;
        double r1917941 = r1917940 + r1917931;
        double r1917942 = r1917941 + r1917922;
        double r1917943 = /* ERROR: no complex support in C */;
        double r1917944 = r1917942 + r1917943;
        double r1917945 = /* ERROR: no complex support in C */;
        return r1917945;
}

double f() {
        double r1917946 = 1.0;
        double r1917947 = 0.0;
        double r1917948 = /* ERROR: no complex support in C */;
        double r1917949 = -1.0;
        double r1917950 = 6.0;
        double r1917951 = r1917949 * r1917950;
        double r1917952 = r1917946 * r1917947;
        double r1917953 = r1917951 - r1917952;
        double r1917954 = r1917946 * r1917950;
        double r1917955 = r1917947 * r1917949;
        double r1917956 = r1917954 + r1917955;
        double r1917957 = /* ERROR: no complex support in C */;
        double r1917958 = r1917948 + r1917957;
        double r1917959 = r1917946 + r1917949;
        double r1917960 = r1917949 - r1917946;
        double r1917961 = r1917959 * r1917960;
        double r1917962 = r1917946 * r1917949;
        double r1917963 = r1917962 + r1917962;
        double r1917964 = /* ERROR: no complex support in C */;
        double r1917965 = 20.0;
        double r1917966 = r1917949 * r1917965;
        double r1917967 = r1917966 - r1917952;
        double r1917968 = 15.0;
        double r1917969 = r1917967 + r1917968;
        double r1917970 = r1917965 * r1917946;
        double r1917971 = r1917955 + r1917970;
        double r1917972 = r1917947 + r1917971;
        double r1917973 = /* ERROR: no complex support in C */;
        double r1917974 = r1917964 * r1917973;
        double r1917975 = r1917958 + r1917974;
        double r1917976 = /* ERROR: no complex support in C */;
        double r1917977 = r1917976 + r1917957;
        double r1917978 = r1917963 + r1917961;
        double r1917979 = r1917961 - r1917963;
        double r1917980 = r1917978 * r1917979;
        double r1917981 = r1917961 * r1917963;
        double r1917982 = r1917981 + r1917981;
        double r1917983 = /* ERROR: no complex support in C */;
        double r1917984 = r1917977 * r1917983;
        double r1917985 = r1917961 * r1917980;
        double r1917986 = r1917963 * r1917982;
        double r1917987 = r1917985 - r1917986;
        double r1917988 = r1917980 * r1917963;
        double r1917989 = r1917982 * r1917961;
        double r1917990 = r1917988 + r1917989;
        double r1917991 = /* ERROR: no complex support in C */;
        double r1917992 = r1917984 + r1917991;
        double r1917993 = r1917975 + r1917992;
        double r1917994 = /* ERROR: no complex support in C */;
        return r1917994;
}

Error

Derivation

  1. Initial program 0

    \[\Im(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(\left(\left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(20 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0.0 i\right)\right))\]
  2. Simplified0

    \[\leadsto \color{blue}{\Im(\left(\left(\left(\left(\left(-1 \cdot 6 - 1 \cdot 0.0\right) + \left(6 \cdot 1 + 0.0 \cdot -1\right) i\right) + \left(1 + 0.0 i\right)\right) + \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right) + \left(-1 \cdot 1 + -1 \cdot 1\right) i\right) \cdot \left(\left(15 + \left(-1 \cdot 20 - 1 \cdot 0.0\right)\right) + \left(0.0 + \left(1 \cdot 20 + 0.0 \cdot -1\right)\right) i\right)\right)\right) + \left(\left(\left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right) + \left(-1 \cdot 1 + -1 \cdot 1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right) - \left(-1 \cdot 1 + -1 \cdot 1\right)\right) + \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(-1 \cdot 1 + -1 \cdot 1\right) + \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(-1 \cdot 1 + -1 \cdot 1\right)\right) i\right) \cdot \left(\left(\left(-1 \cdot 6 - 1 \cdot 0.0\right) + \left(6 \cdot 1 + 0.0 \cdot -1\right) i\right) + \left(15 + 0.0 i\right)\right)\right) + \left(\left(\left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right) + \left(-1 \cdot 1 + -1 \cdot 1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right) - \left(-1 \cdot 1 + -1 \cdot 1\right)\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) - \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(-1 \cdot 1 + -1 \cdot 1\right) + \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(-1 \cdot 1 + -1 \cdot 1\right)\right) \cdot \left(-1 \cdot 1 + -1 \cdot 1\right)\right) + \left(\left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right) + \left(-1 \cdot 1 + -1 \cdot 1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right) - \left(-1 \cdot 1 + -1 \cdot 1\right)\right)\right) \cdot \left(-1 \cdot 1 + -1 \cdot 1\right) + \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(-1 \cdot 1 + -1 \cdot 1\right) + \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(-1 \cdot 1 + -1 \cdot 1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right)\right) i\right)\right)\right))}\]
  3. Final simplification0

    \[\leadsto \Im(\left(\left(\left(\left(1 + 0.0 i\right) + \left(\left(-1 \cdot 6 - 1 \cdot 0.0\right) + \left(1 \cdot 6 + 0.0 \cdot -1\right) i\right)\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) i\right) \cdot \left(\left(\left(-1 \cdot 20 - 1 \cdot 0.0\right) + 15\right) + \left(0.0 + \left(0.0 \cdot -1 + 20 \cdot 1\right)\right) i\right)\right)\right) + \left(\left(\left(\left(15 + 0.0 i\right) + \left(\left(-1 \cdot 6 - 1 \cdot 0.0\right) + \left(1 \cdot 6 + 0.0 \cdot -1\right) i\right)\right) \cdot \left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) i\right)\right) + \left(\left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) - \left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) + \left(\left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right)\right) i\right)\right)\right))\]

Reproduce

herbie shell --seed 2019168 
(FPCore ()
  :name "3.9.1 imaginary part (p56)"
  (im (+.c (+.c (+.c (+.c (+.c (+.c (*.c (*.c (*.c (*.c (*.c (complex -1.0 1.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (*.c (*.c (*.c (*.c (*.c (complex 6.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0))) (*.c (*.c (*.c (*.c (complex 15.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0))) (*.c (*.c (*.c (complex 20.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0))) (*.c (*.c (complex 15.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0))) (*.c (complex 6.0 0.0) (complex -1.0 1.0))) (complex 1.0 0.0))))