| 0 ≤ i0 ⊦ bits2int(firstn(2, mklist(false, i→n(i0)) + false ' + false ' + true ')) = bits2int((mklist(false, i→n(i0)) + false ').first ') |
mklist(false, i→n(i0)) + false ' = boolvar + bits ∧ mklist(false, i→n(i0)) + false ' ≠ [], 0 ≤ i0 ⊦ bits2int(firstn(2, mklist(false, i→n(i0)) + false ' + false ' + true ')) = bits2int(boolvar ')
Used simplifier rules: ⊦ ¬ bits + bits0 ≠ [] ↔ bits = [] ∧ bits0 = [];% ⊦ mklist(boolvar, m) = [] ↔ m = 0;% ⊦ i→n(i) = 0 ↔ i = 0;% ⊦ boolvar ' ≠ [];% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;%bits ≠ [] ⊦ (boolvar ↔ bits.first) ∧ bits0 = bits.rest ↔ bits = boolvar + bits0; (elim) Used terms: mklist(false, i→n(i0)) + false ', boolvar, bits