A decision tree abstract domain for proving conditional termination

被引:40
|
作者
Urban, Caterina [1 ]
Miné, Antoine [1 ]
机构
[1] ÉNS & CNRS & INRIA, France
关键词
Artificial intelligence - Computers;
D O I
10.1007/978-3-319-10936-7_19
中图分类号
学科分类号
摘要
We present a new parameterized abstract domain able to refine existing numerical abstract domains with finite disjunctions. The elements of the abstract domain are decision trees where the decision nodes are labeled with linear constraints, and the leaf nodes belong to a numerical abstract domain. The abstract domain is parametric in the choice between the expressivity and the cost of the linear constraints for the decision nodes (e.g., polyhedral or octagonal constraints), and the choice of the abstract domain for the leaf nodes. We describe an instance of this domain based on piecewise-defined ranking functions for the automatic inference of sufficient preconditions for program termination. We have implemented a static analyzer for proving conditional termination of programs written in (a subset of) ʗ and, using experimental evidence, we show that it performs well on a wide variety of benchmarks, it is competitive with the state of the art and is able to analyze programs that are out of the reach of existing methods. © Springer International Publishing Switzerland 2014.
引用
收藏
页码:302 / 318
相关论文
共 50 条
  • [41] METHODOLOGY FOR PROVING THE TERMINATION OF LOGIC PROGRAMS
    WANG, B
    SHYAMASUNDAR, RK
    LECTURE NOTES IN COMPUTER SCIENCE, 1991, 480 : 214 - 227
  • [42] Proving Termination of Programs Automatically with AProVE
    Giesl, Juergen
    Brockschmidt, Marc
    Emmes, Fabian
    Frohn, Florian
    Fuhs, Carsten
    Otto, Carsten
    Pluecker, Martin
    Schneider-Kamp, Peter
    Stroeder, Thomas
    Swiderski, Stephanie
    Thiemann, Rene
    AUTOMATED REASONING, IJCAR 2014, 2014, 8562 : 184 - 191
  • [43] On proving Cε-termination of rewriting by size-change termination
    Fernández, ML
    INFORMATION PROCESSING LETTERS, 2005, 93 (04) : 155 - 162
  • [44] Proving termination assertions in dynamic logics
    Leivant, D
    19TH ANNUAL IEEE SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE, PROCEEDINGS, 2004, : 89 - 98
  • [45] Advances in Proving Program Termination and Liveness
    Cook, Byron
    AUTOMATED DEDUCTION - CADA-23, 2011, 6803 : 4 - 4
  • [46] Proving Termination of C Programs with Lists
    Hensel, Jera
    Giesl, Juergen
    AUTOMATED DEDUCTION, CADE 29, 2023, 14132 : 266 - 285
  • [47] EXTENSIONS OF ARITHMETIC FOR PROVING TERMINATION OF COMPUTATIONS
    KENT, CF
    HODGSON, BR
    JOURNAL OF SYMBOLIC LOGIC, 1989, 54 (03) : 779 - 794
  • [48] Proving termination of programs automatically with AProVE
    Giesl, Jürgen
    Brockschmidt, Marc
    Emmes, Fabian
    Frohn, Florian
    Fuhs, Carsten
    Otto, Carsten
    Plücker, Martin
    Schneider-Kamp, Peter
    Ströder, Thomas
    Swiderski, Stephanie
    Thiemann, René
    Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2014, 8562 LNAI : 184 - 191
  • [49] PROVING TERMINATION OF GENERAL PROLOG PROGRAMS
    APT, KR
    PEDRESCHI, D
    LECTURE NOTES IN COMPUTER SCIENCE, 1991, 526 : 265 - 289
  • [50] Proving Termination of Integer Term Rewriting
    Fuhs, Carsten
    Giesl, Juergen
    Pluecker, Martin
    Schneider-Kamp, Peter
    Falke, Stephan
    REWRITING TECHNIQUES AND APPLICATIONS, 2009, 5595 : 32 - +