| # mklist(¬ 0 ≤ i, i→n(band(j, 31))) ≤ # int2bits(i), i→n(band(j, 31)) < # int2bits(i) ⊦ bits2int(mklist(¬ 0 ≤ i, i→n(band(j, 31))) + sublist(0, # int2bits(i) - # mklist(¬ 0 ≤ i, i→n(band(j, 31))), int2bits(i))) = bits2int(sublist(0, # int2bits(i) - i→n(band(j, 31)), int2bits(i))) |
i→n(band(j, 31)) < # int2bits(i) ⊦ bits2int(mklist(¬ 0 ≤ i, i→n(band(j, 31))) + sublist(0, # int2bits(i) - i→n(band(j, 31)), int2bits(i))) = bits2int(sublist(0, # int2bits(i) - i→n(band(j, 31)), int2bits(i)))
Used simplifier rules: ⊦ int2bits(j) ≠ [];% ⊦ # bits = 0 ↔ bits = [];% ⊦ m < n → n ≠ 0; (forward)% ⊦ m < n → m ≤ n;% ⊦ ¬ i ≤ j ↔ j < i;% ⊦ # mklist(boolvar, n) = n;