| (i - 1) / 2 < 0 ∧ 0 < j - 1 ∧ j - 1 < 32 → (i - 1) / 2 i>> (j - 1) = ((i - 1) / 2 - (2 ^ (j - 1) - 1)) / 2 ^ (j - 1), 0 < j, i < 0, j < 32, ∀ i, j0. i→n(j0) < i→n(j) → true → i < 0 ∧ 0 < j0 ∧ j0 < 32 → i i>> j0 = (i - (2 ^ j0 - 1)) / 2 ^ j0 ⊦ (i - 1) / 2 i>> (j - 1) = (i + 1 - 2 ^ j) / 2 ^ j |
(i - 1) / 2 i>> (j - 1) = ((i - 1) / 2 + 1 - 2 ^ (j - 1)) / 2 ^ (j - 1), 0 < j, i < 0, j < 32, ∀ i, j0. i→n(j0) < i→n(j) → true → i < 0 ∧ 0 < j0 ∧ j0 < 32 → i i>> j0 = (i - (2 ^ j0 - 1)) / 2 ^ j0 ⊦ (i - 1) / 2 i>> (j - 1) = (i + 1 - 2 ^ j) / 2 ^ j, j = 1
Used simplifier rules: intshiftrsign-zero: ⊦ i i>> 0 = i;%i < 0 ⊦ (* i) + j = j - ~ i;% ⊦ i - (j - j0) = i + j0 - j;%j0 ≠ 0, j < j0 ⊦ i < (* j) → i < (* j0);% ⊦ i - j < i0 ↔ i < j + i0;% ⊦ 0 < i → (i ≤ 1 ↔ i = 1);% ⊦ i < j - i0 ↔ i + i0 < j;% ⊦ i < j → (¬ ¬ j ≤ i ↔ false);% ⊦ ¬ i < j ↔ j ≤ i;% ⊦ i ≤ ~1 ↔ i < 0;% ⊦ i + (* j) ≤ (* j0) ↔ i ≤ j0 - j;% ⊦ i + j = j + i;% ⊦ i + j + i0 = (i + j) + i0;% ⊦ (* i) + i0 - (* j) = (i - j) + i0;% ⊦ i + (j - i0) = i + j - i0;%0 < j ⊦ i / (* j) < 0 ↔ i + j ≤ 0;