Local reasoning and dynamic framing for the composite pattern and its clients

VSTTE'10: Proceedings of the Third international conference on Verified software: theories, tools, experiments(2010)

引用 7|浏览26
暂无评分
摘要
The Composite design pattern is an exemplar of specification and verification challenges for sequential object-oriented programs. Region logic is a Hoare logic augmented with state dependent "modifies" specifications based on simple notations for object sets. Using ordinary first order logic assertions, it supports local reasoning and also the hiding of invariants on encapsulated state, in ways similar to separation logic but suited to off-the-shelf SMT solvers. This paper uses region logic to specify and verify a representative implementation of the Composite design pattern. To evaluate efficacy of the specification, it is used in verifications of several sample client programs including one with hiding. Verification is performed using a verifier for region logic built on top of an existing verification condition generator which serves as a front end to an SMT solver.
更多
查看译文
关键词
Dynamic Boundary, Proof Obligation, Composite Pattern, Separation Logic, Region Logic
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要