Concurrent verification for sequential programs

[1]  Peter W. O'Hearn,et al.  BI as an assertion language for mutable data structures , 2001, POPL '01.

[2]  Stephen Brookes A semantics for concurrent separation logic , 2007, Theor. Comput. Sci..

[3]  Robin Milner,et al.  The Space and Motion of Communicating Agents , 2009 .

[4]  Lars Birkedal,et al.  Fictional Separation Logic , 2012, ESOP.

[5]  F. B. Fitch Symbolic Logic, An Introduction , 1953 .

[6]  Viktor Vafeiadis,et al.  Concurrent Abstract Predicates , 2010, ECOOP.

[7]  Peter W. O'Hearn,et al.  Permission accounting in separation logic , 2005, POPL '05.

[8]  Derek Dreyer,et al.  Superficially substructural types , 2012, ICFP '12.

[9]  Xinyu Feng,et al.  On the Relationship Between Concurrent Separation Logic and Assume-Guarantee Reasoning , 2007, ESOP.

[10]  K. Mani Chandy,et al.  Proofs of Networks of Processes , 1981, IEEE Transactions on Software Engineering.

[11]  Frank Piessens,et al.  Verification of Unloadable Modules , 2011, FM.

[12]  Christian Urban,et al.  A Formalisation of the Myhill-Nerode Theorem Based on Regular Expressions , 2013, Journal of Automated Reasoning.

[13]  H. D. Parker,et al.  The Bell Telephone Laboratories, Inc. , 1925, Journal of the A.I.E.E..

[14]  Xinyu Feng Local rely-guarantee reasoning , 2009, POPL '09.

[15]  Martín Abadi,et al.  Explicit substitutions , 1989, POPL '90.

[16]  Markus Wenzel,et al.  Asynchronous Proof Processing with Isabelle/Scala and Isabelle/jEdit , 2012, UITP.

[17]  Peter W. O'Hearn,et al.  The Logic of Bunched Implications , 1999, Bulletin of Symbolic Logic.

[18]  Edsger W. Dijkstra,et al.  A Discipline of Programming , 1976 .

[19]  Frank Piessens,et al.  Expressive modular fine-grained concurrency specification , 2011, POPL '11.

[20]  R. D. Tennent Specifying Software , 2002 .

[21]  Chung-Kil Hur,et al.  Separation Logic in the Presence of Garbage Collection , 2011, 2011 IEEE 26th Annual Symposium on Logic in Computer Science.

[22]  Viktor Vafeiadis,et al.  A Marriage of Rely/Guarantee and Separation Logic , 2007, CONCUR.

[23]  Matthew J. Parkinson,et al.  Explicit Stabilisation for Modular Rely-Guarantee Reasoning , 2010, ESOP.

[24]  Cliff B. Jones,et al.  A Structural Proof of the Soundness of Rely/guarantee Rules , 2007, J. Log. Comput..

[25]  Thomas W. Reps,et al.  Automatic Assume/Guarantee Reasoning for Heap-Manipulating Programs: Ongoing Work , 2005, AIOOL@VMCAI.

[26]  John C. Reynolds,et al.  Separation logic: a logic for shared mutable data structures , 2002, Proceedings 17th Annual IEEE Symposium on Logic in Computer Science.

[27]  Cliff B. Jones,et al.  Systematic software development using VDM , 1986, Prentice Hall International Series in Computer Science.

[28]  Cliff B. Jones,et al.  The Role of Auxiliary Variables in the Formal Development of Concurrent Programs , 2010, Reflections on the Work of C. A. R. Hoare.

[29]  C. A. R. Hoare,et al.  Procedures and parameters: An axiomatic approach , 1971, Symposium on Semantics of Algorithmic Languages.

[30]  Cliff B. Jones,et al.  Tentative steps toward a development method for interfering programs , 1983, TOPL.

[31]  Warren A. Hunt FM8501: A Verified Microprocessor , 1994, Lecture Notes in Computer Science.

[32]  Gavin M. Bierman,et al.  Separation logic and abstraction , 2005, POPL '05.

[33]  Richard Bornat,et al.  Towards Automatic Stability Analysis for Rely-Guarantee Proofs , 2008, VMCAI.

[34]  Nir Piterman,et al.  Proving Stabilization of Biological Systems , 2011, VMCAI.

[35]  Hongseok Yang,et al.  Variables as Resource in Separation Logic , 2005, MFPS.

[36]  John C. Reynolds Reasoning about arrays , 1980, SIGP.

[37]  Viktor Vafeiadis,et al.  Proving that non-blocking algorithms don't block , 2009, POPL '09.

[38]  Viktor Vafeiadis,et al.  RGSep Action Inference , 2010, VMCAI.

[39]  Peter W. O'Hearn,et al.  Resources, Concurrency and Local Reasoning , 2004, CONCUR.

[40]  P. Selinger A Survey of Graphical Languages for Monoidal Categories , 2009, 0908.3347.

[41]  Richard Bornat,et al.  Variables as Resource in Hoare Logics , 2006, 21st Annual IEEE Symposium on Logic in Computer Science (LICS'06).

[42]  Gerard J. Holzmann,et al.  Economics of software verification , 2001, PASTE '01.

[43]  Jules Bean Ribbon Proofs , 2003, MFPS.

[44]  Peter W. O'Hearn,et al.  Separation and information hiding , 2004, POPL.

[45]  G. Myers,et al.  The Art of Software Testing: Myers/Art , 2012 .

[46]  Andrew M. Kuhn,et al.  Code Complete , 2005, Technometrics.

[47]  Maurice Clint Program proving: Coroutines , 2004, Acta Informatica.

[48]  Mark A. Hillebrand,et al.  VCC: A Practical System for Verifying Concurrent C , 2009, TPHOLs.

[49]  Robert W. Floyd,et al.  Assigning Meanings to Programs , 1993 .

[50]  Joey W. Coleman Expression Decomposition in a Rely/Guarantee Context , 2008, VSTTE.

[51]  Alexey Gotsman,et al.  Local Reasoning for Storable Locks and Threads , 2007, APLAS.

[52]  Xinyu Feng,et al.  Deny-Guarantee Reasoning , 2009, ESOP.

[53]  Ross Street,et al.  Traced monoidal categories , 1996 .

[54]  Fred B. Schneider On Concurrent Programming , 1997, Graduate Texts in Computer Science.

[55]  Sanjit A. Seshia,et al.  Modular verification of multithreaded programs , 2005, Theor. Comput. Sci..

[56]  Adam Chlipala,et al.  Mostly-automated verification of low-level programs in computational separation logic , 2011, PLDI '11.

[57]  Mateja Jamnik,et al.  Diabelli: A Heterogeneous Proof System , 2012, IJCAR.

[58]  Viktor Vafeiadis Concurrent Separation Logic and Operational Semantics , 2011, MFPS.

[59]  Jean-Yves Girard,et al.  Linear Logic , 1987, Theor. Comput. Sci..

[60]  Viktor Vafeiadis,et al.  Modular fine-grained concurrency verification , 2008 .

[61]  Matthew J. Parkinson,et al.  An axiomatic basis for computer programming , 1969, CACM.

[62]  C. A. R. Hoare,et al.  An axiomatic basis for computer programming , 1969, CACM.

[63]  Leonor Prensa Nieto The Rely-Guarantee Method in Isabelle/HOL , 2003, ESOP.

[64]  Peter W. O'Hearn,et al.  Smallfoot: Modular Automatic Assertion Checking with Separation Logic , 2005, FMCO.

[65]  Susan Owicki,et al.  An axiomatic proof technique for parallel programs I , 1976, Acta Informatica.

[66]  Philippa Gardner,et al.  Automatic Parallelization with Separation Logic , 2009, ESOP.

[67]  Viktor Vafeiadis,et al.  Modular Safety Checking for Fine-Grained Concurrency , 2007, SAS.

[68]  John McCarthy,et al.  Correctness of a compiler for arithmetic expressions , 1966 .

[69]  Peter W. O'Hearn,et al.  Modular verification of a non-blocking stack , 2007, POPL '07.

[70]  Charles Fishman,et al.  They write the right stuff , 1996 .

[71]  Frank Piessens,et al.  VeriFast: A Powerful, Sound, Predictable, Fast Verifier for C and Java , 2011, NASA Formal Methods.

[72]  Fred B. Schneider,et al.  On concurrent programming , 1997, CACM.

[73]  Julian Michael Lewis Bean Ribbon Proofs - A Proof System for the Logic of Bunched Implications , 2013 .