| i % 2 = 1, ~1 = (i1 + 1) % 2, i1 < 0, 0 < i, 1 < i, 0 ≤ i, i < bits2int(bitsand(int2bits(i / 2), int2bits(i1 / 2)) + true '), i1 + 1 < bits2int(bitsand(int2bits(i / 2), int2bits(i1 / 2)) + true '), i1 < ~1, 1 < bits2int(bitsand(int2bits(i / 2), int2bits(i1 / 2)) + true '), 0 < bits2int(bitsand(int2bits(i / 2), int2bits(i1 / 2)) + true '), bitsand(int2bits(i / 2), int2bits(i1 / 2)).first, ∀ i0, j. i→n(i0) < i→n(i) → i0 < bits2int(bitsand(int2bits(i0), int2bits(j))) ∧ 0 ≤ i0 → false ⊦ ~2 = i1 |
⊦ bits ≠ [] ∧ bits0 ≠ [] → (bitsand(bits, bits0).first ↔ bits.first ∧ bits0.first)
Used simplifier rules: ⊦ int2bits(j) ≠ [];% ⊦ int2bits(j).first ↔ j < 0;% ⊦ 0 < j ∧ 0 ≤ i → (i / (* j) < j0 ↔ i < j * j0);% ⊦ i < j → ¬ j < i; Used terms: int2bits(i1 / 2), int2bits(i / 2)