An Application of Ramsey's Theorem to Proving Programs Terminate (An Exposition)

We describe an application of Ramsey’s Theorem to proving programs terminate. This paper is self contained; it does not require knowledge of either field. Our account is based on two articles, one by B. Cook, Podelski, and Rybalchenko [5] and one by Podelski and Rybalchenko [19]. Many other papers that also used this application [3, 4, 18, 20, 21]. Termination checkers that have used this application are Terminator [2], Loopfrog [14], and ARMC [24] In the summary below we refer to Programs 1,2,3 and 4 which appear later in the paper.

[1]  Supratik Chakraborty Termination Of Linear Programs , 2008 .

[2]  Denis R. Hirschfeldt,et al.  Combinatorial principles weaker than Ramsey's Theorem for pairs , 2007, J. Symb. Log..

[3]  Carl G. Jockusch,et al.  Ramsey's theorem and recursion theory , 1972, Journal of Symbolic Logic.

[4]  Ramsey Theory,et al.  Ramsey Theory , 2020, Set Theory and Foundations of Mathematics: An Introduction to Mathematical Logic.

[5]  I. G. BONNER CLAPPISON Editor , 1960, The Electric Power Engineering Handbook - Five Volume Set.

[6]  Neil D. Jones,et al.  The size-change principle for program termination , 2001, POPL '01.

[7]  Mark Braverman,et al.  Termination of Integer Linear Programs , 2006, CAV.

[8]  E. J. Cockayne,et al.  An Application of Ramsey's Theorem , 1970, Canadian Mathematical Bulletin.

[9]  Stephen G. Simpson,et al.  Subsystems of second order arithmetic , 1999, Perspectives in mathematical logic.

[10]  Michael Codish,et al.  A Semantic Basis for the Termination Analysis of Logic Programs , 1999, J. Log. Program..

[11]  Jean-Yves Moyen,et al.  Resource control graphs , 2009, TOCL.

[12]  Andreas Podelski,et al.  Transition invariants , 2004, Proceedings of the 19th Annual IEEE Symposium on Logic in Computer Science, 2004..

[13]  Andreas Podelski,et al.  Abstraction Refinement for Termination , 2005, SAS.

[14]  Andreas Podelski,et al.  Transition Invariants and Transition Predicate Abstraction for Program Termination , 2011, TACAS.

[15]  Jean-Yves Moyen SCT and the idempotence condition , 2008 .

[16]  S. Radziszowski Small Ramsey Numbers , 2011 .

[17]  Frank Plumpton Ramsey,et al.  On a Problem of Formal Logic , 1930 .

[18]  H. Putnam,et al.  The Decision Problem for Exponential Diophantine Equations , 1961 .

[19]  Marco Riccardi Ramsey's Theorem , 2008, Formaliz. Math..

[20]  Andreas Podelski,et al.  Termination proofs for systems code , 2006, PLDI '06.

[21]  J. Michael Steele,et al.  Variations on the Monotone Subsequence Theme of Erdös and Szekeres , 1995 .

[22]  Andreas Podelski,et al.  Transition predicate abstraction and fair termination , 2005, POPL '05.

[23]  Robert W. Floyd,et al.  Assigning meaning to programs , 1967 .

[24]  J. Hammersley A few seedlings of research , 1972 .

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

[26]  Aaron Robertson,et al.  Ramsey Theory on the Integers , 2014 .

[27]  G. Szekeres,et al.  A combinatorial problem in geometry , 2009 .

[28]  D. Conlon A new upper bound for diagonal Ramsey numbers , 2006, math/0607788.

[29]  Erik Massop Hilbert's tenth problem , 2012 .

[30]  Amir M. Ben-Amram Size-change termination with difference constraints , 2008, TOPL.