i = 512
l = -1
if (x[511] < t) l = 1000 - 512
/* утверждение: x[l] < t && x[l + 512] >= t */
if (x[l+256] < t) l += 256
/* утверждение: x[l] < t && x[l + 256] >= t */
if (x[l+128] < t) l += 128
/*...*/
if (x[l+64] < t) l += 64
/*...*/
if (x[l+32] < t) l += 32
/*...*/
if (x[l+16] < t) l += 16
/*...*/
if (x[l+8] < t) l += 8
/*...*/
if (x[l+4] < t) l += 4
/*...*/
if (x[l+2] < t) l += 2
/* утверждение: x[l] < t && x[l + 2] >= t */
if (x[l+1] < t) l += 1
/* утверждение: x[l] < t && x[l + 1] >= t */
p = l + 1
if p > 1000 || x[p] != t
p = -1