Semantics of Sets of Programs

被引:0
作者
Kim, Jin woo [1 ]
Nagy, Shaan [1 ]
Reps, Thomas [2 ]
Dantoni, Loris [1 ]
机构
[1] Univ Calif San Diego, San Diego, CA 92093 USA
[2] Univ Wisconsin Madison, Madison, WI USA
来源
PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL | 2025年 / 9卷 / OOPSLA1期
基金
美国国家科学基金会;
关键词
Unrealizability Logic; compositional semantics; infinite sets of programs;
D O I
10.1145/3720515
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Applications like program synthesis sometimes require proving that a property holds for all of the infinitely many programs described by a grammar-i.e., an inductively defined set of programs. Current verification frameworks overapproximate programs' behavior when sets of programs contain loops, including two Hoare-style logics that fail to be relatively complete when loops are allowed. In this work, we prove that compositionally verifying simple properties for infinite sets of programs requires tracking distinct program behaviors over unboundedly many executions. Tracking this information is both necessary and sufficient for verification. We prove this fact in a general, reusable theory of denotational semantics that can model the expressivity and compositionality of verification techniques over infinite sets of programs. We construct the minimal compositional semantics that captures simple properties of sets of programs and use it to derive the first sound and relatively complete Hoare-style logic for infinite sets of programs. Thus, our methods can be used to design minimally complex, compositional verification techniques for sets of programs.
引用
收藏
页数:27
相关论文
共 35 条
[1]   Syntax-Guided Synthesis [J].
Alur, Rajeev ;
Bodik, Rastislav ;
Dallal, Eric ;
Fisman, Dana ;
Garg, Pranav ;
Juniwal, Garvit ;
Kress-Gazit, Hadas ;
Madhusudan, P. ;
Martin, Milo M. K. ;
Raghothaman, Mukund ;
Saha, Shamwaditya ;
Seshia, Sanjit A. ;
Singh, Rishabh ;
Solar-Lezama, Armando ;
Torlak, Emina ;
Udupa, Abhishek .
DEPENDABLE SOFTWARE SYSTEMS ENGINEERING, 2015, 40 :1-25
[2]   Fifty years of Hoare's logic [J].
Apt, Krzysztof R. ;
Olderog, Ernst-Ruediger .
FORMAL ASPECTS OF COMPUTING, 2019, 31 (06) :751-807
[3]   Multiple Facets for Dynamic Information Flow [J].
Austin, Thomas H. ;
Flanagan, Cormac .
ACM SIGPLAN NOTICES, 2012, 47 (01) :165-177
[4]   On the Expressive Power of Languages for Static Variability [J].
Bittner, Paul Maximilian ;
Schultheiss, Alexander ;
Moosherr, Benjamin ;
Young, Jeffrey M. ;
Teixeira, Leopoldo ;
Walkingshaw, Eric ;
Ataei, Parisa ;
Thuem, Thomas .
PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2024, 8 (OOPSLA)
[5]   PROVING PROPERTIES OF PROGRAMS BY STRUCTURAL INDUCTION [J].
BURSTALL, RM .
COMPUTER JOURNAL, 1969, 12 (01) :41-&
[6]   Certified self-modifying code [J].
Cai, Hongxu ;
Shao, Zhong ;
Vaynberg, Alexander .
ACM SIGPLAN NOTICES, 2007, 42 (06) :66-77
[7]   THE CHARACTERIZATION PROBLEM FOR HOARE LOGICS [J].
CLARKE, EM .
PHILOSOPHICAL TRANSACTIONS OF THE ROYAL SOCIETY A-MATHEMATICAL PHYSICAL AND ENGINEERING SCIENCES, 1984, 312 (1522) :423-440
[8]   PROGRAMMING LANGUAGE CONSTRUCTS FOR WHICH IT IS IMPOSSIBLE TO OBTAIN GOOD HOARE AXIOM SYSTEMS [J].
CLARKE, EM .
JOURNAL OF THE ACM, 1979, 26 (01) :129-147
[9]  
Dardinier T, 2024, Arxiv, DOI [arXiv:2301.10037, 10.48550/ARXIV.2301.10037, DOI 10.48550/ARXIV.2301.10037]
[10]   The Choice Calculus: A Representation for Software Variation [J].
Erwig, Martin ;
Walkingshaw, Eric .
ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2011, 21 (01)