Refinement and retrenchment for programming language data types

被引:1
|
作者
Beckert, B [1 ]
Schlager, S
机构
[1] Univ Koblenz Landau, Inst Comp Sci, D-56070 Koblenz, Germany
[2] Univ Karlsruhe, Inst Theoret Comp Sci, D-76128 Karlsruhe, Germany
关键词
software verification; formal specification; retrenchment refinement; !text type='Java']Java[!/text; UML/OCL; integer arithmetic;
D O I
10.1007/s00165-005-0073-x
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Refinement is a well-established and accepted technique for the systematic development of correct software systems. However, for the step from already refined specification to implementation, a correct refinement is often not possible because the data types used in the specification respectively the implementation language differ. In this paper, we discuss this problem and its consequences, using the integer data types of JAvA as an example, which do not correctly refine the mathematical integers Z. We present a solution, which can be seen as a generalisation of refinement and a variant of retrenchment. It has successfully been implemented as part of the KeY software verification system.
引用
收藏
页码:423 / 442
页数:20
相关论文
共 50 条
  • [21] Categorical programming with abstract data types
    Erwig, M
    ALGEBRAIC METHODOLOGY AND SOFTWARE TECHNOLOGY, 1999, 1548 : 406 - 421
  • [22] Programming language inherent support for constrained XML schema definition data types and OWL DL
    Paar, Alexander
    Tichy, Walter F.
    ASE 2006: 21ST IEEE INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, PROCEEDINGS, 2006, : 281 - 284
  • [23] Axiomatics for Data Refinement in Call by Value Programming Languages
    Power, John
    Tanaka, Miki
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2009, 225 (0C) : 281 - 302
  • [24] Data refinement for call-by-value programming languages
    Kinoshita, Y
    Power, J
    COMPUTER SCIENCE LOGIC, PROCEEDINGS, 1999, 1683 : 562 - 576
  • [25] Adaptive Data Refinement for Parallel Dynamic Programming Applications
    Tang, Shanjiang
    Yu, Ce
    Lee, Bu-Sung
    Sun, Chao
    Sun, Jizhou
    2012 IEEE 26TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM WORKSHOPS & PHD FORUM (IPDPSW), 2012, : 2220 - 2229
  • [26] Multi-formalism modelling and programming language types
    Vangheluwe, HL
    Vansteenkiste, GC
    SIMULATION IN INDUSTRY: 9TH EUROPEAN SIMULATION SYMPOSIUM 1997, 1997, : 105 - 109
  • [27] The implicit calculus of constructions as a programming language with dependent types
    Barras, Bruno
    Bernardo, Bruno
    FOUNDATIONS OF SOFTWARE SCIENCE AND COMPUTATIONAL STRUCTURES, PROCEEDINGS, 2008, 4962 : 365 - +
  • [28] A visual programming language for qualitative data
    Duecker, M
    Geiger, C
    Lehrenfeld, G
    Mueller, W
    Tahedl, C
    1997 IEEE SYMPOSIUM ON VISUAL LANGUAGES, PROCEEDINGS, 1997, : 268 - 269
  • [29] Data definition in the programming language MARKIZ
    Mikhelev, VM
    PROGRAMMING AND COMPUTER SOFTWARE, 2001, 27 (01) : 50 - 56
  • [30] PROGRAMMING LANGUAGE CONSTRUCTS FOR DATA ABSTRACTION
    SHIGO, O
    TSURUTANI, T
    IWAMOTO, K
    MAEJIMA, T
    NEC RESEARCH & DEVELOPMENT, 1977, (45): : 66 - 71