Automated Verification With and Without Reference Behavior

semanticscholar(2016)

引用 0|浏览0
暂无评分
摘要
Automated verification of software built from data abstraction is rendered difficult by reference behavior both in the client code and implementation code. In the client code, object encapsulation through component development in modern programming languages remains a problem, because clients can violate the abstraction boundary by accessing object internals through aliased object references. In data abstraction implementation code, references are often explicit and verification needs to account for them. To illustrate the solutions to the problem, this paper employs a classical list reversal example. For the client side problem, the proposed solution utilizes an abstract list interface specification that, by design, avoids the need for explicit references and aliasing. For internal code based explicitly on references, such as in place list reversal, the proposed solution involves the use of a concept that captures acyclic linked structures. Both solutions rely on standard logic and are shown to be verified automatically, using the same machinery.
更多
查看译文
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要