| n < # bytes, # bytes = m + 1, n ≤ m, true → b2i(bytes[n]) = 0 ⊦ bytes = [], m = 0, (mklist(i2b(0), m) + i2b(0) ')[n] = bytes[n] |
# bytes = m + 1, b2i(bytes[n]) = 0, n ≤ m ⊦ bytes = [], m = 0, (mklist(i2b(0), m) + i2b(0) ')[n] = bytes[n]
Used simplifier rules: ⊦ m ≤ n → (n < m ↔ false);% ⊦ m < n + 1 ↔ ¬ n < m;% ⊦ m + n = n + m;% ⊦ (m + n0) + n1 = m + n0 + n1;% ⊦ m + 1 ≠ 0;% ⊦ m < n → n ≠ 0; (forward)% ⊦ m < n ∧ n = n0 → m < n0; (forward)