| j ≤ n→i(n) ∧ 0 ≤ j, 1 ≤ n, 2 ^ (n→i(n) - j) ≤ 2 ^ n→i(n) / 2 ^ j - 1, j ≤ n→i(n), 0 < j, ∀ n, i, j0. i→n(j0) < i→n(j) → 0 < j0 ∧ i < 0 ∧ 2 ^ (n→i(n) - j0) ≤ >>>(n, i, j0) ∧ j0 ≤ n→i(n) ∧ # int2bits(i) ≤ n → n = 0 ⊦ j = 0, n = 0 |
j ≤ n→i(n), 0 < j, 1 ≤ n, 2 ^ (n→i(n) - j) < 2 ^ n→i(n) / 2 ^ j, ∀ n, i, j0. i→n(j0) < i→n(j) → 0 < j0 ∧ i < 0 ∧ 2 ^ (n→i(n) - j0) ≤ >>>(n, i, j0) ∧ j0 ≤ n→i(n) ∧ # int2bits(i) ≤ n → n = 0 ⊦ j = 0, n = 0
Used simplifier rules: ⊦ i + j = j + i;% ⊦ i + j + i0 = (i + j) + i0;% ⊦ i + 1 ≤ j ↔ i < j;% ⊦ i ≤ j - i0 ↔ i + i0 ≤ j;% ⊦ i ≠ j → (i ≤ j ↔ i < j);