Wed 28 Oct 2015 14:37 - 15:00 at Grand Station 1 - 3. Verification Chair(s): Guangtai Liang

We introduce a program logic for specifying a core sequential subset of the POSIX file system and for reasoning abstractly about client programs working with the file system. The challenge is to reason about the combination of local directory update and global pathname traversal (including '..' and symbolic links) which may overlap the directories being updated. Existing reasoning techniques are either based on first-order logic and do not scale, or on separation logic and can only handle linear pathnames (no '..' or symbolic links). We introduce fusion logic for reasoning about local update and global pathname traversal, introducing a novel effect frame rule to propagate the effect of a local update on overlapping pathnames. We apply our reasoning to the standard recursive remove utility (rm -r), discovering bugs in well-known implementations.

Wed 28 Oct

oopsla2015
13:30 - 15:00: OOPSLA - 3. Verification at Grand Station 1
Chair(s): Guangtai LiangIBM Research - China
oopsla201513:30 - 13:52
Talk
Rahul SharmaStanford University, Eric SchkufzaStanford University, Berkeley ChurchillStanford University, Alex AikenStanford University
DOI
oopsla201513:52 - 14:15
Talk
Sam BlackshearUniversity of Colorado at Boulder, USA, Bor-Yuh Evan ChangUniversity of Colorado at Boulder, USA, Manu SridharanSamsung Research America
Link to publication
oopsla201514:15 - 14:37
Talk
Ravichandhran MadhavanEPFL, Switzerland, Mikaël MayerEPFL, Switzerland, Sumit GulwaniMicrosoft Research, USA, Viktor KunčakEPFL, Switzerland
Link to publication
oopsla201514:37 - 15:00
Talk
Gian NtzikImperial College London, UK, Philippa GardnerImperial College London, UK
DOI