| ¬(# bytes < n + 1 ∧ bytes2int(bytes) < 0), # bytes ≤ n ⊦ fillsgn(n, bytes.butlast) = fillsgn(n + 1, bytes).butlast, # bytes = 1, bytes = [] |
# bytes ≤ n, 0 ≤ bytes2int(bytes) ⊦ fillsgn(n, bytes.butlast) = fillsgn(n + 1, bytes).butlast, # bytes = 1, bytes = []
Used simplifier rules: ⊦ i ≤ j ∧ 0 ≤ i → 0 ≤ j; (forward)% ⊦ ¬ i < j ↔ j ≤ i;% ⊦ m + n = n + m;% ⊦ (m + n0) + n1 = m + n0 + n1;% ⊦ m ≤ n → (n < m ↔ false);% ⊦ m < n + 1 ↔ ¬ n < m;