Automated Verification of Fundamental Algebraic Laws

被引:4
作者
Zakhour, George [1 ]
Weisenburger, Pascal [1 ]
Salvaneschi, Guido [1 ]
机构
[1] Univ St Gallen, St Gallen, Switzerland
来源
PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL | 2024年 / 8卷 / PLDI期
基金
芬兰科学院; 瑞士国家科学基金会;
关键词
Algebraic Properties; Type Systems; Verification; SPECIFICATIONS; PROOFS;
D O I
10.1145/3656408
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Algebraic laws of functions in mathematics - such as commutativity, associativity, and idempotence - are often used as the basis to derive more sophisticated properties of complex mathematical structures and are heavily used in abstract computational thinking. Algebraic laws of functions in coding, however, are rarely considered. Yet, they are essential. For example, commutativity and associativity are crucial to ensure correctness of a variety of software systems in numerous domains, such as compiler optimization, big data processing, data flow processing, machine learning or distributed algorithms and data structures. Still, most programming languages lack built-in mechanisms to enforce and verify that operations adhere to such properties. In this paper, we propose a verifier specialized on a set of fundamental algebraic laws that ensures that such laws hold in application code. The verifier can conjecture auxiliary properties and can reason about both equalities and inequalities of expressions, which is crucial to prove a given property when other competitors do not succeed. We implement these ideas in the Propel verifier. Our evaluation against five state-of-the-art verifiers on a total of 142 instances of algebraic properties shows that Propel is able to automatically deduce algebraic properties in different domains that rely on such properties for correctness, even in cases where competitors fail to verify the same properties or time out.
引用
收藏
页数:24
相关论文
共 50 条
  • [41] Modular and Automated Type-Soundness Verification for Language Extensions
    Lorenzen, Florian
    Erdweg, Sebastian
    ACM SIGPLAN NOTICES, 2013, 48 (09) : 331 - 342
  • [42] Automated system of smart ammeter verification based on mobile robot
    Tian, Heming
    Wang, Jianwen
    Xu, Wenfu
    Zhao, Wang
    Yang, Yibo
    Liang, Haipeng
    Shi, Weiren
    2014 11TH WORLD CONGRESS ON INTELLIGENT CONTROL AND AUTOMATION (WCICA), 2014, : 3094 - 3099
  • [43] An Automated Verification Workflow for Planned Lighting Setups using BIM
    Walch, Andreas
    Kroesl, Katharina
    Luksch, Christian
    Pichler, Davidyyyy
    Pipp, Thomas
    Schwaerzler, Michael
    EXPANDING CITIES - DIMINISHING SPACE: ARE SMART CITIES THE SOLUTION OR PART OF THE PROBLEM OF CONTINUOUS URBANISATION AROUND THE GLOBE? (REAL CORP 2018), 2018, : 55 - 65
  • [44] POSTER: Towards Precise and Automated Verification of Security Protocols in Coq
    Palombo, Hernan M.
    Zheng, Hao
    Ligatti, Jay
    CCS'17: PROCEEDINGS OF THE 2017 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2017, : 2567 - 2569
  • [45] Automated Mitigation of Frame Problem in UML Class Diagram Verification
    Viesca, Antonio Rosales
    Al Lail, Mustafa
    2023 ACM/IEEE INTERNATIONAL CONFERENCE ON MODEL DRIVEN ENGINEERING LANGUAGES AND SYSTEMS COMPANION, MODELS-C, 2023, : 841 - 850
  • [46] A Framework for Network Security Verification of Automated Vehicles in the Agricultural Domain
    Gaggero, Giovanni Battista
    Fausto, Alessandro
    Patrone, Fabio
    Marchese, Mario
    PROCEEDINGS OF 26TH INTERNATIONAL CONFERENCE ELECTRONICS 2022, 2022,
  • [47] Case studies on automated verification with slope boundaries for block diagrams
    Dernehl, Christian
    Kuehn, Jan
    Kowalewski, Stefan
    COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2018, 54 : 528 - 543
  • [48] Fundamental Considerations around Scenario-Based Testing for Automated Driving
    Neurohr, Christian
    Westhofen, Lukas
    Henning, Tabea
    de Graaff, Thies
    Moehlmann, Eike
    Boede, Eckard
    2020 IEEE INTELLIGENT VEHICLES SYMPOSIUM (IV), 2020, : 121 - 127
  • [49] Certified Verification of Algebraic Properties on Low-Level Mathematical Constructs in Cryptographic Programs
    Tsai, Ming-Hsien
    Wang, Bow-Yaw
    Yang, Bo-Yin
    CCS'17: PROCEEDINGS OF THE 2017 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2017, : 1973 - 1987
  • [50] ICSH guidelines for the verification and performance of automated cell counters for body fluids
    Bourner, G.
    De la Salle, B.
    George, T.
    Tabe, Y.
    Baum, H.
    Culp, N.
    Keng, T. B.
    INTERNATIONAL JOURNAL OF LABORATORY HEMATOLOGY, 2014, 36 (06) : 598 - 612