A Verified Generational Garbage Collector for CakeML

被引:0
|
作者
Adam Sandberg Ericsson
Magnus O. Myreen
Johannes Åman Pohjola
机构
[1] Chalmers University of Technology,
[2] Data61/CSIRO,undefined
来源
Journal of Automated Reasoning | 2019年 / 63卷
关键词
Interactive theorem proving; Formal methods; Garbage collection; Compiler verification;
D O I
暂无
中图分类号
学科分类号
摘要
This paper presents the verification of a generational copying garbage collector for the CakeML runtime system. The proof is split into an algorithm proof and an implementation proof. The algorithm proof follows the structure of the informal intuition for the generational collector’s correctness, namely, a partial collection cycle in a generational collector is the same as running a full collection on part of the heap, if one views pointers to old data as non-pointers. We present a pragmatic way of dealing with ML-style mutable state, such as references and arrays, in the proofs. The development has been fully integrated into the in-logic bootstrapped CakeML compiler, which now includes command-line arguments that allow configuration of the generational collector. All proofs were carried out in the HOL4 theorem prover.
引用
收藏
页码:463 / 488
页数:25
相关论文
共 50 条
  • [1] A Verified Generational Garbage Collector for CakeML
    Ericsson, Adam Sandberg
    Myreen, Magnus O.
    Pohjola, Johannes Aman
    JOURNAL OF AUTOMATED REASONING, 2019, 63 (02) : 463 - 488
  • [2] A Verified Generational Garbage Collector for CakeML
    Ericsson, Adam Sandberg
    Myreen, Magnus O.
    Pohjola, Johannes Aman
    INTERACTIVE THEOREM PROVING (ITP 2017), 2017, 10499 : 444 - 461
  • [3] A novel design of a generational garbage collector
    Zaman, WU
    Ahmad, SA
    Abbas, A
    Qadeer, A
    ISCON 2002: IEEE STUDENTS CONFERENCE ON EMERGING TECHNOLOGIES, PROCEEDINGS, 2002, : 85 - 88
  • [4] A generational mostly-concurrent garbage collector
    Printezis, T
    Detlefs, D
    ACM SIGPLAN NOTICES, 2001, 36 (01) : 143 - 154
  • [5] A generational mostly-concurrent garbage collector
    Department of Computing Science, University of Glasgow, 17 Lilybank Gardens, Glasgow G12 8RZ, United Kingdom
    不详
    Proc. Intern. Symp. Memory Man., (143-154):
  • [6] CakeML: A Verified Implementation of ML
    Kumar, Ramana
    Myreen, Magnus O.
    Norrish, Michael
    Owens, Scott
    ACM SIGPLAN NOTICES, 2014, 49 (01) : 179 - 191
  • [7] Verified Characteristic Formulae for CakeML
    Gueneau, Armael
    Myreen, Magnus O.
    Kumar, Ramana
    Norrish, Michael
    PROGRAMMING LANGUAGES AND SYSTEMS (ESOP 2017): 26TH EUROPEAN SYMPOSIUM ON PROGRAMMING, 2017, 10201 : 584 - 610
  • [8] The verified CakeML compiler backend
    Tan, Yong Kiam
    Myreen, Magnus O.
    Kumar, Ramana
    Fox, Anthony
    Owens, Scott
    Norrish, Michael
    JOURNAL OF FUNCTIONAL PROGRAMMING, 2019, 29
  • [10] Optimal Policies for a Generational Garbage Collector with Tenuring Threshold
    Zhao, Xu-Feng
    Nakamura, Syouji
    Qian, Cun-Hua
    OPERATIONS RESEARCH AND ITS APPLICATIONS, 2010, 12 : 39 - +