\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 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 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 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0 i\right)\right))\Im(\left(\left(5 + \frac{\sqrt{3}}{2} \cdot 4 i\right) + \left(\left(\frac{1}{4} - \frac{\sqrt{3}}{2} \cdot \frac{\sqrt{3}}{2}\right) + \left(\frac{\sqrt{3}}{-4} + \frac{\sqrt{3}}{-4}\right) i\right) \cdot \left(\left(\left(\frac{1}{4} - \frac{\sqrt{3}}{2} \cdot \frac{\sqrt{3}}{2}\right) + \left(\frac{\sqrt{3}}{-4} + \frac{\sqrt{3}}{-4}\right) i\right) + \left(6 + -2 \cdot \frac{\sqrt{3}}{2} i\right)\right)\right))double f() {
double r617118 = 1.0;
double r617119 = -r617118;
double r617120 = 2.0;
double r617121 = r617119 / r617120;
double r617122 = 3.0;
double r617123 = sqrt(r617122);
double r617124 = r617123 / r617120;
double r617125 = /* ERROR: no complex support in C */;
double r617126 = r617125 * r617125;
double r617127 = r617126 * r617125;
double r617128 = r617127 * r617125;
double r617129 = -r617120;
double r617130 = 0.0;
double r617131 = /* ERROR: no complex support in C */;
double r617132 = r617131 * r617125;
double r617133 = r617132 * r617125;
double r617134 = r617133 * r617125;
double r617135 = r617128 + r617134;
double r617136 = 5.0;
double r617137 = /* ERROR: no complex support in C */;
double r617138 = r617137 * r617125;
double r617139 = r617138 * r617125;
double r617140 = r617135 + r617139;
double r617141 = 4.0;
double r617142 = /* ERROR: no complex support in C */;
double r617143 = r617142 * r617125;
double r617144 = r617140 + r617143;
double r617145 = 7.0;
double r617146 = /* ERROR: no complex support in C */;
double r617147 = r617144 + r617146;
double r617148 = /* ERROR: no complex support in C */;
return r617148;
}
double f() {
double r617149 = 5.0;
double r617150 = 3.0;
double r617151 = sqrt(r617150);
double r617152 = 2.0;
double r617153 = r617151 / r617152;
double r617154 = 4.0;
double r617155 = r617153 * r617154;
double r617156 = /* ERROR: no complex support in C */;
double r617157 = 0.25;
double r617158 = r617153 * r617153;
double r617159 = r617157 - r617158;
double r617160 = -4.0;
double r617161 = r617151 / r617160;
double r617162 = r617161 + r617161;
double r617163 = /* ERROR: no complex support in C */;
double r617164 = 6.0;
double r617165 = -2.0;
double r617166 = r617165 * r617153;
double r617167 = /* ERROR: no complex support in C */;
double r617168 = r617163 + r617167;
double r617169 = r617163 * r617168;
double r617170 = r617156 + r617169;
double r617171 = /* ERROR: no complex support in C */;
return r617171;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019128 +o rules:numerics
(FPCore ()
:name "3.9.2 imaginary part (p56)"
(im (+.c (+.c (+.c (+.c (*.c (*.c (*.c (complex (/ (- 1) 2) (/ (sqrt 3) 2)) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (*.c (*.c (*.c (complex (- 2) 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (*.c (*.c (complex 5 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (*.c (complex 4 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (complex 7 0))))