| gjournal_split_nodes#(SIZE; NDLIST, NDLIST0) {NDLIST0 := []; while NDLIST ≠ [] ∧ NDLIST.head.flashsize ≤ SIZE do {/* (prepost-split-nodes: invariant NDLIST` = NDLIST0 + NDLIST ∧ SIZE` = NDLIST0.flashsize + SIZE wfbound # NDLIST) */; let ND = NDLIST.head in {NDLIST0 := NDLIST0 + ND; NDLIST := NDLIST.tail; SIZE := SIZE - ND.flashsize}} } |