Results 1  10
of
11
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 59 (13 self)
 Add to MetaCart
(Show Context)
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 37 (16 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
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 34 (15 self)
 Add to MetaCart
(Show Context)
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.
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 13 (5 self)
 Add to MetaCart
(Show Context)
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...
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 12 (8 self)
 Add to MetaCart
(Show Context)
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
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 10 (4 self)
 Add to MetaCart
(Show Context)
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.
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 6 (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
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 5 (1 self)
 Add to MetaCart
(Show Context)
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
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 4 (1 self)
 Add to MetaCart
(Show Context)
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
Abstractions for Softwaredefined Networks
, 2015
"... In a SoftwareDefined Network (SDN), a central, computationally powerful controller manages a set of distributed, computationally simple switches. The controller computes a policy describing how each switch should route packets and populates packetprocessing tables on each switch with rules to ena ..."
Abstract
 Add to MetaCart
(Show Context)
In a SoftwareDefined Network (SDN), a central, computationally powerful controller manages a set of distributed, computationally simple switches. The controller computes a policy describing how each switch should route packets and populates packetprocessing tables on each switch with rules to enact the routing policy. As network conditions change, the controller continues to add and remove rules from switches to adjust the policy as needed. Recently, the SDN landscape has begun to change as several proposals for new, reconfigurable switching architectures, such as RMT [6] and FlexPipe [42], have emerged. These platforms provide switch programmers with many flexible tables for storing packetprocessing rules, and they offer programmers control over the packet fields that each table can analyze and act on. These reconfigurable switch architectures support a richer SDN model in which a switch configuration phase precedes the rule population phase [5]. In the configuration phase, the controller sends the switch a graph describing the layout and capabilities of the packet processing tables it will