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