Average Error: 0 → 0
Time: 4.6s
Precision: 64
\[\Re(\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))\]
\[\Re(\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))\]
\Re(\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))
\Re(\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 r32826 = -1.0;
        double r32827 = 1.0;
        double r32828 = /* ERROR: no complex support in C */;
        double r32829 = r32828 * r32828;
        double r32830 = r32829 * r32828;
        double r32831 = r32830 * r32828;
        double r32832 = r32831 * r32828;
        double r32833 = r32832 * r32828;
        double r32834 = 6.0;
        double r32835 = 0.0;
        double r32836 = /* ERROR: no complex support in C */;
        double r32837 = r32836 * r32828;
        double r32838 = r32837 * r32828;
        double r32839 = r32838 * r32828;
        double r32840 = r32839 * r32828;
        double r32841 = r32840 * r32828;
        double r32842 = r32833 + r32841;
        double r32843 = 15.0;
        double r32844 = /* ERROR: no complex support in C */;
        double r32845 = r32844 * r32828;
        double r32846 = r32845 * r32828;
        double r32847 = r32846 * r32828;
        double r32848 = r32847 * r32828;
        double r32849 = r32842 + r32848;
        double r32850 = 20.0;
        double r32851 = /* ERROR: no complex support in C */;
        double r32852 = r32851 * r32828;
        double r32853 = r32852 * r32828;
        double r32854 = r32853 * r32828;
        double r32855 = r32849 + r32854;
        double r32856 = r32855 + r32846;
        double r32857 = r32856 + r32837;
        double r32858 = /* ERROR: no complex support in C */;
        double r32859 = r32857 + r32858;
        double r32860 = /* ERROR: no complex support in C */;
        return r32860;
}

double f() {
        double r32861 = -1.0;
        double r32862 = 1.0;
        double r32863 = /* ERROR: no complex support in C */;
        double r32864 = r32863 * r32863;
        double r32865 = r32864 * r32863;
        double r32866 = r32865 * r32863;
        double r32867 = r32866 * r32863;
        double r32868 = r32867 * r32863;
        double r32869 = 6.0;
        double r32870 = 0.0;
        double r32871 = /* ERROR: no complex support in C */;
        double r32872 = r32871 * r32863;
        double r32873 = r32872 * r32863;
        double r32874 = r32873 * r32863;
        double r32875 = r32874 * r32863;
        double r32876 = r32875 * r32863;
        double r32877 = r32868 + r32876;
        double r32878 = 15.0;
        double r32879 = /* ERROR: no complex support in C */;
        double r32880 = r32879 * r32863;
        double r32881 = r32880 * r32863;
        double r32882 = r32881 * r32863;
        double r32883 = r32882 * r32863;
        double r32884 = r32877 + r32883;
        double r32885 = 20.0;
        double r32886 = /* ERROR: no complex support in C */;
        double r32887 = r32886 * r32863;
        double r32888 = r32887 * r32863;
        double r32889 = r32888 * r32863;
        double r32890 = r32884 + r32889;
        double r32891 = r32890 + r32881;
        double r32892 = r32891 + r32872;
        double r32893 = /* ERROR: no complex support in C */;
        double r32894 = r32892 + r32893;
        double r32895 = /* ERROR: no complex support in C */;
        return r32895;
}

Error

Derivation

  1. Initial program 0

    \[\Re(\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))\]
  2. Final simplification0

    \[\leadsto \Re(\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))\]

Reproduce

herbie shell --seed 2020036 +o rules:numerics
(FPCore ()
  :name "3.9.1 real part (p56)"
  :precision binary64
  (re (+ (+ (+ (+ (+ (+ (* (* (* (* (* (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))))