| 2 ≤ n→i(# int2bits(j)) ∧ 0 ≤ 2, # int2bits(j) ≤ (i→n(n→i(# int2bits(j))) - i→n(2)) + 1, 0 < j, 2 < # int2bits(j) ⊦ j = 0, # int2bits(j) = 3, # int2bits(j) = 2 |
# int2bits(j) ≤ (# int2bits(j) - 2) + 1, 2 < # int2bits(j), 0 < j ⊦ # int2bits(j) = 2, # int2bits(j) = 3, j = 0, # int2bits(j) - 2 = 1
Used simplifier rules: c: ⊦ m + n = n + m; from specification nat-basic2%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic2%zero-01: ⊦ n < m → m - n ≠ 0; from specification nat%one: ⊦ 1 < m ↔ ¬(m = 0 ∨ m = 1); from specification nat-basic1%l-num-04: n0 < n ⊦ (* n) < m0 + (* n0) ↔ n - n0 < m0; from specification nat%fle: ⊦ m < n ∧ n ≤ n0 → m < n0; (forward) from specification nat%n2n: ⊦ i→n(n→i(n)) = n; from specification intnat%lels-02: ⊦ m ≠ n → (m ≤ n ↔ m < n); from specification nat%num-n2i-ls-06: 0 ≤ i ⊦ (* i) ≤ n→i(n) ↔ i→n(i) ≤ n; from specification intnat