English
Related papers

Related papers: Feasibly Reducing KAT Equations to KA Equations

200 papers

Guarded Kleene Algebra with Tests (GKAT for short) is an efficient fragment of Kleene Algebra with Tests, suitable for reasoning about simple imperative while-programs. Following earlier work by Das and Pous on Kleene Algebra, we study GKAT…

Logic in Computer Science · Computer Science 2024-05-14 Jan Rooduijn , Dexter Kozen , Alexandra Silva

We aim at a holistic perspective on program logics, including Hoare and incorrectness logics. To this end, we study different classes of properties arising from the generalization of the aforementioned logics. We compare our results with…

Logic in Computer Science · Computer Science 2023-12-18 Lena Verscht , Benjamin Kaminski

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 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

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

Guarded Kleene Algebra with Tests (GKAT) is the fragment of Kleene Algebra with Tests (KAT) that arises by replacing the union and iteration operations of KAT with predicate-guarded variants. GKAT is more efficiently decidable than KAT and…

Formal Languages and Automata Theory · Computer Science 2023-06-22 Stefan Zetzsche , Alexandra Silva , Matteo Sammartino

Kleene Algebra (KA) is a useful tool for proving that two programs are equivalent. Because KA's equational theory is decidable, it integrates well with interactive theorem provers. This raises the question: which equations can we (not)…

Formal Languages and Automata Theory · Computer Science 2026-03-11 Tobias Kappé

Kleene Algebra with Tests (KAT) provides an elegant algebraic framework for describing non-deterministic finite-state computations. Using a small finite set of non-deterministic programming constructs (sequencing, non-deterministic choice,…

Programming Languages · Computer Science 2025-01-17 Balder ten Cate , Tobias Kappé

Guarded Kleene Algebra with Tests (GKAT) is an efficient fragment of KAT, as it allows for almost linear decidability of equivalence. In this paper, we study the (co)algebraic properties of GKAT. Our initial focus is on the fragment that…

Logic in Computer Science · Computer Science 2023-02-03 Todd Schmid , Tobias Kappé , Dexter Kozen , Alexandra Silva

Guarded Kleene Algebra with Tests (GKAT) is a fragment of Kleene Algebra with Tests (KAT) that was recently introduced to reason efficiently about imperative programs. In contrast to KAT, GKAT does not have an algebraic axiomatization, but…

Logic in Computer Science · Computer Science 2024-10-02 Tobias Kappé , Todd Schmid , Alexandra Silva

We present simple new Hoare logics and refinement calculi for hybrid systems in the style of differential dynamic logic. (Refinement) Kleene algebra with tests is used for reasoning about the program structure and generating verification…

Logic in Computer Science · Computer Science 2019-10-31 Simon Foster , Jonathan Julián Huerta y Munive , Georg Struth

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

Kozen and Tiuryn have introduced the substructural logic $\mathsf{S}$ for reasoning about correctness of while programs (ACM TOCL, 2003). The logic $\mathsf{S}$ distinguishes between tests and partial correctness assertions, representing…

Logic in Computer Science · Computer Science 2022-09-23 Igor Sedlár , Johann J. Wannenburg

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

A Kleene semiring is an algebraic structure satisfying the axioms of Kleene algebra, minus the annihilation axioms (x.0 = 0 = 0.x). We show that Kleene semirings (like Kleene algebras) admit the efficient elimination of various kinds of…

Logic in Computer Science · Computer Science 2014-03-18 Ernie Cohen

We study Hoare-like logics, including partial and total correctness Hoare logic, incorrectness logic, Lisbon logic, and many others through the lens of predicate transformers \`a la Dijkstra and through the lens of Kleene algebra with top…

Programming Languages · Computer Science 2024-12-02 Lena Verscht , Benjamin Lucien Kaminski

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

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é

We define the notion of a partially additive Kleene algebra, which is a Kleene algebra where the + operation need only be partially defined. These structures formalize a number of examples that cannot be handled directly by Kleene algebras.…

Logic in Computer Science · Computer Science 2007-05-23 Riccardo Pucella

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