\[\frac{x.re \cdot y.re + x.im \cdot y.im}{y.re \cdot y.re + y.im \cdot y.im}\]
\frac{x.re \cdot y.re + x.im \cdot y.im}{y.re \cdot y.re + y.im \cdot y.im}
double f(double x_re, double x_im, double y_re, double y_im) {
        double r41219 = x_re;
        double r41220 = y_re;
        double r41221 = r41219 * r41220;
        double r41222 = x_im;
        double r41223 = y_im;
        double r41224 = r41222 * r41223;
        double r41225 = r41221 + r41224;
        double r41226 = r41220 * r41220;
        double r41227 = r41223 * r41223;
        double r41228 = r41226 + r41227;
        double r41229 = r41225 / r41228;
        return r41229;
}

Reproduce

Please include this information when filing a bug report:

herbie shell --seed 2019323 +o rules:numerics
(FPCore (x.re x.im y.re y.im)
  :name "_divideComplex, real part"
  :precision binary64
  (/ (+ (* x.re y.re) (* x.im y.im)) (+ (* y.re y.re) (* y.im y.im))))

Backtrace

dict-ref: no value for key: 'branch41218 in: '((x.re . binary64) (x.im . binary64) (y.re . binary64) (y.im . binary64))LC
for-loop/data/pavpan/nightlies/herbie/fix-interface-bugs/src/points.rkt1064
make-sampler/data/pavpan/nightlies/herbie/fix-interface-bugs/src/points.rkt990
prepare-points-intervals/data/pavpan/nightlies/herbie/fix-interface-bugs/src/points.rkt1210
for-loop/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/regimes.rkt2339
sindices->spoints/data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/regimes.rkt1940
f33/opt/racket-7.2/collects/racket/match/compiler.rkt50740
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