Automatic Proof Generation in Kleene Algebra with Tests
No Access Until
Permanent Link(s)
Other Titles
Author(s)
Abstract
Kleene algebra (KA) is the algebra of regular events. Familiar examples of Kleene algebras include regular sets, relational algebras, and trace algebras. A Kleene algebra with tests (KAT) is a Kleene algebra with an embedded Boolean subalgebra. The addition of tests allows one to encode while programs as KAT terms, thus the equational theory of KAT can express (propositional) program equivalence. More complicated statements about programs can be expressed in the Hoare theory of KAT, which suffices to encode Propositional Hoare Logic. In this paper, we prove the following results. First, there is a PSPACE transducer which takes equations of Kleene Algebra as input and outputs Hilbert-style proofs of them in an equational implication calculus. Second, we give a feasible reduction from the equational theory of KAT to the equational theory of KA. Combined with the fact that the Hoare theory of KAT reduces efficiently to the equational theory of KAT, this yields an algorithm capable of generating proofs of a large class of statements about programs.