| ¬(i < ~1 ∧ 0 ≤ n→i(m) - 2), i < ~1, i < 0 ⊦ m ≤ # int2bits(i) ↔ ¬ 0 ≤ i + 2 ^ (n→i(m) - 2) |
0 ≤ i + 2 ^ (n→i(m) - 2), m ≤ # int2bits(i), m < 2, i < 0, i < ~1 ⊦
Used simplifier rules: int2bits-not-empty: ⊦ int2bits(j) ≠ [];%zero-gels-01: ⊦ i < 0 ∧ 0 ≤ j → i < j; from specification int-abs%forward-lsle: ⊦ i < j ∧ j ≤ j0 → i < j0; (forward) from specification int-abs%forward-le-01: ⊦ i ≤ j ∧ 0 ≤ i → 0 ≤ j; (forward) from specification int-abs%c: ⊦ m + n = n + m; from specification nat-basic2%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic2%l: ⊦ # bits = 0 ↔ bits = []; from specification list-data[bitlista]%one-01: ⊦ m < 1 ↔ m = 0; from specification nat-basic1%l-num-05: n < n0 ⊦ m + (* n) < (* n0) ↔ m < n0 - n; from specification nat%succ: ⊦ m +1 = m + 1; from specification nat-basic2%f: ⊦ m < n → n ≠ 0; from specification nat-basic1%trans-1: ⊦ n < n0 ∧ n0 < n1 → n < n1; (forward) from specification nat-basic1%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic1%lf: ⊦ m < n ∧ n < n0 → m +1 < n0; (forward) from specification nat-basic1%lels-01: ⊦ ¬ m ≤ n ↔ n < m; from specification nat%num-n2i-ls-06: 0 ≤ i ⊦ (* i) ≤ n→i(n) ↔ i→n(i) ≤ n; from specification intnat%add-c: ⊦ i + j = j + i; from specification int-basic2%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%sub-le-01: ⊦ i ≤ j - i0 ↔ i + i0 ≤ j; from specification int-abs