\[\frac{2 + \left(\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \left(\cos x - \cos y\right)}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{3 - \sqrt{5}}{2} \cdot \cos y\right)}\]
\frac{2 + \left(\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \left(\cos x - \cos y\right)}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{3 - \sqrt{5}}{2} \cdot \cos y\right)}
double f(double x, double y) {
        double r9012 = 2.0;
        double r9013 = sqrt(r9012);
        double r9014 = x;
        double r9015 = sin(r9014);
        double r9016 = y;
        double r9017 = sin(r9016);
        double r9018 = 16.0;
        double r9019 = r9017 / r9018;
        double r9020 = r9015 - r9019;
        double r9021 = r9013 * r9020;
        double r9022 = r9015 / r9018;
        double r9023 = r9017 - r9022;
        double r9024 = r9021 * r9023;
        double r9025 = cos(r9014);
        double r9026 = cos(r9016);
        double r9027 = r9025 - r9026;
        double r9028 = r9024 * r9027;
        double r9029 = r9012 + r9028;
        double r9030 = 3.0;
        double r9031 = 1.0;
        double r9032 = 5.0;
        double r9033 = sqrt(r9032);
        double r9034 = r9033 - r9031;
        double r9035 = r9034 / r9012;
        double r9036 = r9035 * r9025;
        double r9037 = r9031 + r9036;
        double r9038 = r9030 - r9033;
        double r9039 = r9038 / r9012;
        double r9040 = r9039 * r9026;
        double r9041 = r9037 + r9040;
        double r9042 = r9030 * r9041;
        double r9043 = r9029 / r9042;
        return r9043;
}

Reproduce

Please include this information when filing a bug report:

herbie shell --seed 2019173 +o rules:numerics
(FPCore (x y)
  :name "Diagrams.TwoD.Path.Metafont.Internal:hobbyF from diagrams-contrib-1.3.0.5"
  (/ (+ 2.0 (* (* (* (sqrt 2.0) (- (sin x) (/ (sin y) 16.0))) (- (sin y) (/ (sin x) 16.0))) (- (cos x) (cos y)))) (* 3.0 (+ (+ 1.0 (* (/ (- (sqrt 5.0) 1.0) 2.0) (cos x))) (* (/ (- 3.0 (sqrt 5.0)) 2.0) (cos y))))))

Backtrace

atab-pick-alt: contract violation expected: alt? given: '(#<alt (λ (x y) (/ (/ (fma (* (- (cos x) (cos y)) (* (- (sin y) (/ (sin x) 16.0)) (sqrt 2.0))) (- (sin x) (/ (sin y) 16.0)) 2.0) 3.0) (fma (cos x) (/ (- (sqrt 5.0) 1.0) 2.0) (fma (/ (cos y) 2.0) (- 3.0 (sqrt 5.0)) 1.0))))>) in: the range of the #:picking-func argument of (-> alt-table? #:only-fresh boolean? #:picking-func (-> (listof alt?) alt?) (values alt? alt-table?)) contract from: /data/pavpan/nightlies/herbie/no-costs-2/src/core/alt-table.rkt blaming: /data/pavpan/nightlies/herbie/no-costs-2/src/mainloop.rkt (assuming the contract is correct) at: /data/pavpan/nightlies/herbie/no-costs-2/src/core/alt-table.rkt:13.3LC
raise-blame-error16/opt/racket-7.0/collects/racket/contract/private/blame.rkt3470
(unnamed)/data/pavpan/nightlies/herbie/no-costs-2/src/core/alt-table.rkt590
(unnamed)/opt/racket-7.0/collects/racket/contract/private/arrow-val-first.rkt38818
choose-best-alt!/data/pavpan/nightlies/herbie/no-costs-2/src/mainloop.rkt1100
run-iter!/data/pavpan/nightlies/herbie/no-costs-2/src/mainloop.rkt3190
for-loop/data/pavpan/nightlies/herbie/no-costs-2/src/mainloop.rkt3534
run-improve43/data/pavpan/nightlies/herbie/no-costs-2/src/mainloop.rkt3380
(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