| fillsgn(4, int2bytes(i)) = by ' + by0 ' + by1 ' + by2 ', 4 < # int2bytes(i), by2 ∈ fillsgn(4, int2bytes(i)), by ∈ fillsgn(4, int2bytes(i)) ⊦ by = i2b(i >> 24) ∧ by0 = i2b(i >> 16) ∧ by1 = i2b(i >> 8) ∧ by2 = i2b(i) |
⊦ # bytes ≥ n → fillsgn(n, bytes) = bytes
# int2bytes(i) ≥ 4, int2bytes(i) = by ' + by0 ' + by1 ' + by2 ', 4 < # int2bytes(i), by2 ∈ int2bytes(i), by ∈ int2bytes(i) ⊦ by = i2b(i >> 24) ∧ by0 = i2b(i >> 16) ∧ by1 = i2b(i >> 8) ∧ by2 = i2b(i)
Used simplifier rules: ge: ⊦ n ≥ m ↔ m ≤ n; from specification nat%lels-01: ⊦ ¬ m ≤ n ↔ n < m; from specification nat%ls-02: ⊦ m < n → ¬ n < m; from specification nat-basic1 Used terms: int2bytes(i), 4