A Decision Tree Abstract Domain for Proving Conditional Termination

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.

[1]  Florian Zuleger,et al.  Ramsey vs. Lexicographic Termination Proving , 2013, TACAS.

[2]  Patrick Cousot,et al.  Static Analysis and Verification of Aerospace Software by Abstract Interpretation , 2010, Found. Trends Program. Lang..

[3]  Patrick Cousot,et al.  A Scalable Segmented Decision Tree Abstract Domain , 2010, Essays in Memory of Amir Pnueli.

[4]  Sagar Chaki,et al.  Boxes: A Symbolic Abstract Domain of Boxes , 2010, SAS.

[5]  Damien Massé,et al.  Policy Iteration-Based Conditional Termination and Ranking Functions , 2014, VMCAI.

[6]  Andreas Podelski,et al.  A Complete Method for the Synthesis of Linear Ranking Functions , 2004, VMCAI.

[7]  Antoine Mid The Octagon Abstract Domain , 2001 .

[8]  Henny B. Sipma,et al.  Linear Ranking with Reachability , 2005, CAV.

[9]  Pierre Ganty,et al.  Proving Termination Starting from the End , 2013, CAV.

[10]  Patrick Cousot,et al.  Static determination of dynamic properties of programs , 1976 .

[11]  Antoine Miné,et al.  The octagon abstract domain , 2001, Proceedings Eighth Working Conference on Reverse Engineering.

[12]  Bertrand Jeannet Representing and Approximating Transfer Functions in Abstract Interpretation of Hetereogeneous Datatypes , 2002, SAS.

[13]  Antoine Miné,et al.  An Abstract Domain to Infer Ordinal-Valued Ranking Functions , 2014, ESOP.

[14]  Jürgen Giesl,et al.  Automatic Termination Proofs in the Dependency Pair Framework , 2006, IJCAR.

[15]  Sumit Gulwani,et al.  Proving Conditional Termination , 2008, CAV.

[16]  Daniel Larraz,et al.  Proving termination of imperative programs using Max-SMT , 2013, 2013 Formal Methods in Computer-Aided Design.

[17]  Supratik Mukhopadhyay,et al.  Termination proofs for linear simple loops , 2013, International Journal on Software Tools for Technology Transfer.

[18]  Sagar Chaki,et al.  Combining predicate and numeric abstraction for software model checking , 2008, 2008 Formal Methods in Computer-Aided Design.

[19]  Paul Feautrier,et al.  Multi-dimensional Rankings, Program Termination, and Complexity Bounds of Flowchart Programs , 2010, SAS.

[20]  Jochen Hoenicke,et al.  Linear Ranking for Linear Lasso Programs , 2013, ATVA.

[21]  Roberto Giacobazzi,et al.  Optimal Domains for Disjunctive Abstract Intepretation , 1998, Sci. Comput. Program..

[22]  Caterina Urban,et al.  The Abstract Domain of Segmented Ranking Functions , 2013, SAS.

[23]  Henny B. Sipma,et al.  Practical Methods for Proving Program Termination , 2002, CAV.

[24]  Peter W. O'Hearn,et al.  Variance analyses from invariance analyses , 2007, POPL '07.

[25]  Sriram Sankaranarayanan,et al.  Static Analysis in Disjunctive Numerical Domains , 2006, SAS.

[26]  Patrick Cousot,et al.  An abstract interpretation framework for termination , 2012, POPL '12.

[27]  Patrick Cousot,et al.  Invited Talk: Higher Order Abstract Interpretation (and Application to Comportment Analysis Generalizing Strictness, Termination, Projection, and PER Analysis. , 1994 .

[28]  Robert W. Floyd,et al.  Assigning Meanings to Programs , 1993 .

[29]  Nicolas Halbwachs,et al.  Automatic discovery of linear restraints among variables of a program , 1978, POPL.

[30]  Zohar Manna,et al.  Time for Verification, Essays in Memory of Amir Pnueli , 2010, Essays in Memory of Amir Pnueli.

[31]  Bertrand Jeannet,et al.  Apron: A Library of Numerical Abstract Domains for Static Analysis , 2009, CAV.

[32]  Marc Brockschmidt,et al.  Better Termination Proving through Cooperation , 2013, CAV.

[33]  Henry Fuchs,et al.  On visible surface generation by a priori tree structures , 1980, SIGGRAPH '80.