Separation Logic for Multiple Inheritance

作者: Chenguang Luo , Shengchao Qin

DOI: 10.1016/J.ENTCS.2008.04.051

关键词:

摘要: As an extension to Floyd-Hoare logic, separation logic has been used facilitate reasoning about imperative programs manipulating shared mutable data structures. Recently, it also extended support modular in Java-like object-oriented languages where only single inheritance is allowed. In this paper we propose of the for multiple C++ -like languages. To cater inheritance, modified standard storage model a way that correct reference field or method can be easily determined. On top model, set proof rules are proposed. Our verification system provides basic behavioral subtyping.

参考文章(21)
Ryan D. Stansifer, Kurt Sieber, Jacques Loeckx, The Foundations of Program Verification ,(1987)
Bertrand Meyer, Eiffel: The Language ,(1991)
Samin Ishtiaq, Peter W. O'Hearn, BI as an assertion language for mutable data structures ACM SIGPLAN Notices. ,vol. 46, pp. 84- 96 ,(2011) , 10.1145/1988042.1988050
Barbara Liskov, Keynote address - data abstraction and hierarchy Addendum to the proceedings on Object-oriented programming systems, languages and applications (Addendum) - OOPSLA '87. ,vol. 23, pp. 17- 34 ,(1987) , 10.1145/62138.62141
Barbara H. Liskov, Jeannette M. Wing, A behavioral notion of subtyping ACM Transactions on Programming Languages and Systems. ,vol. 16, pp. 1811- 1841 ,(1994) , 10.1145/197320.197383
Daniel Wasserrab, Tobias Nipkow, Gregor Snelting, Frank Tip, An operational semantics and type safety prooffor multiple inheritance in C++ Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications - OOPSLA '06. ,vol. 41, pp. 345- 362 ,(2006) , 10.1145/1167473.1167503
Wei-Ngan Chin, Cristina David, Huu Hai Nguyen, Shengchao Qin, Enhancing modular OO verification with separation logic Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '08. ,vol. 43, pp. 87- 99 ,(2008) , 10.1145/1328438.1328452
Matthew J. Parkinson, Gavin M. Bierman, Separation logic, abstraction and inheritance Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '08. ,vol. 43, pp. 75- 86 ,(2008) , 10.1145/1328438.1328451
Gary T. Leavens, Krishna Kishore Dhara, Forcing behavioral subtyping through specification inheritance international conference on software engineering. pp. 258- 267 ,(1996) , 10.5555/227726.227772
Peter W. O'Hearn, Hongseok Yang, John C. Reynolds, Separation and information hiding symposium on principles of programming languages. ,vol. 39, pp. 268- 280 ,(2004) , 10.1145/964001.964024