English
Related papers

Related papers: A cyclic proof system for Guarded Kleene Algebra w…

200 papers

Kleene algebra with tests (KAT) is an equational system for program verification, which is the combination of Boolean algebra (BA) and Kleene algebra (KA), the algebra of regular expressions. In particular, KAT subsumes the propositional…

Formal Languages and Automata Theory · Computer Science 2012-10-10 Ricardo Almeida , Sabine Broda , Nelma Moreira

Kleene algebra with tests is an extension of Kleene algebra, the algebra of regular expressions, which can be used to reason about programs. We develop a coalgebraic theory of Kleene algebra with tests, along the lines of the coalgebraic…

Logic in Computer Science · Computer Science 2007-05-23 Hubie Chen , Riccardo Pucella

TopKAT is the algebraic theory of Kleene algebra with tests (KAT) extended with a top element. Compared to KAT, one pleasant feature of TopKAT is that, in relational models, the top element allows us to express the domain and codomain of a…

Programming Languages · Computer Science 2024-04-30 Cheng Zhang , Arthur Azevedo de Amorim , Marco Gaboardi

Local Completeness Logic (LCL) has been put forward as a program logic for proving both the correctness and incorrectness of program specifications. LCL is an abstract logic, parameterized by an abstract domain that allows combining over-…

Logic in Computer Science · Computer Science 2022-08-26 Marco Milanese , Francesco Ranzato

We propose a cut-free cyclic system for Transitive Closure Logic (TCL) based on a form of hypersequents, suitable for automated reasoning via proof search. We show that previously proposed sequent systems are cut-free incomplete for basic…

Logic in Computer Science · Computer Science 2022-05-19 Anupam Das , Marianna Girlando

Kleene algebra (KA) is an important tool for reasoning about general program equivalences, with a decidable and complete equational theory. However, KA cannot always prove equivalences between specific programs. For this purpose, one adds…

Programming Languages · Computer Science 2026-01-21 Liam Chung , Tobias Kappé

General program equivalence is undecidable. However, if we abstract away the semantics of statements, then this problem becomes not just decidable, but practically feasible. For instance, a program of the form "if $b$ then $e$ else $f$"…

Programming Languages · Computer Science 2025-07-11 Tobias Kappé

In the literature on Kleene algebra (KA), a number of variants have been proposed such as Kleene algebra with tests, commutative KA, bi-KA, and concurrent KA. The equational theories of some of these structures have then been studied in the…

Logic in Computer Science · Computer Science 2026-05-19 Lukas Mulder , Damien Pous , Jana Wagemaker

We present a Coq library about Kleene algebra with tests, including a proof of their completeness over the appropriate notion of languages, a decision procedure for their equational theory, and tools for exploiting hypotheses of a…

Logic in Computer Science · Computer Science 2013-02-08 Damien Pous

We study versions of Kleene algebra with dynamic tests, that is, extensions of Kleene algebra with domain and antidomain operators. We show that Kleene algebras with tests and Propositional dynamic logic correspond to special cases of the…

Logic in Computer Science · Computer Science 2023-11-14 Igor Sedlár

We introduce partially observable concurrent Kleene algebra (POCKA), an algebraic framework to reason about concurrent programs with control structures, such as conditionals and loops. POCKA enables reasoning about programs that can access…

Logic in Computer Science · Computer Science 2023-02-06 Jana Wagemaker , Paul Brunet , Simon Docherty , Tobias Kappé , Jurriaan Rot , Alexandra Silva

We propose a generalisation of concurrent Kleene algebra \cite{Hoa09} that can take account of probabilistic effects in the presence of concurrency. The algebra is proved sound with respect to a model of automata modulo a variant of rooted…

Formal Languages and Automata Theory · Computer Science 2013-01-31 Annabelle McIver , Tahiry Rabehaja , Georg Struth

We study Kleene iteration in the categorical context. A celebrated completeness result by Kozen introduced Kleene algebra (with tests) as a ubiquitous tool for lightweight reasoning about program equivalence, and yet, numerous variants of…

Logic in Computer Science · Computer Science 2024-07-19 Sergey Goncharov , Tarmo Uustalu

Building on \'Esik and Kuich's completeness result for finitely weighted Kleene algebra, we establish relational and language completeness results for finitely weighted Kleene algebra with tests. Similarly as \'Esik and Kuich, we assume…

Logic in Computer Science · Computer Science 2024-07-11 Igor Sedlár

We exhibit a uniform method for obtaining (wellfounded and non-wellfounded) cut-free sequent-style proof systems that are sound and complete for various classes of action algebras, i.e., Kleene algebras enriched with meets and residuals.…

Logic in Computer Science · Computer Science 2025-01-31 Wesley Fussner , Simon Santschi , Borja Sierra Miranda

We explore the consequences of layering a Lambek proof system over an arbitrary (constraint) logic. A simple model-theoretic semantics for our hybrid language is provided for which a particularly simple combination of Lambek's and the proof…

cmp-lg · Computer Science 2008-02-03 Jochen Doerre , Suresh Manandhar

Concurrent Kleene Algebra (CKA) extends basic Kleene algebra with a parallel composition operator, which enables reasoning about concurrent programs. However, CKA fundamentally misses tests, which are needed to model standard programming…

Logic in Computer Science · Computer Science 2023-02-03 Tobias Kappé , Paul Brunet , Alexandra Silva , Jana Wagemaker , Fabio Zanasi

We present a reflexive tactic for deciding the equational theory of Kleene algebras in the Coq proof assistant. This tactic relies on a careful implementation of efficient finite automata algorithms, so that it solves casual equations…

Logic in Computer Science · Computer Science 2015-07-01 Thomas Braibant , Damien Pous

We introduce a formal language for specifying dynamic updates for Software Defined Networks. Our language builds upon Network Kleene Algebra with Tests (NetKAT) and adds constructs for synchronisations and multi-packet behaviour to capture…

Networking and Internet Architecture · Computer Science 2021-05-25 Georgiana Caltais , Hossein Hojjat , Mohammad Mousavi , Hunkar Can Tunc

Concurrent Kleene Algebra is an elegant tool for equational reasoning about concurrent programs. An important feature of concurrent programs that is missing from CKA is the ability to restrict legal interleavings. To remedy this we extend…

Logic in Computer Science · Computer Science 2020-05-07 Paul Brunet , David Pym