\[x + \left(y - z\right) \cdot \left(t - x\right)\]
x + \left(y - z\right) \cdot \left(t - x\right)
double f(double x, double y, double z, double t) {
        double r58892 = x;
        double r58893 = y;
        double r58894 = z;
        double r58895 = r58893 - r58894;
        double r58896 = t;
        double r58897 = r58896 - r58892;
        double r58898 = r58895 * r58897;
        double r58899 = r58892 + r58898;
        return r58899;
}

Reproduce

Please include this information when filing a bug report:

herbie shell --seed 2019315 +o rules:numerics
(FPCore (x y z t)
  :name "Data.Metrics.Snapshot:quantile from metrics-0.3.0.2"
  :precision binary64

  :herbie-target
  (+ x (+ (* t (- y z)) (* (- x) (- y z))))

  (+ x (* (- y z) (- t x))))

Backtrace

match: no matching clause for 'binary64LC
match:error/opt/racket-7.2/collects/racket/match/runtime.rkt240
for-loop/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt2463
make-multiplication-subnode/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt2440
make-multiplication-node/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt2340
simplify/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt160
hash-ref!/opt/racket-7.2/collects/racket/private/more-scheme.rkt3762
loop/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt2682
taylor/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt1700
taylor/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt1700
taylor/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt1700
hash-ref!/opt/racket-7.2/collects/racket/private/more-scheme.rkt3762
(unnamed)/opt/racket-7.2/collects/racket/contract/private/arrow-higher-order.rkt36033
(unnamed)/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt6815
hash-ref!/opt/racket-7.2/collects/racket/private/more-scheme.rkt3762
(unnamed)/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt6815
hash-ref!/opt/racket-7.2/collects/racket/private/more-scheme.rkt3762
(unnamed)/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt6815
hash-ref!/opt/racket-7.2/collects/racket/private/more-scheme.rkt3762
loop/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt874
approximate9/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt120
(unnamed)/opt/racket-7.2/collects/racket/contract/private/arrow-higher-order.rkt36033
location-do/data/pavpan/nightlies/herbie/fix-interface-bugs/src/programs.rkt640
location-do/data/pavpan/nightlies/herbie/fix-interface-bugs/src/programs.rkt640
(unnamed)/opt/racket-7.2/collects/racket/contract/private/arrow-higher-order.rkt36033
for-loop/data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt1516
taylor-alt/data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt1450
for-loop/data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt1667
gen-series!/data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt1590
run-iter!/data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt3260
for-loop/data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt3644
run-improve47/data/pavpan/nightlies/herbie/fix-interface-bugs/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