\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 r24085 = 1.0;
double r24086 = -r24085;
double r24087 = 2.0;
double r24088 = r24086 / r24087;
double r24089 = 3.0;
double r24090 = sqrt(r24089);
double r24091 = r24090 / r24087;
double r24092 = /* ERROR: no complex support in C */;
double r24093 = r24092 * r24092;
double r24094 = r24093 * r24092;
double r24095 = r24094 * r24092;
double r24096 = -r24087;
double r24097 = 0.0;
double r24098 = /* ERROR: no complex support in C */;
double r24099 = r24098 * r24092;
double r24100 = r24099 * r24092;
double r24101 = r24100 * r24092;
double r24102 = r24095 + r24101;
double r24103 = 5.0;
double r24104 = /* ERROR: no complex support in C */;
double r24105 = r24104 * r24092;
double r24106 = r24105 * r24092;
double r24107 = r24102 + r24106;
double r24108 = 4.0;
double r24109 = /* ERROR: no complex support in C */;
double r24110 = r24109 * r24092;
double r24111 = r24107 + r24110;
double r24112 = 7.0;
double r24113 = /* ERROR: no complex support in C */;
double r24114 = r24111 + r24113;
double r24115 = /* ERROR: no complex support in C */;
return r24115;
}
double f() {
double r24116 = 1.0;
double r24117 = -r24116;
double r24118 = 2.0;
double r24119 = r24117 / r24118;
double r24120 = 3.0;
double r24121 = sqrt(r24120);
double r24122 = r24121 / r24118;
double r24123 = /* ERROR: no complex support in C */;
double r24124 = r24123 * r24123;
double r24125 = r24124 * r24123;
double r24126 = r24125 * r24123;
double r24127 = -r24118;
double r24128 = 0.0;
double r24129 = /* ERROR: no complex support in C */;
double r24130 = r24129 * r24123;
double r24131 = r24130 * r24123;
double r24132 = r24131 * r24123;
double r24133 = r24126 + r24132;
double r24134 = 5.0;
double r24135 = /* ERROR: no complex support in C */;
double r24136 = r24135 * r24123;
double r24137 = r24136 * r24123;
double r24138 = r24133 + r24137;
double r24139 = 4.0;
double r24140 = /* ERROR: no complex support in C */;
double r24141 = r24140 * r24123;
double r24142 = r24138 + r24141;
double r24143 = 7.0;
double r24144 = /* ERROR: no complex support in C */;
double r24145 = r24142 + r24144;
double r24146 = /* ERROR: no complex support in C */;
return r24146;
}
Initial program 61.9
Final simplification61.9
herbie shell --seed 2019291
(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))))