| of[n] = mkfile(m, mode, m0), of[fd, of[fd].pos:= (of[fd].pos + n0)][n] = mkfile(m1, mode0, m2), dom of < ino, afs-cons(dirs, files), of-cons(of, dirs, files), fd ∈ of, n ∈ of[fd, of[fd].pos:= (of[fd].pos + n0)], n ∈ of → m ∈ files ⊦ m1 ∈ files |
of[fd, of[fd].pos:= (m4 + n0)][n] = mkfile(m1, mode0, m2), of[n] = mkfile(m, mode, m0), of[fd] = mkfile(m3, mode1, m4), dom of < ino, afs-cons(dirs, files), of-cons(of, dirs, files), n ∈ of[fd, of[fd].pos:= (m4 + n0)], fd ∈ of, n ∈ of → m ∈ files ⊦ m1 ∈ files
Used simplifier rules: ⊦ (m = file.ino ∧ mode = file.mode) ∧ m0 = file.pos ↔ file = mkfile(m, mode, m0); (elim) Used terms: of[fd], m3, mode1, m4