| files1[m0] = mkfile(m, md0, # links(m0, dirs), content0), n0 ≠ 0, n1 < VFS_PAGE_SIZE, afs-cons(dirs, files1), m0 ∈ files1 ⊦ [asynced := ?] ((content0 upto (m1 * VFS_PAGE_SIZE + n1)).stream to n0 + m1 * VFS_PAGE_SIZE + n1 = (content0.stream to m1 * VFS_PAGE_SIZE + n1) + (σ⊥ to n0)), n1 ≠ 0 ∧ m1 ∈ content0 |
⊦ n = n0 * VFS_PAGE_SIZE + n1 ∧ n1 ≠ 0 ∧ n1 < VFS_PAGE_SIZE → (content upto n).stream = (content.stream to (n0 + 1) * VFS_PAGE_SIZE) + σ⊥
files1[m0] = mkfile(m, md0, # links(m0, dirs), content0), n1 < VFS_PAGE_SIZE, afs-cons(dirs, files1), m0 ∈ files1 ⊦ [asynced := ?] ((content0 upto (m1 * VFS_PAGE_SIZE + n1)).stream to n0 + m1 * VFS_PAGE_SIZE + n1 = (content0.stream to m1 * VFS_PAGE_SIZE + n1) + (σ⊥ to n0)), n0 = 0, n1 ≠ 0 ∧ m1 ∈ content0, (m1 * VFS_PAGE_SIZE + n1 = m1 * VFS_PAGE_SIZE + n1 ∧ n1 ≠ 0 ∧ n1 < VFS_PAGE_SIZE) ∧ (true ↔ finp(content0.stream) → ⌜(m1 + 1) * VFS_PAGE_SIZE⌝ < # content0.stream ∨ ⌜(m1 + 1) * VFS_PAGE_SIZE⌝ = # content0.stream)
m1 * VFS_PAGE_SIZE + n1 = m1 * VFS_PAGE_SIZE + n1, files1[m0] = mkfile(m, md0, # links(m0, dirs), content0), n1 < VFS_PAGE_SIZE, afs-cons(dirs, files1), m0 ∈ files1 ⊦ [asynced := ?] ((content0.stream to (m1 + 1) * VFS_PAGE_SIZE) + σ⊥ to n0 + m1 * VFS_PAGE_SIZE + n1 = (content0.stream to m1 * VFS_PAGE_SIZE + n1) + (σ⊥ to n0)), n0 = 0, n1 = 0, n1 ≠ 0 ∧ m1 ∈ content0
Used terms: m1, n1, m1 * VFS_PAGE_SIZE + n1, content0