| # buf = VFS_PAGE_SIZE, files[m0] = mkfile(n0, md, # links(m0, dirs), content), n1 < VFS_PAGE_SIZE, ⌜n * VFS_PAGE_SIZE⌝ + ⌜n1⌝ < # content.stream, F(files -- m0), afs-cons(dirs, files), m0 ∈ files, n ∈ content ⊦ content[n][n1] = content.stream[n * VFS_PAGE_SIZE + n1] |
# buf = VFS_PAGE_SIZE, files[m0] = mkfile(n0, md, # links(m0, dirs), content), n1 < VFS_PAGE_SIZE, F(files -- m0), afs-cons(dirs, files), n ∈ content, m0 ∈ files ⊦ content[n][n1] = getbyte(n * VFS_PAGE_SIZE + n1, content)
Used simplifier rules: add-comm: ⊦ n∞1 + n∞2 = n∞2 + n∞1; from specification nat-inf%add-assoc: ⊦ (n∞ + n∞1) + n∞2 = n∞ + n∞1 + n∞2; from specification nat-inf% ⊦ ⌜m⌝ ≠ ∞; (s)% ⊦ ⌜m⌝ + n∞ = ∞ ↔ n∞ = ∞; (s)% ⊦ n∞ < ∞ ↔ n∞ ≠ ∞; (s)% ⊦ # content.stream = ∞; (s)% ⊦ content.stream[n] = getbyte(n, content); (s)