\[\frac{b \cdot c - a \cdot d}{c \cdot c + d \cdot d}\]
\frac{b \cdot c - a \cdot d}{c \cdot c + d \cdot d}
double f(double a, double b, double c, double d) {
        double r11820 = b;
        double r11821 = c;
        double r11822 = r11820 * r11821;
        double r11823 = a;
        double r11824 = d;
        double r11825 = r11823 * r11824;
        double r11826 = r11822 - r11825;
        double r11827 = r11821 * r11821;
        double r11828 = r11824 * r11824;
        double r11829 = r11827 + r11828;
        double r11830 = r11826 / r11829;
        return r11830;
}

Reproduce

Please include this information when filing a bug report:

herbie shell --seed 2019315 
(FPCore (a b c d)
  :name "Complex division, imag part"
  :precision binary64

  :herbie-target
  (if (< (fabs d) (fabs c)) (/ (- b (* a (/ d c))) (+ c (* d (/ d c)))) (/ (+ (- a) (* b (/ c d))) (+ d (* c (/ c d)))))

  (/ (- (* b c) (* a d)) (+ (* c c) (* d d))))

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
map/opt/racket-7.2/collects/racket/private/map.rkt3513
f45/opt/racket-7.2/collects/racket/match/compiler.rkt50740
map/opt/racket-7.2/collects/racket/private/map.rkt3513
f45/opt/racket-7.2/collects/racket/match/compiler.rkt50740
simplify/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt160
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
(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