| 1 ≤ 8 * i0 ∧ 0 ≤ 1, # int2bits(i) / 8 = i→n(i0), i→n(8 * i0) - i→n(1) < i→n(i0) * 8, 2 ^ (n→i(n) * 8 - 1) ≤ i, i0 < n→i(n), 0 < i0, (i→n(8 * i0) - i→n(1)) + 1 < # int2bits(i), 0 < i, # int2bits(i) ≤ 1 + i→n(i0) * 8 ⊦ # int2bits(i) % 8 = 0, i = 0, i0 = 0, n = 0, n = 1 |
# int2bits(i) / 8 = i→n(i0), 1 + (i→n(8 * i0) - 1) < # int2bits(i), i0 < n→i(n), 2 ^ (n→i(n) * 8 - 1) ≤ i, i→n(8 * i0) ≤ i→n(i0) * 8, 0 < i0, # int2bits(i) ≤ 1 + i→n(i0) * 8, 0 < i ⊦ n = 1, n = 0, i0 = 0, i = 0, # int2bits(i) % 8 = 0
Used simplifier rules: ⊦ m ≤ n → (n < m ↔ false);% ⊦ m + n < m + n0 ↔ n < n0;% ⊦ m < n ∧ n ≤ n0 → m < n0; (forward)% ⊦ m + n = n + m;% ⊦ (m + n0) + n1 = m + n0 + n1;% ⊦ ¬ m < n ↔ n ≤ m;% ⊦ m < n + 1 ↔ ¬ n < m;%n0 ≤ n ⊦ n - n0 < m ↔ n < m + n0;% ⊦ i ≠ j → (i ≤ j ↔ i < j);% ⊦ 0 < i → (0 ≤ i * j ↔ 0 ≤ j);%0 ≤ i ⊦ (* m) ≤ i→n(i) ↔ n→i(m) ≤ i;% ⊦ i * j = j * i;% ⊦ i * j * j0 = (i * j) * j0;% ⊦ 0 < i → (0 < i * j ↔ 0 < j);% ⊦ 1 ≤ i ↔ 0 < i;