(define (binary-search v x)
(define (get i) (vector-ref v i))
(let loop ([low 0]
[high (vector-length v)])
(let ([mid (quotient (+ low high) 2)])
(cond
[(>= low high) #f]
[(= (get mid) x) mid]
[(< (get mid) x) (loop (+ mid 1) high)]
[else (loop low mid)]))))