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 条
  • [41] NEBULA - A PROGRAMMING LANGUAGE FOR DATA-PROCESSING
    BRAUNHOLTZ, TG
    HUNT, PM
    FRASER, AG
    COMPUTER JOURNAL, 1961, 4 : 197 - &
  • [42] A New Programming Language for Data Science: Julia
    Turanli, Munevver
    Ozden, Unal Halit
    EKOIST-JOURNAL OF ECONOMETRICS AND STATISTICS, 2023, (38):
  • [43] THE SYNCHRONOUS DATA FLOW PROGRAMMING LANGUAGE LUSTER
    HALBWACHS, N
    CASPI, P
    RAYMOND, P
    PILAUD, D
    PROCEEDINGS OF THE IEEE, 1991, 79 (09) : 1305 - 1320
  • [44] THE DATA MODEL OF FAD, A DATABASE PROGRAMMING LANGUAGE
    DANFORTH, S
    VALDURIEZ, P
    INFORMATION SCIENCES, 1992, 60 (1-2) : 51 - 75
  • [45] Calypso: A visual language for data structures programming
    Wodtli, R
    Cull, P
    1997 IEEE SYMPOSIUM ON VISUAL LANGUAGES, PROCEEDINGS, 1997, : 164 - 165
  • [46] Flux - A Data-Flow Programming Language
    Ispas, R.
    Negreanu, L.
    CONTROL ENGINEERING AND APPLIED INFORMATICS, 2016, 18 (01): : 107 - 116
  • [47] Programming Without Refinement
    Benabdelali, Marwa
    Jilani, Lamia Labed
    Ghardallou, Wided
    Mili, Ali
    ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2018, (282): : 39 - 52
  • [48] Beluga: Programming with Dependent Types, Contextual Data, and Contexts
    Pientka, Brigitte
    FUNCTIONAL AND LOGIC PROGRAMMING, PROCEEDINGS, 2010, 6009 : 1 - 12
  • [49] Structured parallel programming: Parallel abstract data types
    Darlington, J
    1996 CERN SCHOOL OF COMPUTING, 1996, 96 (08): : 203 - 210
  • [50] Inductive data types based on fibrations theory in programming
    Miao D.
    Xi J.
    Guo Y.
    Tang D.
    2016, University of Zagreb, Faculty of Political Sciences (24) : 1 - 16