| level⊆(`two-way-sort', str), validref(`two-way-sort', r, mkarraytype(boolean_type), st), validmode(`two-way-sort', st), st0 = st ⊦ [st; swt.SortArray.swap(i, i0, r); ] (validref(`two-way-sort', r, mkarraytype(boolean_type), st) ∧ valid⊆(str, st0, st) ∧ init⊆(str, st0, st) ∧ validmode(`two-way-sort', st)) |