| ¬ # bytes < n + 1 ⊦ fix(n, bytes.butlast) = fix(n + 1, bytes).butlast, n = 0, # bytes = 1, bytes = [] |
n < # bytes ⊦ bytes = [], # bytes = 1, n = 0, fix(n, bytes.butlast) = fix(n + 1, bytes).butlast
Used simplifier rules: ⊦ # bytes = 0 ↔ bytes = [];% ⊦ m < n → n ≠ 0; (forward)% ⊦ m + n = n + m;% ⊦ (m + n0) + n1 = m + n0 + n1;% ⊦ m < n + 1 ↔ ¬ n < m;