| ⊦ ⟪gjournal_format# (jmaxino0, LEB_SIZE, jvalid0; jmaxino1, fi0, fi1, jro, gstore, gstore0, nx, pmaxino, p_os, jvalid2; jvalid3, jmaxino2, jro0, jvalid1, err)⟫ ( ( err = ESUCCESS → ⟨aubifs_core_format#(jmaxino0, LEB_SIZE, jvalid1; ; ri0, fi2, ro0, fo0, fs0, log0, jvalid4, err0)⟩ ( jro0.keys = ro0 ∧ p_os.keys = fo0 ∧ fi0 = ri0 ∧ fi1 = fi2 ∧ log0 = abs-log(nx, gstore ↓) ∧ fs0 = nodes(gstore ↓, jro) ∧ (jvalid4 → jvalid2) ∧ ESUCCESS = err0)) ∧ ( err ≠ ESUCCESS → (∀ ri, fi, ro, fo, fs, log, jvalid. ⟨aubifs_core_format#(jmaxino0, LEB_SIZE, jvalid1; ; ri0, fi2, ro0, fo0, fs0, log0, jvalid4, err0)⟩ (ri = ri0 ∧ fi = fi2 ∧ ro = ro0 ∧ fo = fo0 ∧ fs = fs0 ∧ log = log0 ∧ (jvalid ↔ jvalid4) ∧ err = err0)))) |
jvalid2 ↔ jvalid0, jvalid1 ↔ jvalid5, fi = fi1, gstore = gstore1, gstore0 = gstore2, jmaxino0 = jmaxino4, jmaxino1 = LEB_SIZE, jmaxino2 = jmaxino3, jro0 = jro ⊦ ⟪if jmaxino1 = LEB_SIZE then {jmaxino0 := ROOT_INO + 1; jmaxino := 0; jvalid0 := true; jvalid := jvalid2; index_format#(jmaxino2, jmaxino1, jmaxino0; ; fi0, fi, jro0, gstore0, gstore, nx, pmaxino, p_os, jvalid1, err); if err ≠ ESUCCESS then debug#("gjournal: persistence format failed"); jro := ∅} else abort⟫ ( ( err = ESUCCESS → ⟨aubifs_core_format#(jmaxino3, LEB_SIZE, jvalid; ; ri0, fi2, ro0, fo0, fs0, log0, jvalid4, err0)⟩ ( jro.keys = ro0 ∧ p_os.keys = fo0 ∧ fi0 = ri0 ∧ fi = fi2 ∧ log0 = abs-log(nx, gstore0 ↓) ∧ fs0 = nodes(gstore0 ↓, jro0) ∧ (jvalid4 → jvalid1) ∧ ESUCCESS = err0)) ∧ ( err ≠ ESUCCESS → (∀ ri, fi, ro, fo, fs, log, jvalid0. ⟨aubifs_core_format#(jmaxino3, LEB_SIZE, jvalid; ; ri0, fi2, ro0, fo0, fs0, log0, jvalid4, err0)⟩ (ri = ri0 ∧ fi = fi2 ∧ ro = ro0 ∧ fo = fo0 ∧ fs = fs0 ∧ log = log0 ∧ (jvalid0 ↔ jvalid4) ∧ err = err0))))
Used simplifier rules: gjournal_format# (VOLSIZE, SIZE, DOSYNC0 ; JMAXINO, PRI, PFI, PINVAL, PSTORE, PSTORE0, PNL, PMAXINO, P_OS, ISYNCED ; JVALID, SQNUM, JRO, DOSYNC, ERR ) {if SIZE = LEB_SIZE then {JMAXINO := ROOT_INO + 1; SQNUM := 0; JVALID := true; DOSYNC := DOSYNC0; index_format# (VOLSIZE, SIZE, JMAXINO ; ; PRI, PFI, PINVAL, PSTORE, PSTORE0, PNL, PMAXINO, P_OS, ISYNCED, ERR); if ERR ≠ ESUCCESS then debug#("gjournal: persistence format failed"); JRO := ∅} else abort };