Safe modification of pointer programs in refinement calculus

被引:0
|
作者
Nishimura, Susumu [1 ]
机构
[1] Kyoto Univ, Grad Sch Sci, Dept Math, Sakyo Ku, Kyoto 6068502, Japan
来源
MATHEMATICS OF PROGRAM CONSTRUCTION, PROCEEDINGS | 2008年 / 5133卷
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This paper discusses stepwise refinement of pointer programs in the framework of refinement calculus. We augment the underlying logic with formulas of separation logic and then introduce a pair of new predicate transformers, called separating assertion and separating assumption. The new predicate transformers are derived from separating conjunction and separating implication, which are fundamental logical connectives in separation logic. They represent primitive forms of heap allocation/deallocation operators and the basic pointer statements can be specified by means of them. We derive several refinement laws that are useful for stepwise refinement and demonstrate the use of the laws in the context of correctness preserving transformations that are intended for improved memory usage. The formal development is carried out in the framework of higher-order logic and is based on Back and Preoteasa's axiomatization of state space and its extension to the heap storage [BP05, Pre06]. All the results have been implemented and verified in the theorem prover PVS.
引用
收藏
页码:284 / 304
页数:21
相关论文
共 50 条
  • [31] TYPES AND INVARIANTS IN THE REFINEMENT CALCULUS
    MORGAN, C
    LECTURE NOTES IN COMPUTER SCIENCE, 1989, 375 : 363 - 378
  • [32] A partition refinement algorithm for the π-calculus
    Pistore, M
    Sangiorgi, D
    INFORMATION AND COMPUTATION, 2001, 164 (02) : 264 - 321
  • [33] TOWARDS A CALCULUS OF DATA REFINEMENT
    CHEN, W
    UDDING, JT
    LECTURE NOTES IN COMPUTER SCIENCE, 1989, 375 : 197 - 218
  • [34] The refinement calculus of reactive systems
    Preoteasa, Viorel
    Dragomir, Iulia
    Tripakis, Stavros
    INFORMATION AND COMPUTATION, 2022, 285
  • [35] Bounded model checking of pointer programs
    Charatonik, W
    Georgieva, L
    Maier, P
    COMPUTER SCIENCE LOGIC, PROCEEDINGS, 2005, 3634 : 397 - 412
  • [36] Hierarchical pointer analysis for distributed programs
    Kamil, Amir
    Yelick, Katherine
    STATIC ANALYSIS, PROCEEDINGS, 2007, 4634 : 281 - +
  • [37] Pure Pointer Programs and Tree Isomorphism
    Hofmann, Martin
    Ramyaa, Ramyaa
    Schoepp, Ulrich
    FOUNDATIONS OF SOFTWARE SCIENCE AND COMPUTATION STRUCTURES (FOSSACS 2013), 2013, 7794 : 321 - 336
  • [38] PROGRAM INVERSION IN THE REFINEMENT CALCULUS
    VONWRIGHT, J
    INFORMATION PROCESSING LETTERS, 1991, 37 (02) : 95 - 100
  • [39] Refinement Calculus of Reactive Systems
    Preoteasa, Viorel
    Tripakis, Stavros
    2014 INTERNATIONAL CONFERENCE ON EMBEDDED SOFTWARE (EMSOFT), 2014,
  • [40] Program specialisation in the refinement calculus
    Groves, L
    APSEC 2001: EIGHTH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE, PROCEEDINGS, 2001, : 29 - 36