Auto-Active Proof of Red-Black Trees in SPARK

被引:14
|
作者
Dross, Claire [1 ]
Moy, Yannick [1 ]
机构
[1] AdaCore, F-75009 Paris, France
来源
关键词
D O I
10.1007/978-3-319-57288-8_5
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
Formal program verification can guarantee that a program is free from broad classes of errors (like reads of uninitialized data and run-time errors) and that it complies with its specification. Tools such as SPARK make it cost effective to target the former in an industrial context, but the latter is much less common in industry, owing to the cost of specifying the behavior of programs and even more the cost of achieving proof of such specifications. We have chosen in SPARK to rely on the techniques of auto-active verification for providing cost effective formal verification of functional properties. These techniques consist in providing annotations in the source code that will be used by automatic provers to complete the proof. To demonstrate the potential of this approach, we have chosen to formally specify a library of red-black trees in SPARK, and to prove its functionality using auto-active verification. To the best of our knowledge, this is the most complex use of auto-active verification so far.
引用
收藏
页码:68 / 83
页数:16
相关论文
共 50 条
  • [1] An Assertional Proof of Red-Black Trees Using Dafny
    Pena, Ricardo
    [J]. JOURNAL OF AUTOMATED REASONING, 2020, 64 (04) : 767 - 791
  • [2] RED-BLACK TREES
    SCHNEIER, B
    [J]. DR DOBBS JOURNAL, 1992, 17 (04): : 42 - &
  • [3] Relativistic red-black trees
    Howard, Philip W.
    Walpole, Jonathan
    [J]. CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2014, 26 (16): : 2684 - 2712
  • [4] Red-black trees with types
    Kahrs, S
    [J]. JOURNAL OF FUNCTIONAL PROGRAMMING, 2001, 11 : 425 - 432
  • [5] Relaxed balanced red-black trees
    Hanke, S
    Ottmann, T
    Soisalon-Soininen, E
    [J]. ALGORITHMS AND COMPLEXITY, 1997, 1203 : 193 - 204
  • [6] Group updates for red-black trees
    Hanke, S
    Soisalon-Soininen, E
    [J]. ALGORITHMS AND COMPLEXITY, 2000, 1767 : 253 - 262
  • [7] Parallel algorithms for red-black trees
    Park, H
    Park, K
    [J]. THEORETICAL COMPUTER SCIENCE, 2001, 262 (1-2) : 415 - 435
  • [8] STL's red-black trees
    Shankel, J
    [J]. DR DOBBS JOURNAL, 1998, 23 (04): : 54 - +
  • [9] Relaxed red-black trees with group updates
    Larsen, KS
    [J]. ACTA INFORMATICA, 2002, 38 (08) : 565 - 586
  • [10] HOW COSTLY CAN RED-BLACK TREES BE
    CAMERON, H
    WOOD, D
    [J]. LECTURE NOTES IN COMPUTER SCIENCE, 1991, 497 : 117 - 126