| int2bits(i) = bits0 + bits, # bits = 8 ⊦ bitsand(bits, int2bits(j)) = [], lastn(8, fillsgn(8, bitsand(bits0 + bits, int2bits(j)))) = lastn(8, fillsgn(8, bitsand(bits, int2bits(j)))) |
n ≤ # bits ⊦ ∃ bits0, bits1. bits = bits0 + bits1 ∧ # bits1 = n
int2bits(i) = bits0 + bits, # bits = 8 ⊦ 8 ≤ # int2bits(j), bitsand(bits, int2bits(j)) = [], lastn(8, fillsgn(8, bitsand(bits0 + bits, int2bits(j)))) = lastn(8, fillsgn(8, bitsand(bits, int2bits(j))))
∃ bits0, bits1. int2bits(j) = bits0 + bits1 ∧ # bits1 = 8, int2bits(i) = bits0 + bits, # bits = 8 ⊦ bitsand(bits, int2bits(j)) = [], lastn(8, fillsgn(8, bitsand(bits0 + bits, int2bits(j)))) = lastn(8, fillsgn(8, bitsand(bits, int2bits(j))))
Used terms: 8, int2bits(j)