English
Related papers

Related papers: An Elementary Proof of the FMP for Kleene Algebra

200 papers

This booklet serves as an introduction to Kleene Algebra (KA), a set of laws that can be used to study general equivalences between programs. It discusses how general programs can be modeled using regular expressions, how those expressions…

Programming Languages · Computer Science 2025-11-17 Tobias Kappé , Alexandra Silva , Jana Wagemaker

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é

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

Concurrent Kleene Algebra (CKA) is a formalism to study concurrent programs. Like previous Kleene Algebra extensions, developing a correspondence between denotational and operational perspectives is important, for both foundations and…

Formal Languages and Automata Theory · Computer Science 2023-02-03 Tobias Kappé , Paul Brunet , Bas Luttik , Alexandra Silva , Fabio Zanasi

In the literature on Kleene algebra, a number of variants have been proposed which impose additional structure specified by a theory, such as Kleene algebra with tests (KAT) and the recent Kleene algebra with observations (KAO), or make…

Logic in Computer Science · Computer Science 2024-08-07 Damien Pous , Jurriaan Rot , Jana Wagemaker

Concurrent Kleene Algebra (CKA) was introduced by Hoare, Moeller, Struth and Wehrman in 2009 as a framework to reason about concurrent programs. We prove that the axioms for CKA with bounded parallelism are complete for the semantics…

Formal Languages and Automata Theory · Computer Science 2023-02-03 Tobias Kappé , Paul Brunet , Alexandra Silva , Fabio Zanasi

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…

Logic · Mathematics 2008-01-16 James Worthington

We investigate the algebraic reasoning of quantum programs inspired by the success of classical program analysis based on Kleene algebra. One prominent example of such is the famous Kleene Algebra with Tests (KAT), which has furnished both…

Programming Languages · Computer Science 2022-03-30 Yuxiang Peng , Mingsheng Ying , Xiaodi Wu

We first propose algorithms for checking language equivalence of finite automata over a large alphabet. We use symbolic automata, where the transition function is compactly represented using a (multi-terminal) binary decision diagrams…

Formal Languages and Automata Theory · Computer Science 2014-07-14 Damien Pous

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

Kleene algebras with tests (KATs) offer sound, complete, and decidable equational reasoning about regularly structured programs. Interest in KATs has increased greatly since NetKAT demonstrated how well extensions of KATs with…

Programming Languages · Computer Science 2022-04-05 Michael Greenberg , Ryan Beckett , Eric Campbell

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

Kleene algebra axioms are complete with respect to both language models and binary relation models. In particular, two regular expressions recognise the same language if and only if they are universally equivalent in the model of binary…

Logic in Computer Science · Computer Science 2023-06-22 Paul Brunet , Damien Pous

Concurrent Kleene Algebra (CKA) is a mathematical formalism to study programs that exhibit concurrent behaviour. As with previous extensions of Kleene Algebra, characterizing the free model is crucial in order to develop the foundations of…

Formal Languages and Automata Theory · Computer Science 2023-02-03 Tobias Kappé , Paul Brunet , Bas Luttik , Alexandra Silva , Fabio Zanasi

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

We prove two completeness results for Kleene algebra with tests and a top element, with respect to guarded string languages and binary relations. While the equational theories of those two classes of models coincide over the signature of…

Formal Languages and Automata Theory · Computer Science 2024-10-09 Damien Pous , Jana Wagemaker

Kleene algebras (KA) and Kleene algebras with tests (KAT) provide an algebraic framework to capture the behavior of conventional programming constructs. This paper explores a broader understanding of these structures, in order to enable the…

Logic in Computer Science · Computer Science 2025-06-09 Juliana Cunha , Alexandre Madeira , Luís S. Barbosa

Kleene algebra with tests (KAT) is an algebraic framework for reasoning about the control flow of sequential programs. Generalising KAT to reason about concurrent programs is not straightforward, because axioms native to KAT in conjunction…

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

Concurrent Kleene Algebra (CKA) is a recently proposed algebraic structure by Hoare and collaborators that unifies the laws of concurrent programming. The unifying power of CKA rests largely on the so-called exchange law that describes how…

Logic in Computer Science · Computer Science 2014-10-20 Alex Horn , Jade Alglave

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
‹ Prev 1 2 3 10 Next ›