| n = m + 1 ∧ n ≠ 0, # bytes < n ⊦ fillsgn(n, bytes) = (¬ 0 ≤ b2i(bytes.first) ⊃ i2b(~1);i2b(0)) ' + fillsgn(m, bytes), bytes = [] |
# bytes ≤ m ⊦ fillsgn(m + 1, bytes) = (¬ 0 ≤ b2i(bytes.first) ⊃ i2b(~1);i2b(0)) ' + fillsgn(m, bytes), bytes = []
Used simplifier rules: ⊦ ¬ m < n ↔ n ≤ m;% ⊦ m < n + 1 ↔ ¬ n < m;% ⊦ m + n = n + m;% ⊦ (m + n0) + n1 = m + n0 + n1;% ⊦ m + 1 ≠ 0;