Automating the Verification of Floating-Point Programs

被引:3
|
作者
Fumex, Clement [1 ,2 ,3 ,4 ]
Marche, Claude [1 ,2 ,3 ]
Moy, Yannick [4 ]
机构
[1] Univ Paris Saclay, INRIA, F-91120 Palaiseau, France
[2] CNRS, LRI, F-91405 Orsay, France
[3] Univ Paris Sud, F-91405 Orsay, France
[4] AdaCore, F-75009 Paris, France
关键词
D O I
10.1007/978-3-319-72308-2_7
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In the context of deductive program verification, handling floating-point computations is challenging. The level of proof success and proof automation highly depends on the way the floating-point operations are interpreted in the logic supported by back-end provers. We address this challenge by combining multiple techniques to separately prove different parts of the desired properties. We use abstract interpretation to compute numerical bounds of expressions, and we use multiple automated provers, relying on different strategies for representing floating-point computations. One of these strategies is based on the native support for floating-point arithmetic recently added in the SMT-LIB standard. Our approach is implemented in the Why3 environment and its front-end SPARK 2014 for the development of safety-critical Ada programs. It is validated experimentally on several examples originating from industrial use of SPARK 2014.
引用
收藏
页码:102 / 119
页数:18
相关论文
共 50 条
  • [31] Robustness Analysis of Floating-Point Programs by Self-Composition
    Chen, Liqian
    Jiang, Jiahong
    Yin, Banghu
    Dong, Wei
    Wang, Ji
    JOURNAL OF APPLIED MATHEMATICS, 2014,
  • [32] Making Proofs of Floating-Point Programs Accessible to Regular Developers
    Dross, Claire
    Kanig, Johannes
    SOFTWARE VERIFICATION, 2022, 13124 : 7 - 24
  • [33] Analyzing the impact of floating-point precision adaptation in iterative programs
    Revy, Guillaume
    2021 IEEE 28TH SYMPOSIUM ON COMPUTER ARITHMETIC (ARITH 2021), 2021, : 25 - 32
  • [34] Static Analysis on Floating-Point Programs Dealing with Division Operations
    Thushara, M. G.
    Somasundaram, K.
    INTERNATIONAL JOURNAL OF ADVANCED COMPUTER SCIENCE AND APPLICATIONS, 2019, 10 (10) : 422 - 425
  • [35] Symbolic Execution of Floating-point Programs: How far are we?
    Zhang, Guofeng
    Chen, Zhenbang
    Shuai, Ziqi
    2022 29TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE, APSEC, 2022, : 179 - 188
  • [36] Accurate Floating-point Operation using Controlled Floating-point Precision
    Zaki, Ahmad M.
    Bahaa-Eldin, Ayman M.
    El-Shafey, Mohamed H.
    Aly, Gamal M.
    2011 IEEE PACIFIC RIM CONFERENCE ON COMMUNICATIONS, COMPUTERS AND SIGNAL PROCESSING (PACRIM), 2011, : 696 - 701
  • [37] Floating-point arithmetic
    Boldo, Sylvie
    Jeannerod, Claude-Pierre
    Melquiond, Guillaume
    Muller, Jean-Michel
    ACTA NUMERICA, 2023, 32 : 203 - 290
  • [38] On floating-point summation
    Espelid, TO
    SIAM REVIEW, 1995, 37 (04) : 603 - 607
  • [39] FLOATING-POINT COMPUTATION
    STERBENZ, P
    TRANSACTIONS OF THE NEW YORK ACADEMY OF SCIENCES, 1974, 36 (06): : 591 - 591
  • [40] Floating-point tricks
    Blinn, JF
    IEEE COMPUTER GRAPHICS AND APPLICATIONS, 1997, 17 (04) : 80 - 84