\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(\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))
double f() {
double r28071 = -1.0;
double r28072 = 1.0;
double r28073 = /* ERROR: no complex support in C */;
double r28074 = r28073 * r28073;
double r28075 = r28074 * r28073;
double r28076 = r28075 * r28073;
double r28077 = r28076 * r28073;
double r28078 = r28077 * r28073;
double r28079 = 6.0;
double r28080 = 0.0;
double r28081 = /* ERROR: no complex support in C */;
double r28082 = r28081 * r28073;
double r28083 = r28082 * r28073;
double r28084 = r28083 * r28073;
double r28085 = r28084 * r28073;
double r28086 = r28085 * r28073;
double r28087 = r28078 + r28086;
double r28088 = 15.0;
double r28089 = /* ERROR: no complex support in C */;
double r28090 = r28089 * r28073;
double r28091 = r28090 * r28073;
double r28092 = r28091 * r28073;
double r28093 = r28092 * r28073;
double r28094 = r28087 + r28093;
double r28095 = 20.0;
double r28096 = /* ERROR: no complex support in C */;
double r28097 = r28096 * r28073;
double r28098 = r28097 * r28073;
double r28099 = r28098 * r28073;
double r28100 = r28094 + r28099;
double r28101 = r28100 + r28091;
double r28102 = r28101 + r28082;
double r28103 = /* ERROR: no complex support in C */;
double r28104 = r28102 + r28103;
double r28105 = /* ERROR: no complex support in C */;
return r28105;
}
double f() {
double r28106 = -1.0;
double r28107 = 1.0;
double r28108 = /* ERROR: no complex support in C */;
double r28109 = r28108 * r28108;
double r28110 = r28109 * r28108;
double r28111 = r28110 * r28108;
double r28112 = r28111 * r28108;
double r28113 = r28112 * r28108;
double r28114 = 6.0;
double r28115 = 0.0;
double r28116 = /* ERROR: no complex support in C */;
double r28117 = r28116 * r28108;
double r28118 = r28117 * r28108;
double r28119 = r28118 * r28108;
double r28120 = r28119 * r28108;
double r28121 = r28120 * r28108;
double r28122 = r28113 + r28121;
double r28123 = 15.0;
double r28124 = /* ERROR: no complex support in C */;
double r28125 = r28124 * r28108;
double r28126 = r28125 * r28108;
double r28127 = r28126 * r28108;
double r28128 = r28127 * r28108;
double r28129 = r28122 + r28128;
double r28130 = 20.0;
double r28131 = /* ERROR: no complex support in C */;
double r28132 = r28131 * r28108;
double r28133 = r28132 * r28108;
double r28134 = r28133 * r28108;
double r28135 = r28129 + r28134;
double r28136 = r28135 + r28126;
double r28137 = r28136 + r28117;
double r28138 = /* ERROR: no complex support in C */;
double r28139 = r28137 + r28138;
double r28140 = /* ERROR: no complex support in C */;
return r28140;
}
Initial program 0
Final simplification0
herbie shell --seed 2020083 +o rules:numerics
(FPCore ()
:name "3.9.1 imaginary part (p56)"
:precision binary64
(im (+ (+ (+ (+ (+ (+ (* (* (* (* (* (complex -1 1) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (* (* (* (* (* (complex 6 0.0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (* (* (* (* (complex 15 0.0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (* (* (* (complex 20 0.0) (complex -1 1)) (complex -1 1)) (complex -1 1))) (* (* (complex 15 0.0) (complex -1 1)) (complex -1 1))) (* (complex 6 0.0) (complex -1 1))) (complex 1 0.0))))