\[\mathsf{fma}\left(x, y, z\right) - \left(1 + \left(x \cdot y + z\right)\right)\]
\mathsf{fma}\left(x, y, z\right) - \left(1 + \left(x \cdot y + z\right)\right)
double f(double x, double y, double z) {
        double r8396 = x;
        double r8397 = y;
        double r8398 = z;
        double r8399 = fma(r8396, r8397, r8398);
        double r8400 = 1.0;
        double r8401 = r8396 * r8397;
        double r8402 = r8401 + r8398;
        double r8403 = r8400 + r8402;
        double r8404 = r8399 - r8403;
        return r8404;
}

Reproduce

Please include this information when filing a bug report:

herbie shell --seed 2019305 
(FPCore (x y z)
  :name "simple fma test"
  :precision binary64

  :herbie-target
  -1

  (- (fma x y z) (+ 1 (+ (* x y) z))))

Backtrace

exact?: contract violation expected: number? given: 'h2LC
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
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