Results 1  10
of
10
On Hoare Logic and Kleene Algebra with Tests
"... We show that Kleene algebra with tests (KAT) subsumes propositional Hoare logic (PHL). Thus the specialized syntax and deductive apparatus of Hoare logic are inessential and can be replaced by simple equational reasoning. In addition, we show that all relationally valid inference rules are derivable ..."
Abstract

Cited by 40 (13 self)
 Add to MetaCart
We show that Kleene algebra with tests (KAT) subsumes propositional Hoare logic (PHL). Thus the specialized syntax and deductive apparatus of Hoare logic are inessential and can be replaced by simple equational reasoning. In addition, we show that all relationally valid inference rules are derivable in KAT and that deciding the relational validity of such rules is PSPACEcomplete.
Kleene algebra with tests: Completeness and decidability
 In Proc. of 10th International Workshop on Computer Science Logic (CSL’96
, 1996
"... Abstract. Kleene algebras with tests provide a rigorous framework for equational speci cation and veri cation. They have been used successfully in basic safety analysis, sourcetosource program transformation, and concurrency control. We prove the completeness of the equational theory of Kleene alg ..."
Abstract

Cited by 22 (11 self)
 Add to MetaCart
Abstract. Kleene algebras with tests provide a rigorous framework for equational speci cation and veri cation. They have been used successfully in basic safety analysis, sourcetosource program transformation, and concurrency control. We prove the completeness of the equational theory of Kleene algebra with tests and *continuous Kleene algebra with tests over languagetheoretic and relational models. We also show decidability. Cohen's reduction of Kleene algebra with hypotheses of the form r = 0 to Kleene algebra without hypotheses is simpli ed and extended to handle Kleene algebras with tests. 1
On the Complexity of Reasoning in Kleene Algebra
 Information and Computation
, 1997
"... We study the complexity of reasoning in Kleene algebra and *continuous Kleene algebra in the presence of extra equational assumptions E; that is, the complexity of deciding the validity of universal Horn formulas E ! s = t, where E is a finite set of equations. We obtain various levels of complexi ..."
Abstract

Cited by 10 (5 self)
 Add to MetaCart
We study the complexity of reasoning in Kleene algebra and *continuous Kleene algebra in the presence of extra equational assumptions E; that is, the complexity of deciding the validity of universal Horn formulas E ! s = t, where E is a finite set of equations. We obtain various levels of complexity based on the form of the assumptions E. Our main results are: for * continuous Kleene algebra, ffl if E contains only commutativity assumptions pq = qp, the problem is \Pi 0 1 complete; ffl if E contains only monoid equations, the problem is \Pi 0 2 complete; ffl for arbitrary equations E, the problem is \Pi 1 1  complete. The last problem is the universal Horn theory of the *continuous Kleene algebras. This resolves an open question of Kozen (1994). 1 Introduction Kleene algebra (KA) is fundamental and ubiquitous in computer science. Since its invention by Kleene in 1956, it has arisen in various forms in program logic and semantics [17, 28], relational algebra [27, 32], aut...
Calculating ChurchRosser Proofs in Kleene Algebra
 Relational Methods in Computer Science, 6th International Conference, volume 2561 of LNCS
, 2002
"... We prove ChurchRosser theorems for nonsymmetric transitive relations, quasiorderings and equations in Kleene algebra. Proofs are simple, rigorous and general, using solely algebraic properties of the regular operations. They are fixed pointbased, inductionfree and often amenable to automata. The ..."
Abstract

Cited by 9 (4 self)
 Add to MetaCart
We prove ChurchRosser theorems for nonsymmetric transitive relations, quasiorderings and equations in Kleene algebra. Proofs are simple, rigorous and general, using solely algebraic properties of the regular operations. They are fixed pointbased, inductionfree and often amenable to automata. They are mere calculations as opposed to deduction and in particular suited to automation. In the ChurchRosser proofs for the calculus, the term and algebra part are cleanly separated. In all our considerations, Kleene algebra is an excellent means of abstraction.
Towards automated proof support for probabilistic distributed systems
 In Proceedings of Logic for Programming and Automated Reasoning, volume 3835 of LNAI
, 2005
"... Abstract. The mechanisation of proofs for probabilistic systems is particularly challenging due to the verification of realvalued properties that probability entails: experience indicates [12, 4, 11] that there are many difficulties in automating realnumber arithmetic in the context of other progr ..."
Abstract

Cited by 8 (5 self)
 Add to MetaCart
Abstract. The mechanisation of proofs for probabilistic systems is particularly challenging due to the verification of realvalued properties that probability entails: experience indicates [12, 4, 11] that there are many difficulties in automating realnumber arithmetic in the context of other program features. In this paper we propose a framework for verification of probabilistic distributed systems based on the generalisation of Kleene algebra with tests that has been used as a basis for development of concurrency control in standard programming [7]. We show that verification of realvalued properties in these systems can be considerably simplified, and moreover that there is an interpretation which is susceptible to counterexample search via state exploration, despite the underlying realnumber domain. 1
On Hoare logic, Kleene algebra, and types
 Computer Science Department, Cornell University
, 1999
"... We show that propositional Hoare logic is subsumed by the type calculus of typed Kleene algebra augmented with subtypes and typecasting. Assertions are interpreted as typecast operators. Thus Hoarestyle reasoning with partial correctness assertions reduces to typechecking in this system. 1 ..."
Abstract

Cited by 4 (1 self)
 Add to MetaCart
We show that propositional Hoare logic is subsumed by the type calculus of typed Kleene algebra augmented with subtypes and typecasting. Assertions are interpreted as typecast operators. Thus Hoarestyle reasoning with partial correctness assertions reduces to typechecking in this system. 1
MyhillNerode relations on automatic systems and the completeness of Kleene algebra
 In STACS 2001 (Dresden), volume 2010 of Lecture
"... Abstract. It is well known that finite square matrices over a Kleene algebra again form a Kleene algebra. This is also true for infinite matrices under suitable restrictions. One can use this fact to solve certain infinite systems of inequalities over a Kleene algebra. Automatic systems are a specia ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
Abstract. It is well known that finite square matrices over a Kleene algebra again form a Kleene algebra. This is also true for infinite matrices under suitable restrictions. One can use this fact to solve certain infinite systems of inequalities over a Kleene algebra. Automatic systems are a special class of infinite systems that can be viewed as infinitestate automata. Automatic systems can be collapsed using Myhill–Nerode relations in much the same way that finite automata can. The Brzozowski derivative on an algebra of polynomials over a Kleene algebra gives rise to a triangular automatic system that can be solved using these methods. This provides an alternative method for proving the completeness of Kleene algebra. 1
Kleene Monads: Handling Iteration in a Framework of Generic Effects
"... Abstract. Monads are a wellestablished tool for modelling various computational effects. They form the semantic basis of Moggi’s computational metalanguage, the metalanguage of effects for short, which made its way into modern functional programming in the shape of Haskell’s donotation. Standard c ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
Abstract. Monads are a wellestablished tool for modelling various computational effects. They form the semantic basis of Moggi’s computational metalanguage, the metalanguage of effects for short, which made its way into modern functional programming in the shape of Haskell’s donotation. Standard computational idioms call for specific classes of monads that support additional control operations. Here, we introduce Kleene monads, which additionally feature nondeterministic choice and Kleene star, i.e. nondeterministic iteration, and we provide a metalanguage and a sound calculus for Kleene monads, the metalanguage of control and effects, which is the natural joint extension of Kleene algebra and the metalanguage of effects. This provides a framework for studying abstract program equality focussing on iteration and effects. These aspects are known to have decidable equational theories when studied in isolation. However, it is well known that decidability breaks easily; e.g. the Horn theory of continuous Kleene algebras fails to be recursively enumerable. Here, we prove several negative results for the metalanguage of control and effects; in particular, already the equational theory of the unrestricted metalanguage of control and effects over continuous Kleene monads fails to be recursively enumerable. We proceed to identify a fragment of this language which still contains both Kleene algebra and the metalanguage of effects and for which the natural axiomatisation is complete, and indeed the equational theory is decidable. 1
NetKAT: Semantic foundations for networks
 In POPL
, 2014
"... Recent years have seen growing interest in highlevel languages for programming networks. But the design of these languages has been largely ad hoc, driven more by the needs of applications and the capabilities of network hardware than by foundational principles. The lack of a semantic foundation ha ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
Recent years have seen growing interest in highlevel languages for programming networks. But the design of these languages has been largely ad hoc, driven more by the needs of applications and the capabilities of network hardware than by foundational principles. The lack of a semantic foundation has left language designers with little guidance in determining how to incorporate new features, and programmers without a means to reason precisely about their code. This paper presents NetKAT, a new network programming language that is based on a solid mathematical foundation and comes equipped with a sound and complete equational theory. We describe the design of NetKAT, including primitives for filtering, modifying, and transmitting packets; union and sequential composition operators; and a Kleene star operator that iterates programs. We show that NetKAT is an instance of a canonical and wellstudied mathematical structure called a Kleene algebra with tests (KAT) and prove that its equational theory is sound and complete with respect to its denotational semantics. Finally, we present practical applications of the equational theory including syntactic techniques for checking reachability, proving noninterference properties that ensure isolation between programs, and establishing the correctness of compilation algorithms.
speci cation techniques � F.3.2 [Logics and Meanings of Programs]: Semantics of Programming
"... We introduce Kleene algebra with tests, an equational system for manipulating programs. We give a purely equational proof, using Kleene algebra with tests and commutativity conditions, of the following classical result: every while program can be simulated by awhile program with at most one while lo ..."
Abstract
 Add to MetaCart
We introduce Kleene algebra with tests, an equational system for manipulating programs. We give a purely equational proof, using Kleene algebra with tests and commutativity conditions, of the following classical result: every while program can be simulated by awhile program with at most one while loop. The proof illustrates the use of Kleene algebra with tests and commutativity conditions in program equivalence proofs.