• DocumentCode
    2706453
  • Title

    Verifying safety policies with size properties and alias controls

  • Author

    Chin, Wei-Ngan ; Khoo, Siau-Cheng ; Qin, Shengchao ; Popeea, Corneliu ; Nguyen, Huu Hai

  • Author_Institution
    Dept. of Comput. Sci., Singapore Nat. Univ., Singapore
  • fYear
    2005
  • fDate
    15-21 May 2005
  • Firstpage
    186
  • Lastpage
    195
  • Abstract
    Many software properties can be analysed through a relational size analysis on each function´s inputs and outputs. Such relational analysis (through a form of dependent typing) has been successfully applied to declarative programs, and to restricted imperative programs; but it has been elusive for object-based programs. The main challenge is that objects may mutate and they may be aliased. In this paper, we show how safety policies of programs can be analysed by tracking size properties of objects and be enforced by objects´ invariants and the preconditions of methods. We propose several new ideas to allow both mutability and sharing of objects, whilst aiming for precision in our analysis. We introduce the concept of size-immutability to facilitate sharing, and also a set of alias controls to track unaliased objects whose size properties may change. We formalise our results through a set of advanced type checking rules for an object-based imperative language. We re-affirm the utility of the proposed type system by showing how a variety of software properties can be automatically verified according to size-inspired safety policies.
  • Keywords
    object-oriented programming; program verification; security of data; systems analysis; type theory; object-based imperative language; relational size analysis; safety policies verification; software verification; type checking; Aggregates; Automatic control; Computer science; Data structures; Logic; Permission; Reasoning about programs; Size control; Software engineering; Software safety;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering, 2005. ICSE 2005. Proceedings. 27th International Conference on
  • Print_ISBN
    1-59593-963-2
  • Type

    conf

  • DOI
    10.1109/ICSE.2005.1553561
  • Filename
    1553561