| fillsgn(2, i2b(s2i(sho)) ') = by ' + by0 ' ⊦ by0 = i2b(s2i(sho)) ∧ by = i2b(b2i(i2b(s2i(sho))) >> 8) |
⊦ # bytes < n ∧ bytes2int(bytes) < 0 → fillsgn(n, bytes) = mklist(i2b(~1), n - # bytes) + bytes
¬(# i2b(s2i(sho)) ' < 2 ∧ bytes2int(i2b(s2i(sho)) ') < 0), fillsgn(2, i2b(s2i(sho)) ') = by ' + by0 ' ⊦ by0 = i2b(s2i(sho)) ∧ by = i2b(b2i(i2b(s2i(sho))) >> 8)
Used simplifier rules: bytes2int-one: ⊦ bytes2int(by ') = b2i(by);% ⊦ # by ' = 0 +1;% ⊦ mklist(by, 1) = by ';% ⊦ bytes + by ' = bytes0 + by0 ' ↔ bytes = bytes0 ∧ by = by0;% ⊦ by ' = by0 ' ↔ by = by0;% ⊦ (bytes + bytes0) + bytes1 = bytes + bytes0 + bytes1;% ⊦ b2i(by) < 0 → b2i(by) >> 8 = ~1; Used terms: i2b(s2i(sho)) ', 2