Average Error: 0 → 0
Time: 22.1s
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 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 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 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 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0 i\right)\right))\]
\[\Re(\left(-1 + 0 i\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 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 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 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 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0 i\right)\right))
\Re(\left(-1 + 0 i\right))
double f() {
        double r710916 = -1.0;
        double r710917 = 1.0;
        double r710918 = /* ERROR: no complex support in C */;
        double r710919 = r710918 * r710918;
        double r710920 = r710919 * r710918;
        double r710921 = r710920 * r710918;
        double r710922 = r710921 * r710918;
        double r710923 = r710922 * r710918;
        double r710924 = 6.0;
        double r710925 = 0.0;
        double r710926 = /* ERROR: no complex support in C */;
        double r710927 = r710926 * r710918;
        double r710928 = r710927 * r710918;
        double r710929 = r710928 * r710918;
        double r710930 = r710929 * r710918;
        double r710931 = r710930 * r710918;
        double r710932 = r710923 + r710931;
        double r710933 = 15.0;
        double r710934 = /* ERROR: no complex support in C */;
        double r710935 = r710934 * r710918;
        double r710936 = r710935 * r710918;
        double r710937 = r710936 * r710918;
        double r710938 = r710937 * r710918;
        double r710939 = r710932 + r710938;
        double r710940 = 20.0;
        double r710941 = /* ERROR: no complex support in C */;
        double r710942 = r710941 * r710918;
        double r710943 = r710942 * r710918;
        double r710944 = r710943 * r710918;
        double r710945 = r710939 + r710944;
        double r710946 = r710945 + r710936;
        double r710947 = r710946 + r710927;
        double r710948 = /* ERROR: no complex support in C */;
        double r710949 = r710947 + r710948;
        double r710950 = /* ERROR: no complex support in C */;
        return r710950;
}

double f() {
        double r710951 = -1.0;
        double r710952 = 0.0;
        double r710953 = /* ERROR: no complex support in C */;
        double r710954 = /* ERROR: no complex support in C */;
        return r710954;
}

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 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 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 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 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0 i\right)\right))\]
  2. Simplified0

    \[\leadsto \color{blue}{\Re(\left(-1 + 0 i\right))}\]
  3. Final simplification0

    \[\leadsto \Re(\left(-1 + 0 i\right))\]

Reproduce

herbie shell --seed 2019139 +o rules:numerics
(FPCore ()
  :name "3.9.1 real part (p56)"
  (re (+.c (+.c (+.c (+.c (+.c (+.c (*.c (*.c (*.c (*.c (*.c (complex -1 1) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (*.c (*.c (*.c (*.c (*.c (complex 6 0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (*.c (*.c (complex 15 0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (*.c (complex 20 0) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (complex 15 0) (complex -1 1)) (complex -1 1))) (*.c (complex 6 0) (complex -1 1))) (complex 1 0))))