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