Title
Verifying a file system implementation
Abstract
We present a correctness proof for a basic file system implementation. This implementation contains key elements of standard Unix file systems such as inodes and fixed-size disk blocks. We prove the implementation correct by establishing a simulation relation between the specification of the file system (which models the file system as an abstract map from file names to sequences of bytes) and its implementation (which uses fixed-size disk blocks to store the contents of the files). We used the Athena proof system to represent and validate our proof. Our experience indicates that Athena's use of block-structured natural deduction, support for structural induction and proof abstraction, and seamless integration with high-performance automated theorem provers were essential to our ability to successfully manage a proof of this size.
Year
DOI
Venue
2004
10.1007/978-3-540-30482-1_32
Lecture Notes in Computer Science
Keywords
Field
DocType
theorem prover,natural deduction
Byte,File system,inode,Computer science,Automated theorem proving,Proof theory,Unix,Formal methods,Operating system,Structural induction
Conference
Volume
ISSN
Citations 
3308
0302-9743
16
PageRank 
References 
Authors
1.20
21
4
Name
Order
Citations
PageRank
Konstantine Arkoudas118619.63
Karen Zee21838.50
Viktor Kuncak3112970.57
Martin C. Rinard44739277.55