DimSum: A Decentralized Approach to Multi-language Semantics and Verification

被引:7
|
作者
Sammler, Michael [1 ]
Spies, Simon [1 ]
Song, Youngju [1 ]
D'Osualdo, Emanuele [1 ]
Krebbers, Robbert [2 ]
Garg, Deepak [1 ]
Dreyer, Derek [1 ]
机构
[1] MPI SWS, Saarland Informat Campus, Saarbrucken, Germany
[2] Radboud Univ Nijmegen, Nijmegen, Netherlands
来源
PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL | 2023年 / 7卷 / POPL期
基金
荷兰研究理事会; 欧洲研究理事会;
关键词
multi-language semantics; verification; compilers; non-determinism; separation logic; Iris; Coq; ABSTRACT TRACE SEMANTICS;
D O I
10.1145/3571220
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Priorwork on multi-language program verification has achieved impressive results, including the compositional verification of complex compilers. But the existing approaches to this problem impose a variety of restrictions on the overall structure of multi-language programs (e.g., fixing the source language, fixing the set of involved languages, fixing the memory model, or fixing the semantics of interoperation). In this paper, we explore the problem of how to avoid such global restrictions. Concretely, we present DimSum: a new, decentralized approach to multi-language semantics and verification, which we have implemented in the Coq proof assistant. Decentralization means that we can define and reason about languages independently from each other (as independent modules communicating via events), but also combine and translate between them when necessary (via a library of combinators). We apply DimSum to a high-level imperative language Rec (with an abstract memory model and function calls), a low-level assembly language Asm (with a concrete memory model, arbitrary jumps, and syscalls), and a mathematical specification language Spec. We evaluate DimSum on two case studies: an Asm library extending Rec with support for pointer comparison, and a coroutine library for Rec written in Asm. In both cases, we show how DimSum allows the Asm libraries to be abstracted to Rec-level specifications, despite the behavior of the Asm libraries not being syntactically expressible in Rec itself. We also verify an optimizing multi-pass compiler from Rec to Asm, showing that it is compatible with these Asm libraries.
引用
收藏
页数:31
相关论文
共 50 条
  • [21] Multi-Language Programming with Ada
    Ochem, Quentin
    SIGADA 2009: PROCEEDINGS OF THE ACM INTERNATIONAL CONFERENCE ON ADA AND RELATED TECHNOLOGIES, 2009, : 19 - 19
  • [22] Multi-language naming game
    Zhou, Jianfeng
    Lou, Yang
    Chen, Guanrong
    Tang, Wallace K. S.
    PHYSICA A-STATISTICAL MECHANICS AND ITS APPLICATIONS, 2018, 496 : 620 - 634
  • [23] BBQE: Multi-language String Search Approach for Blackberry Environment
    Mantoro, Teddy
    Ayu, Media A.
    Macic, Merdin
    INFORMATICS ENGINEERING AND INFORMATION SCIENCE, PT II, 2011, 252 : 349 - 359
  • [24] MULTI-LANGUAGE BLAS - A PROPOSAL
    AHARONIAN, G
    SIGPLAN NOTICES, 1985, 20 (11): : 11 - 13
  • [25] MULTI-LANGUAGE POETRY IN OSIRIS
    MELANCON, R
    LIBERTE, 1984, 26 (03): : 167 - 167
  • [26] Multi-Language Neural Network Language Models
    Ragni, Anton
    Dakin, Edgar
    Chen, Xie
    Gales, Mark J. F.
    Knill, Kate M.
    17TH ANNUAL CONFERENCE OF THE INTERNATIONAL SPEECH COMMUNICATION ASSOCIATION (INTERSPEECH 2016), VOLS 1-5: UNDERSTANDING SPEECH PROCESSING IN HUMANS AND MACHINES, 2016, : 3042 - 3046
  • [27] Design and semantics of a decentralized authorization language
    Becker, Moritz Y.
    Fournet, Cedric
    Gordon, Andrew D.
    20TH IEEE COMPUTER SECURITY FOUNDATIONS SYMPOSIUM (CSFS20), PROCEEDINGS, 2007, : 3 - +
  • [28] A multi-language approach towards the identification of suspicious users on social networks
    Tundis, Andrea
    Muehlhaeuser, Max
    2017 INTERNATIONAL CARNAHAN CONFERENCE ON SECURITY TECHNOLOGY (ICCST), 2017,
  • [29] Multi-Language Online Handwriting Recognition
    Keysers, Daniel
    Deselaers, Thomas
    Rowley, Henry A.
    Wang, Li-Lun
    Carbune, Victor
    IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, 2017, 39 (06) : 1180 - 1194
  • [30] Evaluating Offloading Scalability Using a Multi-language Approach on Cellular Networks
    de Matos, Filipe
    Rego, Paulo A. L.
    Trinta, Fernando
    2023 IEEE 20TH CONSUMER COMMUNICATIONS & NETWORKING CONFERENCE, CCNC, 2023,