Automated Reasoning in Kleene Algebra

It has often been claimed that model checking, special purpose automated deduction or interactive theorem proving are needed for formal program development. We demonstrate that off-the-shelf automated proof and counterexample search is an interesting alternative if combined with the right domain model. We implement variants of Kleene algebras axiomatically in Prover9/Mace4 and perform proof experiments about Hoare, dynamic, temporal logics, concurrency control and termination analysis. They confirm that a simple automated analysis of some important program properties is possible. Particular benefits of this approach include "soft" model checking in a first-order setting, cross-theory reasoning between standard formalisms and full automation of some (co)inductive arguments. Kleene algebras might therefore provide light-weight formal methods with heavy-weight automation.

[1]  Ullrich Hustadt,et al.  Resolution-Based Methods for Modal Logics , 2000, Log. J. IGPL.

[2]  Ernie Cohen,et al.  Separation and Reduction , 2000, MPC.

[3]  Gunther Schmidt,et al.  Relational Methods in Computer Science , 1999, Inf. Sci..

[4]  Jerzy Tiuryn,et al.  Dynamic logic , 2001, SIGA.

[5]  Georg Struth,et al.  Can Refinement be Automated? , 2008, REFINE@IFM.

[6]  Georg Struth,et al.  Abstract abstract reduction , 2006, J. Log. Algebraic Methods Program..

[7]  J. Conway Regular algebra and finite machines , 1971 .

[8]  Jürgen Stuber Superposition theorem proving for commutative algebraic theories , 2000 .

[9]  Zohar Manna,et al.  The Temporal Logic of Reactive and Concurrent Systems , 1991, Springer New York.

[10]  Uwe Waldmann Cancellative Abelian monoids in refutational theorem proving , 1997 .

[11]  Georg Struth,et al.  Kleene Modules , 2003, RelMiCS.

[12]  M. de Rijke,et al.  Modal Logic , 2001, Cambridge Tracts in Theoretical Computer Science.

[13]  Wolfram Kahl,et al.  Calculational Relation-Algebraic Proofs in Isabelle/Isar , 2003, RelMiCS.

[14]  Tobias Nipkow,et al.  More Church-Rosser Proofs (in Isabelle/HOL) , 1996, CADE.

[15]  Georg Struth,et al.  Algebras of modal operators and partial correctness , 2006, Theor. Comput. Sci..

[16]  Dexter Kozen A Completeness Theorem for Kleene Algebras and the Algebra of Regular Events , 1994, Inf. Comput..

[17]  Burghard von Karger,et al.  Temporal algebra , 1998, Mathematical Structures in Computer Science.

[18]  Jörg H. Siekmann,et al.  8th International Conference on Automated Deduction , 1986, Lecture Notes in Computer Science.

[19]  Terese Term rewriting systems , 2003, Cambridge tracts in theoretical computer science.

[20]  Nachum Dershowitz,et al.  Commutation, Transformation, and Termination , 1986, CADE.

[21]  Dexter Kozen,et al.  KAT-ML: an interactive theorem prover for Kleene algebra with tests , 2006, J. Appl. Non Class. Logics.

[22]  Yde Venema,et al.  Dynamic Logic by David Harel, Dexter Kozen and Jerzy Tiuryn. The MIT Press, Cambridge, Massachusetts. Hardback: ISBN 0–262–08289–6, $50, xv + 459 pages , 2002, Theory and Practice of Logic Programming.

[23]  M. de Rijke,et al.  Encoding Two-Valued Nonclassical Logics in Classical Logic , 2001, Handbook of Automated Reasoning.

[24]  Georg Struth,et al.  Calculating Church-Rosser Proofs in Kleene Algebra , 2001, RelMiCS.

[25]  Georg Struth,et al.  Diagram Chase in Relational System Development , 2005, VLFM.

[26]  Dexter Kozen On Hoare logic and Kleene algebra with tests , 2000, TOCL.

[27]  Tobias Nipkow More Church–Rosser Proofs , 2004, Journal of Automated Reasoning.

[28]  Georg Struth,et al.  Relational and Kleene-Algebraic Methods in Computer Science , 2003, Lecture Notes in Computer Science.

[29]  Georg Struth,et al.  Kleene algebra with domain , 2003, TOCL.