\[\left(\left(d1 \cdot d2 - d1 \cdot d3\right) + d4 \cdot d1\right) - d1 \cdot d1\]
\left(\left(d1 \cdot d2 - d1 \cdot d3\right) + d4 \cdot d1\right) - d1 \cdot d1
double f(double d1, double d2, double d3, double d4) {
        double r262575 = d1;
        double r262576 = d2;
        double r262577 = r262575 * r262576;
        double r262578 = d3;
        double r262579 = r262575 * r262578;
        double r262580 = r262577 - r262579;
        double r262581 = d4;
        double r262582 = r262581 * r262575;
        double r262583 = r262580 + r262582;
        double r262584 = r262575 * r262575;
        double r262585 = r262583 - r262584;
        return r262585;
}

Reproduce

Please include this information when filing a bug report:

herbie shell --seed 2019323 +o rules:numerics
(FPCore (d1 d2 d3 d4)
  :name "FastMath dist4"
  :precision binary64

  :herbie-target
  (* d1 (- (+ (- d2 d3) d4) d1))

  (- (+ (- (* d1 d2) (* d1 d3)) (* d4 d1)) (* d1 d1)))

Backtrace

get-representation: Unknown representation realLC
(unnamed)/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/regimes.rkt653
filter/opt/racket-7.2/collects/racket/private/list.rkt2562
infer-splitpoints/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/regimes.rkt340
get-final-combination/data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt3690
(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