| # int2bits(i) < # int2bits(j), bits2int(bitsand(int2bits(i), int2bits(j))) < i0, i0 + 2 ^ n→i(# int2bits(i)) ≤ 0, i0 + 2 ^ n→i(# int2bits(j)) ≤ 0, i < 0, j < 0 ⊦ |
⊦ # bits ≤ n ∧ bits ≠ [] → ¬ 2 ^ n→i(n) + bits2int(bits) < 0
# bitsand(int2bits(i), int2bits(j)) ≤ # int2bits(j) ∧ bitsand(int2bits(i), int2bits(j)) ≠ [] → ¬ 2 ^ n→i(# int2bits(j)) + bits2int(bitsand(int2bits(i), int2bits(j))) < 0, # int2bits(i) < # int2bits(j), bits2int(bitsand(int2bits(i), int2bits(j))) < i0, i0 + 2 ^ n→i(# int2bits(i)) ≤ 0, i0 + 2 ^ n→i(# int2bits(j)) ≤ 0, i < 0, j < 0 ⊦
Used terms: bitsand(int2bits(i), int2bits(j)), # int2bits(j)