| ubi_wl_get_used_min#(WLARRAY; PNUM; FOUND) {FOUND := false; let M = 0 in while M < # WLARRAY do {/* (prepost-wl-get-used-min : invariant M ≤ # WLARRAY ∧ (FOUND → PNUM < M ∧ WLARRAY[PNUM].status = used ∧ WLARRAY[PNUM].ec = used-ecs(WLARRAY, M).min) ∧ (¬ FOUND ↔ used-ecs(WLARRAY, M) = ∅) wfbound # WLARRAY - M) */; if WLARRAY[M].status = used ∧ (¬ FOUND ∨ WLARRAY[M].ec < WLARRAY[PNUM].ec) then {FOUND := true; PNUM := M}; M := M + 1} } |