| 0 ≤ j1 + 2 ^ i ∧ 0 < i, 0 < i, 0 ≤ i, i0 < 2 ^ i + j1, i0 < i, i0 ≤ 0, 0 < 2 ^ i + j1, i0 * 2 ^ i + j1 < 0, j1 < 0, 0 < i ⊦ cast(i, j1 * j0) = cast(i, (j1 + 2 ^ i) * j0) |
0 ≤ j1 + 2 ^ i, 0 < i, j1 < 0, i0 * 2 ^ i + j1 < 0, 0 < 2 ^ i + j1, i0 ≤ 0, i0 < i, i0 < 2 ^ i + j1, 0 ≤ i, i0 * 2 ^ i < 2 ^ i ⊦ cast(i, j1 * j0) = cast(i, (j1 + 2 ^ i) * j0)
Used simplifier rules: ⊦ i ≤ 0 ∧ 0 ≤ j → i ≤ j;% ⊦ i + j = j + i;% ⊦ i + j + i0 = (i + j) + i0;% ⊦ i + j < i + i0 ↔ j < i0;% ⊦ i < 0 ∧ 0 ≤ j → i < j;% ⊦ i ≤ j ∧ 0 ≤ i → 0 ≤ j; (forward)% ⊦ j ≤ j0 ∧ j0 ≤ j1 → j ≤ j1; (forward)% ⊦ i < j ∧ j ≤ j0 → i < j0; (forward)