| # x = # lax, (@(m, a.flashsize) ' + lax)[n] = @(m0, m1), n = m2 + 1, n ≤ # lax, ∀ n. n < # lax → lax[n].size = x[n].flashsize ⊦ m1 = x[m2].flashsize, n = 0 |
# x = # lax, lax[m2] = @(m0, m1), m2 < # lax, ∀ n. n < # lax → lax[n].size = x[n].flashsize ⊦ lax = [], m1 = x[m2].flashsize
Used simplifier rules: ⊦ # lax = 0 ↔ lax = []; (s)%lf-01: ⊦ m < n ∧ n = n0 → m < n0; (forward) from specification nat-basic%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic% ⊦ m + 1 ≤ n ↔ m < n; (s)% ⊦ m + 1 ≠ 0; (s)%a: ⊦ (lax + lax0) + lax1 = lax + lax0 + lax1; from specification list[laddress-list]%c: ⊦ m + n = n + m; from specification nat-basic%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic% ⊦ (ladr ' + lax)[n + 1] = lax[n]; (s)