| #(by ' + bytes0) ≤ n - 1 ∧ bytes2int(by ' + bytes0) < 0, b2i(by) < 0, 1 + # bytes0 < n, bytes2int(by ' + bytes0) < 0 ⊦ mklist(i2b(~1), n - 1 + # bytes0) + by ' + bytes0 = i2b(~1) ' + mklist(i2b(~1), n - 1 - #(by ' + bytes0)) + by ' + bytes0 |
b2i(by) < 0, 1 + # bytes0 < n, bytes2int(by ' + bytes0) < 0, # bytes0 + 1 < n ⊦ mklist(i2b(~1), n - 1 + # bytes0) = i2b(~1) ' + mklist(i2b(~1), n - 1 - 1 + # bytes0)
Used simplifier rules: ⊦ m + n = n + m;% ⊦ (m + n0) + n1 = m + n0 + n1;%n0 ≤ n ⊦ m < n - n0 ↔ m + n0 < n;% ⊦ ¬ m ≤ n ↔ n < m;% ⊦ m < 1 ↔ m = 0;% ⊦ m < n → n ≠ 0;% ⊦ m + 1 ≤ n ↔ m < n;% ⊦ bytes + bytes0 = bytes1 + bytes0 ↔ bytes = bytes1;% ⊦ (bytes + bytes0) + bytes1 = bytes + bytes0 + bytes1;% ⊦ # by ' = 0 +1;% ⊦ #(bytes + bytes0) = # bytes + # bytes0;