\[\frac{a \cdot c + b \cdot d}{c \cdot c + d \cdot d}\]
\frac{a \cdot c + b \cdot d}{c \cdot c + d \cdot d}
double f(double a, double b, double c, double d) {
        double r8717 = a;
        double r8718 = c;
        double r8719 = r8717 * r8718;
        double r8720 = b;
        double r8721 = d;
        double r8722 = r8720 * r8721;
        double r8723 = r8719 + r8722;
        double r8724 = r8718 * r8718;
        double r8725 = r8721 * r8721;
        double r8726 = r8724 + r8725;
        double r8727 = r8723 / r8726;
        return r8727;
}

Reproduce

Please include this information when filing a bug report:

herbie shell --seed 2019191 +o rules:numerics
(FPCore (a b c d)
  :name "Complex division, real part"

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

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

Backtrace

get-representation: Unknown representation #fLC
loop/data/pavpan/nightlies/herbie/interface2/src/points.rkt1224
prepare-points/data/pavpan/nightlies/herbie/interface2/src/points.rkt1460
setup-prog!34/data/pavpan/nightlies/herbie/interface2/src/mainloop.rkt670
run-improve43/data/pavpan/nightlies/herbie/interface2/src/mainloop.rkt3390
(unnamed)/opt/racket-7.0/collects/racket/private/more-scheme.rkt26128
run/opt/racket-7.0/share/pkgs/profile-lib/main.rkt392
profile-thunk16/opt/racket-7.0/share/pkgs/profile-lib/main.rkt90
(unnamed)/opt/racket-7.0/collects/racket/private/more-scheme.rkt26128