| log = abs-log(nx0, gstore2 ↓), elems(nx0 + n ' + nx2) ∩ ginval = ∅, inv(gstore2 \ ginval), elems(nx0 + n ' + nx2) ⊆ dom gstore2 ⊦ ⟪gjournal_remove_nonend_blocks#(n, fi0, fi, ginval, gstore2, gstore, nx, pmaxino, p_os, jvalid; log; err); nx := nx2⟫ ((∃ nx1. nx0 + n ' + nx2 = nx1 + nx ∧ (err = ESUCCESS ∨ ⌊err⌋ ) ∧ (err = ESUCCESS → log = abs-log(nx1, gstore2 ↓))) ∧ ¬ # nx2 < # nx) |
n ∈ gstore, ¬ n ∈ ginval, ax = ax0, inv(gstore \ ginval) ⊦ ⟪gjournal_remove_nonend_blocks#(n, ri, fi, ginval, gstore, gstore0, nx0, maxino, ns, boolvar0; ax; err)⟫ ((err = ESUCCESS ∨ ⌊err⌋ ) ∧ (err = ESUCCESS → ax = ax0 + prefixn(valid-group-nodes(gstore[n].gndlist), gstore[n].ladrlist.to-adr(n))))
log = abs-log(nx0, gstore2 ↓), elems(nx0 + n ' + nx2) ∩ ginval = ∅, inv(gstore2 \ ginval), elems(nx0 + n ' + nx2) ⊆ dom gstore2 ⊦ n ∈ gstore2 ∧ ¬ n ∈ ginval ∧ log = log ∧ inv(gstore2 \ ginval)
boolvar ↔ jvalid, ax1 = log, fi1 = fi, ginval0 = ginval, gstore1 = gstore2, gstore3 = gstore, log = abs-log(nx0, gstore2 ↓), log = log, maxino0 = pmaxino, n0 = n, ns0 = p_os, nx1 = nx, ri0 = fi0, elems(nx0 + n ' + nx2) ∩ ginval = ∅, inv(gstore2 \ ginval), n ∈ gstore2, elems(nx0 + n ' + nx2) ⊆ dom gstore2 ⊦ [gjournal_remove_nonend_blocks#(n, fi0, fi, ginval, gstore2, gstore, nx, pmaxino, p_os, jvalid; log; err)] ( (err = ESUCCESS ∨ ⌊err⌋ ) ∧ (err = ESUCCESS → log = ax1 + prefixn(valid-group-nodes(gstore1[n0].gndlist), gstore1[n0].ladrlist.to-adr(n0))) → ⟪nx := nx2⟫ ( (∃ nx1. nx0 + n ' + nx2 = nx1 + nx ∧ (err = ESUCCESS ∨ ⌊err⌋ ) ∧ (err = ESUCCESS → log = abs-log(nx1, gstore2 ↓))) ∧ ¬ # nx2 < # nx)), n ∈ ginval