| bytes = by + bytes0, fillsgn(2, int2bytes(bytes2int(bytes))) = bytes, bytes = by ', 1 ≤ # fillsgn(1, int2bytes(bytes2int(bytes))) ⊦ fillsgn(1, int2bytes(bytes2int(bytes))) = [], bytes = [] |
fillsgn(2, by ') = by ', 1 ≤ # fillsgn(1, by ') ⊦ fillsgn(1, by ') = []
Used simplifier rules: bytes2int-one: ⊦ bytes2int(by ') = b2i(by);%int2bytes-byte-01: ⊦ int2bytes(b2i(by)) = by ';% ⊦ by ∈ by0 ' ↔ by = by0;% ⊦ # bytes = 0 ↔ bytes = [];% ⊦ bytes + [] = bytes;%0 < n ⊦ (* n) ≤ m → m ≠ 0; (forward)% ⊦ by ' + bytes = bytes0 → by ∈ bytes0; (forward)% ⊦ by ' + bytes ≠ [];% ⊦ (bytes + bytes0) + bytes1 = bytes + bytes0 + bytes1;% ⊦ by ' = by0 ' + bytes ↔ by = by0 ∧ bytes = [];% ⊦ by + bytes = by ' + bytes;