| ¬(0 < i ∧ abs(j) < 2 ^ (i - 1)), j < 2 ^ (i - 1), 0 < i, 0 ≤ 2 ^ (i - 1) + j ⊦ cast(i, j) = j |
0 = 2 ^ (i - 1) + j, j < 0, j < 2 ^ (i - 1), 0 < i ⊦ cast(i, j) = j
Used simplifier rules: ⊦ j ≤ i ∧ i ≤ 0 → j ≤ 0; (forward)% ⊦ i ≤ j → (j ≤ i ↔ i = j);% ⊦ i + j = j + i;% ⊦ i ≤ ~ j ↔ i + j ≤ 0;% ⊦ i < 0 → abs(i) = ~ i;% ⊦ i < abs(i) ↔ i < 0;% ⊦ i < j ∧ j ≤ j0 → i < j0; (forward)% ⊦ i < j → (¬ ¬ j ≤ i ↔ false);% ⊦ ¬ i < j ↔ j ≤ i;