A Compositional Semantics for Verified Separate Compilation and Linking

被引:16
|
作者
Ramananandro, Tahina [1 ]
Shao, Zhong [1 ]
Weng, Shu-Chun [1 ]
Koenig, Jeremie [1 ]
Fu, Yuchen [2 ]
机构
[1] Yale Univ, New Haven, CT 06520 USA
[2] MIT, Cambridge, MA 02139 USA
基金
美国国家科学基金会;
关键词
Compositional Semantics; Vertical Composition; Horizontal Composition; Verified Compilation and Linking;
D O I
10.1145/2676724.2693167
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Recent ground-breaking efforts such as CompCert have made a convincing case that mechanized verification of the compiler correctness for realistic C programs is both viable and practical. Unfortunately, existing verified compilers can only handle whole programs-this severely limits their applicability and prevents the linking of verified C programs with verified external libraries. In this paper, we present a novel compositional semantics for reasoning about open modules and for supporting verified separate compilation and linking. More specifically, we replace external function calls with explicit events in the behavioral semantics. We then develop a verified linking operator that makes lazy substitutions on (potentially reacting) behaviors by replacing each external function call event with a behavior simulating the requested function. Finally, we show how our new semantics can be applied to build a refinement infrastructure that supports both vertical composition and horizontal composition.
引用
收藏
页码:3 / 14
页数:12
相关论文
共 50 条
  • [31] COMPOSITIONAL SEMANTICS FOR EXPRESSIVISTS
    Bave, Arvid
    [J]. PHILOSOPHICAL QUARTERLY, 2013, 63 (253): : 633 - 659
  • [32] A Compositional Semantics for 'If Then' Conditionals
    Vidal, Mathieu
    [J]. LOGICAL ASPECTS OF COMPUTATIONAL LINGUISTICS: CELEBRATING 20 YEARS OF LACL (1996-2016), 2016, 10054 : 291 - 307
  • [33] A Compositional Semantics for CHR
    Gabbrielli, Maurizio
    Meo, Maria Chiara
    [J]. ACM TRANSACTIONS ON COMPUTATIONAL LOGIC, 2009, 10 (02)
  • [34] Extensions in Compositional Semantics
    Zimmermann, Thomas Ede
    [J]. LANGUAGE, LOGIC, AND COMPUTATION, 2022, 13206 : 148 - 172
  • [35] Compositional semantics: An introduction to the syntax/semantics interface
    Henderson, Robert
    [J]. LANGUAGE, 2017, 93 (03) : 716 - 717
  • [36] BIDIRECTIONAL OBJECT LAYOUT FOR SEPARATE COMPILATION
    MYERS, AC
    [J]. SIGPLAN NOTICES, 1995, 30 (10): : 124 - 139
  • [37] SEPARATE COMPILATION AND PARTIAL SPECIFICATION IN PASCAL
    CELENTANO, A
    DELLAVIGNA, P
    GHEZZI, C
    MANDRIOLI, D
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1980, 6 (04) : 320 - 328
  • [38] TYPE CHECKING, SEPARATE COMPILATION AND REUSABILITY
    LEVY, MR
    [J]. SIGPLAN NOTICES, 1984, 19 (06): : 285 - 289
  • [39] A compositional approach to probabilistic knowledge compilation
    Dal, Giso H.
    Laarman, Alfons W.
    Hommersom, Arjen
    Lucas, Peter J. F.
    [J]. INTERNATIONAL JOURNAL OF APPROXIMATE REASONING, 2021, 138 : 38 - 66
  • [40] Incorporating application semantics and control into compilation
    Engler, DR
    [J]. PROCEEDINGS OF THE CONFERENCE ON DOMAIN-SPECIFIC LANGUAGES, 1997, : 103 - 117