\[0.0 \lt x \lt 1 \land y \lt 1\]
\[\frac{\left(x - y\right) \cdot \left(x + y\right)}{x \cdot x + y \cdot y}\]
\frac{\left(x - y\right) \cdot \left(x + y\right)}{x \cdot x + y \cdot y}
double f(double x, double y) {
        double r105959 = x;
        double r105960 = y;
        double r105961 = r105959 - r105960;
        double r105962 = r105959 + r105960;
        double r105963 = r105961 * r105962;
        double r105964 = r105959 * r105959;
        double r105965 = r105960 * r105960;
        double r105966 = r105964 + r105965;
        double r105967 = r105963 / r105966;
        return r105967;
}

Reproduce

Please include this information when filing a bug report:

herbie shell --seed 2019323 +o rules:numerics
(FPCore (x y)
  :name "Kahan p9 Example"
  :precision binary64
  :pre (and (< 0.0 x 1) (< y 1))

  :herbie-target
  (if (< 0.5 (fabs (/ x y)) 2) (/ (* (- x y) (+ x y)) (+ (* x x) (* y y))) (- 1 (/ 2 (+ 1 (* (/ x y) (/ x y))))))

  (/ (* (- x y) (+ x y)) (+ (* x x) (* y y))))

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