kirancodes.me
To Proof Maintenance & Beyond!

Using Data Groups to Specify and Check Side Effects

K. Rustan M. Leino, Arnd Poetzsch-Heffter, Yunhong Zhou

Abstract

Reasoning precisely about the side effects of procedure calls is important to many program analyses. This paper introduces a technique for specifying and statically checking the side effects of methods in an object-oriented language. The technique uses data groups, which abstract over variables that are not in scope, and limits program behavior by two alias-confining restrictions, pivot uniqueness and owner exclusion. The technique is shown to achieve modular soundness and is simpler than previous attempts at solving this problem.

Related papers