| ⊦ ⟪index_format#(maxino0, LEB_SIZE, maxino1; ; fi, fi0, ginval, gstore, gstore0, nx, maxino2, ginval0, syn, err)⟫ ( err = ESUCCESS → syn ∧ inv(gstore \ ginval) ∧ inv(gstore0) ∧ elems nx ∩ ginval = ∅ ∧ ¬ dups(nx) ∧ dom gstore0 ∪ elems nx = dom gstore ∪ ginval ∧ remove-refsize0(gstore0) = gstore0 ∧ ri-inj(fi) ∧ ri-inj(fi0)) |
maxino0 = maxino3, maxino1 = LEB_SIZE, maxino2 = maxino4 ⊦ ⟪if maxino1 = LEB_SIZE then {fail_or_success#(; ; err); if err = ESUCCESS then maxino := maxino0, syn := true, ginval0 := ∅, nx := [], gstore0 := ∅, gstore := ∅, ginval := ∅, fi0 := ∅, fi := ∅ else maxino := ?, syn := ?, ginval0 := ?, nx := ?, gstore0 := ?, gstore := ?, ginval := ?, fi0 := ?, fi := ?} else abort⟫ ( err = ESUCCESS → syn ∧ inv(gstore0 \ ginval) ∧ inv(gstore) ∧ elems nx ∩ ginval = ∅ ∧ ¬ dups(nx) ∧ dom gstore ∪ elems nx = dom gstore0 ∪ ginval ∧ remove-refsize0(gstore) = gstore ∧ ri-inj(fi0) ∧ ri-inj(fi))
Used simplifier rules: format: ⊦ ;