| ubi_init_vols_sizes#(RECS, WLARRAY, APEBS; VTBL, VOLS) {VOLS := ∅; while VTBL ≠ ∅ do {/* (prepost-init-vols-sizes : invariant to-vtbl(VOLS) ⊥ VTBL ∧ is-encoded(to-vtbl(VOLS) ∪ VTBL, APEBS[RECS[VTBL_VOLID × VTBL_LNUM].pnum].data) ∧ valid-vtbl-weak(APEBS, RECS[VTBL_VOLID × VTBL_LNUM].pnum) ∧ valid-recs(APEBS, WLARRAY, RECS) ∧ RECS[VTBL_VOLID × VTBL_LNUM].pnum < # APEBS ∧ VTBL_VOLID × VTBL_LNUM ∈ RECS ∧ unmapped-vols(VOLS) ∧ # APEBS = # WLARRAY wfbound # VTBL) */; choose VOLID with VOLID ∈ VTBL in {VOLS[VOLID] := mkebatbl(VTBL[VOLID]); VOLS[VOLID] := fill(VOLS[VOLID], unmapped); VTBL := VTBL -- VOLID}} } |