Proving Properties of Programs on Hierarchical Nominative Data

被引:0
|
作者
Ivanov, Ievgen [1 ]
Nikitchenko, Mykola [1 ]
Skobelev, Volodymyr G. [2 ]
机构
[1] Taras Shevchenko Natl Univ Kyiv, 64-13 Volodymyrska Str, UA-01601 Kiev, Ukraine
[2] NAS Ukraine, VM Glushkov Inst Cybernet, 40 Glushkova Ave, UA-03187 Kiev, Ukraine
关键词
Programming language semantics; algorithmic algebras; nominative data; composition; Friedman scheme;
D O I
暂无
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
In the paper we develop methods for proving properties of programs on hierarchical nominative data on the basis of the composition-nominative approach. In accordance with this approach, the semantics of a program is a function on nominative data constructed from basic operations using compositions ( operations on functions) which represent programming language constructs. Nominative data can be considered as a class of abstract data models which is able to represent many concrete types of structured and semistructured data that appear in programming. Thus, proofs of properties of programs depend on proofs of properties of compositions and basic operations on nominative data. To simplify the parts of such proofs that deal with program compositions we propose to represent compositions of programs on nominative data using effective definitional schemes of H. Friedman. This permits us to consider proofs in data algebras (which are simpler to derive, automate, etc.) instead of proofs in program algebras. In particular, we demonstrate that the properties of programs related to structural transformations of data can be reduced to the data level. The obtained results can be used in software development and verification.
引用
收藏
页码:371 / 398
页数:28
相关论文
共 50 条
  • [41] Proving what programs do not
    Meyer, Bertrand
    MEMOCODE'07: FIFTH ACM & IEEE INTERNATIONAL CONFERENCE ON FORMAL METHODS AND MODELS FOR CO-DESIGN, PROCEEDINGS, 2007, : 135 - 135
  • [42] ON PROVING INDUCTIVE PROPERTIES OF ABSTRACT DATA TYPES.
    Musser, David R.
    Conference Record of the Annual ACM Symposium on Principles of Programming Languages, 1980, : 154 - 162
  • [43] A LA BURSTALL INTERMITTENT ASSERTIONS INDUCTION PRINCIPLES FOR PROVING INEVITABILITY PROPERTIES OF PROGRAMS
    COUSOT, P
    COUSOT, R
    THEORETICAL COMPUTER SCIENCE, 1993, 120 (01) : 123 - 155
  • [44] Theorem proving in hierarchical conditional specification
    Avenhaus, J.
    Madlener, K.
    Informatik - Forschung und Entwicklung, 1996, 11 (02): : 53 - 60
  • [45] Formalization of the Algebra of Nominative Data in Mizar
    Kornilowicz, Artur
    Kryvolap, Andrii
    Nikitchenko, Mykola
    Ivanov, Ievgen
    PROCEEDINGS OF THE 2017 FEDERATED CONFERENCE ON COMPUTER SCIENCE AND INFORMATION SYSTEMS (FEDCSIS), 2017, : 237 - 244
  • [46] Hierarchical invention of theorem proving strategies
    Jakubuv, Jan
    Urban, Josef
    AI COMMUNICATIONS, 2018, 31 (03) : 237 - 250
  • [47] METHODOLOGY FOR PROVING THE TERMINATION OF LOGIC PROGRAMS
    WANG, B
    SHYAMASUNDAR, RK
    LECTURE NOTES IN COMPUTER SCIENCE, 1991, 480 : 214 - 227
  • [48] Proving Termination of Programs Automatically with AProVE
    Giesl, Juergen
    Brockschmidt, Marc
    Emmes, Fabian
    Frohn, Florian
    Fuhs, Carsten
    Otto, Carsten
    Pluecker, Martin
    Schneider-Kamp, Peter
    Stroeder, Thomas
    Swiderski, Stephanie
    Thiemann, Rene
    AUTOMATED REASONING, IJCAR 2014, 2014, 8562 : 184 - 191
  • [49] A Retrospective of Proving the Correctness of Multiprocess Programs
    Lamport, Leslie
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2025, 51 (03) : 713 - 716
  • [50] PROVING PROGRAMS CORRECT THROUGH REFINEMENT
    CORRELL, CH
    ACTA INFORMATICA, 1978, 9 (02) : 121 - 132