| ri-closed(ri1, fs1, ro1), ri-cons(ri1, fs1), adr ∈ log1, fo1 ⊆ dom fi1, ro1 ⊆ dom ri1, adr ∈ log0 → adr ∈ fs0 ∧ (fs0[adr].inode? → fs0[adr].key.inode? ∧ fs0[adr].key.ino ≠ 0) ∧ (fs0[adr].dentry? → fs0[adr].key.dentry?) ∧ (fs0[adr].data? → fs0[adr].key.data?) ∧ (fs0[adr].trunc? → fs0[adr].key.inode?), adr ∈ log1 → adr ∈ fs1 ∧ node-cons(fs1[adr].key, fs1[adr]) ⊦ inodekey(0) ∈ ri1, (fs1[adr].inode? → fs1[adr].key.inode? ∧ fs1[adr].key.ino ≠ 0) ∧ (fs1[adr].dentry? → fs1[adr].key.dentry?) ∧ (fs1[adr].data? → fs1[adr].key.data?) ∧ (fs1[adr].trunc? → fs1[adr].key.inode?) |
node-cons(fs1[adr].key, fs1[adr]), ri-closed(ri1, fs1, ro1), ri-cons(ri1, fs1), adr ∈ log1, adr ∈ fs1, ro1 ⊆ dom ri1, fo1 ⊆ dom fi1, adr ∈ log0 → adr ∈ fs0 ∧ (fs0[adr].inode? → fs0[adr].key.inode? ∧ fs0[adr].key.ino ≠ 0) ∧ (fs0[adr].dentry? → fs0[adr].key.dentry?) ∧ (fs0[adr].data? → fs0[adr].key.data?) ∧ (fs0[adr].trunc? → fs0[adr].key.inode?) ⊦ inodekey(0) ∈ ri1, (fs1[adr].inode? → fs1[adr].key.inode? ∧ fs1[adr].key.ino ≠ 0) ∧ (fs1[adr].dentry? → fs1[adr].key.dentry?) ∧ (fs1[adr].data? → fs1[adr].key.data?) ∧ (fs1[adr].trunc? → fs1[adr].key.inode?)