\[\left(d1 \cdot 10 + d1 \cdot d2\right) + d1 \cdot 20\]
\left(d1 \cdot 10 + d1 \cdot d2\right) + d1 \cdot 20
double f(double d1, double d2) {
        double r8774 = d1;
        double r8775 = 10.0;
        double r8776 = r8774 * r8775;
        double r8777 = d2;
        double r8778 = r8774 * r8777;
        double r8779 = r8776 + r8778;
        double r8780 = 20.0;
        double r8781 = r8774 * r8780;
        double r8782 = r8779 + r8781;
        return r8782;
}

Reproduce

Please include this information when filing a bug report:

herbie shell --seed 2019305 
(FPCore (d1 d2)
  :name "FastMath test2"
  :precision binary64

  :herbie-target
  (* d1 (+ 30 d2))

  (+ (+ (* d1 10) (* d1 d2)) (* d1 20)))

Backtrace

exact?: contract violation expected: number? given: 'h0LC
egg-parsed->expr/data/pavpan/nightlies/herbie/eggmath-testversion/src/core/eggmath.rkt650
for-loop/data/pavpan/nightlies/herbie/eggmath-testversion/src/core/eggmath.rkt706
egg-parsed->expr/data/pavpan/nightlies/herbie/eggmath-testversion/src/core/eggmath.rkt650
(unnamed)/data/pavpan/nightlies/herbie/eggmath-testversion/src/core/simplify.rkt498
egraph-add-exprs/data/pavpan/nightlies/herbie/eggmath-testversion/src/core/eggmath.rkt1220
egraph-run/data/pavpan/nightlies/herbie/eggmath-testversion/src/core/eggmath.rkt550
(unnamed)/data/pavpan/nightlies/herbie/eggmath-testversion/src/core/simplify.rkt380
simplify!/data/pavpan/nightlies/herbie/eggmath-testversion/src/mainloop.rkt2230
run-improve47/data/pavpan/nightlies/herbie/eggmath-testversion/src/mainloop.rkt3450
(unnamed)/opt/racket-7.2/collects/racket/private/more-scheme.rkt26128
run/opt/racket-7.2/share/pkgs/profile-lib/main.rkt392
profile-thunk16/opt/racket-7.2/share/pkgs/profile-lib/main.rkt90
(unnamed)/opt/racket-7.2/collects/racket/private/more-scheme.rkt26128