\Re(\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))\Re(\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 r28128 = 1.0;
double r28129 = -r28128;
double r28130 = 2.0;
double r28131 = r28129 / r28130;
double r28132 = 3.0;
double r28133 = sqrt(r28132);
double r28134 = r28133 / r28130;
double r28135 = /* ERROR: no complex support in C */;
double r28136 = r28135 * r28135;
double r28137 = r28136 * r28135;
double r28138 = r28137 * r28135;
double r28139 = -r28130;
double r28140 = 0.0;
double r28141 = /* ERROR: no complex support in C */;
double r28142 = r28141 * r28135;
double r28143 = r28142 * r28135;
double r28144 = r28143 * r28135;
double r28145 = r28138 + r28144;
double r28146 = 5.0;
double r28147 = /* ERROR: no complex support in C */;
double r28148 = r28147 * r28135;
double r28149 = r28148 * r28135;
double r28150 = r28145 + r28149;
double r28151 = 4.0;
double r28152 = /* ERROR: no complex support in C */;
double r28153 = r28152 * r28135;
double r28154 = r28150 + r28153;
double r28155 = 7.0;
double r28156 = /* ERROR: no complex support in C */;
double r28157 = r28154 + r28156;
double r28158 = /* ERROR: no complex support in C */;
return r28158;
}
double f() {
double r28159 = 1.0;
double r28160 = -r28159;
double r28161 = 2.0;
double r28162 = r28160 / r28161;
double r28163 = 3.0;
double r28164 = sqrt(r28163);
double r28165 = r28164 / r28161;
double r28166 = /* ERROR: no complex support in C */;
double r28167 = r28166 * r28166;
double r28168 = r28167 * r28166;
double r28169 = r28168 * r28166;
double r28170 = -r28161;
double r28171 = 0.0;
double r28172 = /* ERROR: no complex support in C */;
double r28173 = r28172 * r28166;
double r28174 = r28173 * r28166;
double r28175 = r28174 * r28166;
double r28176 = r28169 + r28175;
double r28177 = 5.0;
double r28178 = /* ERROR: no complex support in C */;
double r28179 = r28178 * r28166;
double r28180 = r28179 * r28166;
double r28181 = r28176 + r28180;
double r28182 = 4.0;
double r28183 = /* ERROR: no complex support in C */;
double r28184 = r28183 * r28166;
double r28185 = r28181 + r28184;
double r28186 = 7.0;
double r28187 = /* ERROR: no complex support in C */;
double r28188 = r28185 + r28187;
double r28189 = /* ERROR: no complex support in C */;
return r28189;
}
Initial program 61.9
Final simplification61.9
herbie shell --seed 2019308
(FPCore ()
:name "3.9.2 real part (p56)"
:precision binary64
(re (+ (+ (+ (+ (* (* (* (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))))