\Im(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(\left(\left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(20 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0.0 i\right)\right))
\Im(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(\left(\left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(20 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0.0 i\right)\right))
double f() {
double r86785 = -1.0;
double r86786 = 1.0;
double r86787 = /* ERROR: no complex support in C */;
double r86788 = r86787 * r86787;
double r86789 = r86788 * r86787;
double r86790 = r86789 * r86787;
double r86791 = r86790 * r86787;
double r86792 = r86791 * r86787;
double r86793 = 6.0;
double r86794 = 0.0;
double r86795 = /* ERROR: no complex support in C */;
double r86796 = r86795 * r86787;
double r86797 = r86796 * r86787;
double r86798 = r86797 * r86787;
double r86799 = r86798 * r86787;
double r86800 = r86799 * r86787;
double r86801 = r86792 + r86800;
double r86802 = 15.0;
double r86803 = /* ERROR: no complex support in C */;
double r86804 = r86803 * r86787;
double r86805 = r86804 * r86787;
double r86806 = r86805 * r86787;
double r86807 = r86806 * r86787;
double r86808 = r86801 + r86807;
double r86809 = 20.0;
double r86810 = /* ERROR: no complex support in C */;
double r86811 = r86810 * r86787;
double r86812 = r86811 * r86787;
double r86813 = r86812 * r86787;
double r86814 = r86808 + r86813;
double r86815 = r86814 + r86805;
double r86816 = r86815 + r86796;
double r86817 = /* ERROR: no complex support in C */;
double r86818 = r86816 + r86817;
double r86819 = /* ERROR: no complex support in C */;
return r86819;
}
double f() {
double r86820 = -1.0;
double r86821 = 1.0;
double r86822 = /* ERROR: no complex support in C */;
double r86823 = r86822 * r86822;
double r86824 = r86823 * r86822;
double r86825 = r86824 * r86822;
double r86826 = r86825 * r86822;
double r86827 = r86826 * r86822;
double r86828 = 6.0;
double r86829 = 0.0;
double r86830 = /* ERROR: no complex support in C */;
double r86831 = r86830 * r86822;
double r86832 = r86831 * r86822;
double r86833 = r86832 * r86822;
double r86834 = r86833 * r86822;
double r86835 = r86834 * r86822;
double r86836 = r86827 + r86835;
double r86837 = 15.0;
double r86838 = /* ERROR: no complex support in C */;
double r86839 = r86838 * r86822;
double r86840 = r86839 * r86822;
double r86841 = r86840 * r86822;
double r86842 = r86841 * r86822;
double r86843 = r86836 + r86842;
double r86844 = 20.0;
double r86845 = /* ERROR: no complex support in C */;
double r86846 = r86845 * r86822;
double r86847 = r86846 * r86822;
double r86848 = r86847 * r86822;
double r86849 = r86843 + r86848;
double r86850 = r86849 + r86840;
double r86851 = r86850 + r86831;
double r86852 = /* ERROR: no complex support in C */;
double r86853 = r86851 + r86852;
double r86854 = /* ERROR: no complex support in C */;
return r86854;
}
Initial program 0
Final simplification0
herbie shell --seed 2019354 +o rules:numerics
(FPCore ()
:name "3.9.1 imaginary part (p56)"
:precision binary64
(im (+ (+ (+ (+ (+ (+ (* (* (* (* (* (complex -1 1) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (* (* (* (* (* (complex 6 0.0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (* (* (* (* (complex 15 0.0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (* (* (* (complex 20 0.0) (complex -1 1)) (complex -1 1)) (complex -1 1))) (* (* (complex 15 0.0) (complex -1 1)) (complex -1 1))) (* (complex 6 0.0) (complex -1 1))) (complex 1 0.0))))