\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 r36106 = 1.0;
double r36107 = -r36106;
double r36108 = 2.0;
double r36109 = r36107 / r36108;
double r36110 = 3.0;
double r36111 = sqrt(r36110);
double r36112 = r36111 / r36108;
double r36113 = /* ERROR: no complex support in C */;
double r36114 = r36113 * r36113;
double r36115 = r36114 * r36113;
double r36116 = r36115 * r36113;
double r36117 = -r36108;
double r36118 = 0.0;
double r36119 = /* ERROR: no complex support in C */;
double r36120 = r36119 * r36113;
double r36121 = r36120 * r36113;
double r36122 = r36121 * r36113;
double r36123 = r36116 + r36122;
double r36124 = 5.0;
double r36125 = /* ERROR: no complex support in C */;
double r36126 = r36125 * r36113;
double r36127 = r36126 * r36113;
double r36128 = r36123 + r36127;
double r36129 = 4.0;
double r36130 = /* ERROR: no complex support in C */;
double r36131 = r36130 * r36113;
double r36132 = r36128 + r36131;
double r36133 = 7.0;
double r36134 = /* ERROR: no complex support in C */;
double r36135 = r36132 + r36134;
double r36136 = /* ERROR: no complex support in C */;
return r36136;
}
double f() {
double r36137 = 1.0;
double r36138 = -r36137;
double r36139 = 2.0;
double r36140 = r36138 / r36139;
double r36141 = 3.0;
double r36142 = sqrt(r36141);
double r36143 = r36142 / r36139;
double r36144 = /* ERROR: no complex support in C */;
double r36145 = r36144 * r36144;
double r36146 = r36145 * r36144;
double r36147 = r36146 * r36144;
double r36148 = -r36139;
double r36149 = 0.0;
double r36150 = /* ERROR: no complex support in C */;
double r36151 = r36150 * r36144;
double r36152 = r36151 * r36144;
double r36153 = r36152 * r36144;
double r36154 = r36147 + r36153;
double r36155 = 5.0;
double r36156 = /* ERROR: no complex support in C */;
double r36157 = r36156 * r36144;
double r36158 = r36157 * r36144;
double r36159 = r36154 + r36158;
double r36160 = 4.0;
double r36161 = /* ERROR: no complex support in C */;
double r36162 = r36161 * r36144;
double r36163 = r36159 + r36162;
double r36164 = 7.0;
double r36165 = /* ERROR: no complex support in C */;
double r36166 = r36163 + r36165;
double r36167 = /* ERROR: no complex support in C */;
return r36167;
}
Initial program 61.9
Final simplification61.9
herbie shell --seed 2020014
(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))))