| 8 < n0 * 8, ∀ n1. n1 < n0 * 8 → n1 % 8 = 0 → n1 = 0 ∨ bits2bytes(mklist(true, n1)) = mklist(i2b(~1), n1 / 8) ⊦ n0 = 0, bits2bytes(mklist(true, n0 * 8 - 8)) + i2b(bits2int(true ' + true ' + true ' + true ' + true ' + true ' + true ' + true ')) ' = mklist(i2b(~1), n0) |
⊦ ¬ false ∈ bits ∧ bits ≠ [] → bits2int(bits) = ~1
¬ false ∈ true ' + true ' + true ' + true ' + true ' + true ' + true ' + true ' ∧ true ' + true ' + true ' + true ' + true ' + true ' + true ' + true ' ≠ [], 8 < n0 * 8, ∀ n1. n1 < n0 * 8 → n1 % 8 = 0 → n1 = 0 ∨ bits2bytes(mklist(true, n1)) = mklist(i2b(~1), n1 / 8) ⊦ n0 = 0, bits2bytes(mklist(true, n0 * 8 - 8)) + i2b(~1) ' = mklist(i2b(~1), n0)
Used simplifier rules: ⊦ boolvar ∈ bits + bits0 ↔ ¬ ¬(boolvar ∈ bits ∨ boolvar ∈ bits0);% ⊦ boolvar ∈ boolvar0 ' ↔ boolvar ↔ boolvar0;% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;% ⊦ ¬ bits + bits0 ≠ [] ↔ bits = [] ∧ bits0 = [];% ⊦ boolvar ' ≠ []; Used terms: true ' + true ' + true ' + true ' + true ' + true ' + true ' + true '