| # gndx = # lax, gndx = gnd + gndx0, abs-nodes(buf, m, gndx, lax, weak), ∀ buf0, m, gndx, lax, weak. # buf0 < # buf → abs-nodes(buf0, m, gndx, lax, weak) → inv-flashsize(gndx, lax) ⊦ inv-flashsize(gndx, lax) |
# gndx0 + 1 = # lax, abs-nodes(buf, m, gnd ' + gndx0, lax, weak), ∀ buf0, m, gndx, lax, weak. # buf0 < # buf → abs-nodes(buf0, m, gndx, lax, weak) → inv-flashsize(gndx, lax) ⊦ inv-flashsize(gnd ' + gndx0, lax)
Used simplifier rules: abs-nodes-elems-adr-length-h: ⊦ abs-nodes(buf, m, gndx, lax, weak) → # gndx = # lax; (forward) from specification abs-list[encoding-group-node]%a: ⊦ (gndx + gndx0) + gndx1 = gndx + gndx0 + gndx1; from specification list[group-store]% ⊦ m +1 = m + 1; (s)% ⊦ #(gnd ' + gndx) = (# gndx)+1; (s)% ⊦ gnd + gndx = gnd ' + gndx; (s)