\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(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(4 + 0.0 i\right) + \left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(-\left(\frac{1}{2} + 2\right)\right) + \left(\frac{\sqrt{3}}{2} + 0.0\right) i\right)\right) + \left(5 + 0.0 i\right)\right)\right)\right)\right) + \left(7 + 0.0 i\right)\right))double f() {
double r24173 = 1.0;
double r24174 = -r24173;
double r24175 = 2.0;
double r24176 = r24174 / r24175;
double r24177 = 3.0;
double r24178 = sqrt(r24177);
double r24179 = r24178 / r24175;
double r24180 = /* ERROR: no complex support in C */;
double r24181 = r24180 * r24180;
double r24182 = r24181 * r24180;
double r24183 = r24182 * r24180;
double r24184 = -r24175;
double r24185 = 0.0;
double r24186 = /* ERROR: no complex support in C */;
double r24187 = r24186 * r24180;
double r24188 = r24187 * r24180;
double r24189 = r24188 * r24180;
double r24190 = r24183 + r24189;
double r24191 = 5.0;
double r24192 = /* ERROR: no complex support in C */;
double r24193 = r24192 * r24180;
double r24194 = r24193 * r24180;
double r24195 = r24190 + r24194;
double r24196 = 4.0;
double r24197 = /* ERROR: no complex support in C */;
double r24198 = r24197 * r24180;
double r24199 = r24195 + r24198;
double r24200 = 7.0;
double r24201 = /* ERROR: no complex support in C */;
double r24202 = r24199 + r24201;
double r24203 = /* ERROR: no complex support in C */;
return r24203;
}
double f() {
double r24204 = 1.0;
double r24205 = -r24204;
double r24206 = 2.0;
double r24207 = r24205 / r24206;
double r24208 = 3.0;
double r24209 = sqrt(r24208);
double r24210 = r24209 / r24206;
double r24211 = /* ERROR: no complex support in C */;
double r24212 = 4.0;
double r24213 = 0.0;
double r24214 = /* ERROR: no complex support in C */;
double r24215 = r24204 / r24206;
double r24216 = r24215 + r24206;
double r24217 = -r24216;
double r24218 = r24210 + r24213;
double r24219 = /* ERROR: no complex support in C */;
double r24220 = r24211 * r24219;
double r24221 = 5.0;
double r24222 = /* ERROR: no complex support in C */;
double r24223 = r24220 + r24222;
double r24224 = r24211 * r24223;
double r24225 = r24214 + r24224;
double r24226 = r24211 * r24225;
double r24227 = 7.0;
double r24228 = /* ERROR: no complex support in C */;
double r24229 = r24226 + r24228;
double r24230 = /* ERROR: no complex support in C */;
return r24230;
}
Initial program 61.9
Simplified0
Final simplification0
herbie shell --seed 2019323 +o rules:numerics
(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))))