| ∀ bits1, bits0. # bits1 < # bits → true → bits1 = [] ∨ bitsand(bits1, false ' + bits0) = false ' + bits0 ∨ false ∈ bits1 ∨ false ∈ bits0 ⊦ bitsand(bits, false ' + bits0) = false ' + bits0, bits = [], false ∈ bits0, false ∈ bits |
⊦ 1 < # bits ∧ 1 < # bits0 → bitsand(bits, bits0) = bitsand(bits.butlast, bits0.butlast) + (bits.last ∧ bits0.last)
¬(1 < # bits ∧ 1 < #(false ' + bits0)), ∀ bits1, bits0. # bits1 < # bits → true → bits1 = [] ∨ bitsand(bits1, false ' + bits0) = false ' + bits0 ∨ false ∈ bits1 ∨ false ∈ bits0 ⊦ bitsand(bits, false ' + bits0) = false ' + bits0, bits = [], false ∈ bits0, false ∈ bits
1 < # bits ∧ 1 < #(false ' + bits0), ∀ bits1, bits0. # bits1 < # bits → true → bits1 = [] ∨ bitsand(bits1, false ' + bits0) = false ' + bits0 ∨ false ∈ bits1 ∨ false ∈ bits0 ⊦ bitsand(bits.butlast, (false ' + bits0).butlast) + (bits.last ∧ (false ' + bits0).last) = false ' + bits0, bits = [], false ∈ bits0, false ∈ bits
Used terms: false ' + bits0, bits