Linear.Projection:infinitePerspective from linear-1.19.1.3, A

Specification

?
\[\begin{array}{l} \\ \frac{x \cdot 2}{y \cdot z - t \cdot z} \end{array} \]
(FPCore (x y z t) :precision binary64 (/ (* x 2.0) (- (* y z) (* t z))))
double code(double x, double y, double z, double t) {
	return (x * 2.0) / ((y * z) - (t * z));
}
real(8) function code(x, y, z, t)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    real(8), intent (in) :: z
    real(8), intent (in) :: t
    code = (x * 2.0d0) / ((y * z) - (t * z))
end function
public static double code(double x, double y, double z, double t) {
	return (x * 2.0) / ((y * z) - (t * z));
}
def code(x, y, z, t):
	return (x * 2.0) / ((y * z) - (t * z))
function code(x, y, z, t)
	return Float64(Float64(x * 2.0) / Float64(Float64(y * z) - Float64(t * z)))
end
function tmp = code(x, y, z, t)
	tmp = (x * 2.0) / ((y * z) - (t * z));
end
code[x_, y_, z_, t_] := N[(N[(x * 2.0), $MachinePrecision] / N[(N[(y * z), $MachinePrecision] - N[(t * z), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\begin{array}{l}

\\
\frac{x \cdot 2}{y \cdot z - t \cdot z}
\end{array}

Reproduce

?
herbie shell --seed 2024246 
(FPCore (x y z t)
  :name "Linear.Projection:infinitePerspective from linear-1.19.1.3, A"
  :precision binary64

  :alt
  (! :herbie-platform default (if (< (/ (* x 2) (- (* y z) (* t z))) -2559141628295061/10000000000000000000000000000) (* (/ x (* (- y t) z)) 2) (if (< (/ (* x 2) (- (* y z) (* t z))) 522513913665063/50000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000) (/ (* (/ x z) 2) (- y t)) (* (/ x (* (- y t) z)) 2))))

  (/ (* x 2.0) (- (* y z) (* t z))))

Please file a bug report with this information.

Backtrace

map: contract violation expected: list? given: '((/.f64 (*.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 y z) (*.f64 t z))) . #hasheq((errs . (1 1 1 2 1 1 1 1635917158660154462 1 1 1 525090656651263828 1 1 1 1 2 2981223065948797919 1 1 1 1 1 1 1 2 1 1 1 1 2478272651097942356 1 1 1 2 1 2 76211059041168...LC
gen-map/usr/local/racket/collects/racket/private/map.rkt2572
actual-errors/home/nightlies/herbie/zane-concrete-values/src/core/explain.rkt350
generate-timelines/home/nightlies/herbie/zane-concrete-values/src/core/explain.rkt4930
explain!/home/nightlies/herbie/zane-concrete-values/src/core/mainloop.rkt3220
run-improve!/home/nightlies/herbie/zane-concrete-values/src/core/mainloop.rkt440
get-alternatives/report/home/nightlies/herbie/zane-concrete-values/src/api/sandbox.rkt1860
(unnamed)/home/nightlies/herbie/zane-concrete-values/src/api/sandbox.rkt2826
(unnamed)/usr/local/racket/share/pkgs/profile-lib/main.rkt4010
profile-thunk/usr/local/racket/share/pkgs/profile-lib/main.rkt90
(unnamed)/usr/local/racket/collects/racket/engine.rkt4224