| # x = # lax, st[n] = mkblock(x, lax, m0), st[m3] = mkblock(x0, lax0, m6), inv-flashsize(x, lax), @(m3, m4, m5) ∈ st, n ∈ st ⊦ @(m3, m4, m5) = @(n, m, m2), x0[pos(@(m4, m5), lax0)] = st[@(m3, m4, m5)], m3 = n, dups(lax), @(m, m2) ∈ lax |
⊦ adr ∈ st → st[adr] = st[adr.lnum].list[pos(@(adr.pos, adr.size), st[adr.lnum].ladrlist)]
Used simplifier rules: ⊦ @(m, m0, m1).lnum = m; (s)% ⊦ @(m, m0, m1).pos = m0; (s)% ⊦ @(m, m0, m1).size = m1; (s)% ⊦ mkblock(x, lax, m).list = x; (s)% ⊦ mkblock(x, lax, m).ladrlist = lax; (s) Used terms: @(m3, m4, m5), st