| # x0 = # lax0, (∅)[m] = mkblock(x, lax, m2), st[m] = mkblock(x0, lax0, 0), m ∈ st, @(m, m0, 0) ∈ as, @(m, m0, 0).lnum ∈ st, @(@(m, m0, 0).pos, @(m, m0, 0).size) ∈ st[@(m, m0, 0).lnum].ladrlist, ∀ n. n < # lax0 → lax0[n].size = x0[n].flashsize ⊦ # as = 0, as = ∅, dups(lax0) |
# x0 = # lax0, (∅)[m] = mkblock(x, lax, m2), st[m] = mkblock(x0, lax0, 0), @(m, m0, 0) ∈ as, m ∈ st, @(m0, 0) ∈ lax0, ∀ n. n < # lax0 → lax0[n].size = x0[n].flashsize ⊦ # as = 0, as = ∅, dups(lax0)
Used simplifier rules: ⊦ mkblock(x, lax, m).ladrlist = lax; (s)% ⊦ @(m, m0, m1).lnum = m; (s)% ⊦ @(m, m0, m1).size = m1; (s)% ⊦ @(m, m0, m1).pos = m0; (s)