| i < 0, i < ~1, # int2bits(i) ≤ n, 2 ^ (n→i(n) - 1) ≤ >>>(n - 1, (i - 1) / 2, j - 1), 1 < j, 0 < j, ∀ n, i, j0. i→n(j0) < i→n(j) → true → i < 0 ∧ # int2bits(i) ≤ n ∧ 0 < j0 ∧ n ≠ 0 → >>>(n, i, j0) < 2 ^ (n→i(n) - 1) ⊦ n = 0 |
(i - 1) / 2 < 0 ∧ # int2bits((i - 1) / 2) ≤ n - 1 ∧ 0 < j - 1 ∧ n - 1 ≠ 0 → >>>(n - 1, (i - 1) / 2, j - 1) < 2 ^ (n→i(n - 1) - 1), i < 0, i < ~1, # int2bits(i) ≤ n, 2 ^ (n→i(n) - 1) ≤ >>>(n - 1, (i - 1) / 2, j - 1), 1 < j, 0 < j, ∀ n, i, j0. i→n(j0) < i→n(j) → true → i < 0 ∧ # int2bits(i) ≤ n ∧ 0 < j0 ∧ n ≠ 0 → >>>(n, i, j0) < 2 ^ (n→i(n) - 1) ⊦ n = 0
Used simplifier rules: ⊦ 1 < i → i→n(i - 1) = i→n(i) -1;% ⊦ n -1 = n - 1;% ⊦ i < j → (¬ ¬ j ≤ i ↔ false);% ⊦ ¬ i < j ↔ j ≤ i;% ⊦ 1 ≤ i ↔ 0 < i;%0 ≤ i ⊦ (* m) ≤ i→n(i) ↔ n→i(m) ≤ i;% ⊦ ¬ i ≤ j ↔ j < i;% ⊦ i < j → ¬ j < i;%n0 ≤ n ⊦ n - n0 < m ↔ n < m + n0;% ⊦ m < n + 1 ↔ ¬ n < m;% ⊦ i→n(i) < i→n(j) ↔ abs(i) < abs(j);% ⊦ 1 < i → abs(i) = i;% ⊦ ¬ i < i;% ⊦ (m + n0) + n1 = m + n0 + n1;% ⊦ m + n = n + m; Used terms: n - 1, (i - 1) / 2, j - 1