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