| boolvar ↔ boolvar0, err = ESUCCESS, nd = fs[adr], ri0 = ri, node-cons(fs[adr].key, fs[adr]), adr ∈ fs ⊦ ⟪if nd.trunc? then aubifs_core_index_truncate#(nd.key, nd.size, fi, ro, fo, fs, log, boolvar0; ri)⟫ ((err = ESUCCESS ∨ ⌊err⌋ ) ∧ (err = ESUCCESS → ri = replay-one(adr, fs[adr], ri0))), nd.data?, nd.dentry?, nd.inode?, adr ∈ ri |
boolvar ↔ boolvar0, err = ESUCCESS, nd = fs[adr], ri0 = ri, nd.trunc?, node-cons(fs[adr].key, fs[adr]), adr ∈ fs ⊦ ⟪aubifs_core_index_truncate#(nd.key, nd.size, fi, ro, fo, fs, log, boolvar0; ri)⟫ ((err = ESUCCESS ∨ ⌊err⌋ ) ∧ (err = ESUCCESS → ri = replay-one(adr, fs[adr], ri0))), nd.data?, nd.dentry?, nd.inode?, adr ∈ ri
boolvar ↔ boolvar0, err = ESUCCESS, nd = fs[adr], ri0 = ri, node-cons(fs[adr].key, fs[adr]), adr ∈ fs ⊦ ⟪skip⟫ ((err = ESUCCESS ∨ ⌊err⌋ ) ∧ (err = ESUCCESS → ri = replay-one(adr, fs[adr], ri0))), nd.data?, nd.dentry?, nd.inode?, nd.trunc?, adr ∈ ri