\Im(\left(\left(\left(\left(\left(\left(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) + \left(\left(\left(\left(\left(-2\right) + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(\left(\left(5 + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(\left(4 + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0.0 i\right)\right))\Im(\left(\left(\left(\left(\left(\left(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) + \left(\left(\left(\left(\left(-2\right) + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(\left(\left(5 + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(\left(4 + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0.0 i\right)\right))double f() {
double r36146 = 1.0;
double r36147 = -r36146;
double r36148 = 2.0;
double r36149 = r36147 / r36148;
double r36150 = 3.0;
double r36151 = sqrt(r36150);
double r36152 = r36151 / r36148;
double r36153 = /* ERROR: no complex support in C */;
double r36154 = r36153 * r36153;
double r36155 = r36154 * r36153;
double r36156 = r36155 * r36153;
double r36157 = -r36148;
double r36158 = 0.0;
double r36159 = /* ERROR: no complex support in C */;
double r36160 = r36159 * r36153;
double r36161 = r36160 * r36153;
double r36162 = r36161 * r36153;
double r36163 = r36156 + r36162;
double r36164 = 5.0;
double r36165 = /* ERROR: no complex support in C */;
double r36166 = r36165 * r36153;
double r36167 = r36166 * r36153;
double r36168 = r36163 + r36167;
double r36169 = 4.0;
double r36170 = /* ERROR: no complex support in C */;
double r36171 = r36170 * r36153;
double r36172 = r36168 + r36171;
double r36173 = 7.0;
double r36174 = /* ERROR: no complex support in C */;
double r36175 = r36172 + r36174;
double r36176 = /* ERROR: no complex support in C */;
return r36176;
}
double f() {
double r36177 = 1.0;
double r36178 = -r36177;
double r36179 = 2.0;
double r36180 = r36178 / r36179;
double r36181 = 3.0;
double r36182 = sqrt(r36181);
double r36183 = r36182 / r36179;
double r36184 = /* ERROR: no complex support in C */;
double r36185 = r36184 * r36184;
double r36186 = r36185 * r36184;
double r36187 = r36186 * r36184;
double r36188 = -r36179;
double r36189 = 0.0;
double r36190 = /* ERROR: no complex support in C */;
double r36191 = r36190 * r36184;
double r36192 = r36191 * r36184;
double r36193 = r36192 * r36184;
double r36194 = r36187 + r36193;
double r36195 = 5.0;
double r36196 = /* ERROR: no complex support in C */;
double r36197 = r36196 * r36184;
double r36198 = r36197 * r36184;
double r36199 = r36194 + r36198;
double r36200 = 4.0;
double r36201 = /* ERROR: no complex support in C */;
double r36202 = r36201 * r36184;
double r36203 = r36199 + r36202;
double r36204 = 7.0;
double r36205 = /* ERROR: no complex support in C */;
double r36206 = r36203 + r36205;
double r36207 = /* ERROR: no complex support in C */;
return r36207;
}
Initial program 0
Final simplification0
herbie shell --seed 2019346
(FPCore ()
:name "3.9.2 imaginary part (p56)"
:precision binary64
(im (+ (+ (+ (+ (* (* (* (complex (/ (- 1) 2) (/ (sqrt 3) 2)) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (* (* (* (complex (- 2) 0.0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (* (* (complex 5 0.0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (* (complex 4 0.0) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (complex 7 0.0))))