Kleene Algebra Modulo Theories

07/10/2017
by   Ryan Beckett, et al.
0

Kleene algebras with tests (KATs) offer sound, complete, and decidable equational reasoning about regularly structured programs. Since NetKAT demonstrated how well various extensions of KATs apply to computer networks, interest in KATs has increased greatly. Unfortunately, extending a KAT to a particular domain by adding custom primitives, proving its equational theory sound and complete, and coming up with efficient automata-theoretic implementations is still an expert's task. We present a general framework for deriving KATs we call Kleene algebra modulo theories: given primitives and notions of state, we can automatically derive a corresponding KAT's semantics, prove its equational theory sound and complete, and generate an automata-based implementation of equivalence checking. Our framework is based on pushback, a way of specifying how predicates and actions interact, first used in Temporal NetKAT. We offer several case studies, including theories for bitvectors, increasing natural numbers, unbounded sets and maps, temporal logic, and network protocols. Finally, we provide an OCaml implementation that closely matches the theory: with only a few declarations, users can automatically derive an automata-theoretic decision procedure for a KAT.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/16/2021

Guarded Kleene Algebra with Tests: Coequations, Coinduction, and Completeness

Guarded Kleene Algebra with Tests (GKAT) is an efficient fragment of KAT...
research
05/02/2023

Probabilistic Guarded KAT Modulo Bisimilarity: Completeness and Complexity

We introduce Probabilistic Guarded Kleene Algebra with Tests (ProbGKAT),...
research
05/26/2023

Complete Multiparty Session Type Projection with Automata

Multiparty session types (MSTs) are a type-based approach to verifying c...
research
07/31/2023

Decision Procedures for Sequence Theories (Technical Report)

Sequence theories are an extension of theories of strings with an infini...
research
02/13/2016

Mathematical Theory Exploration in Theorema: Reduction Rings

In this paper we present the first-ever computer formalization of the th...
research
03/08/2000

E-RES: A System for Reasoning about Actions, Events and Observations

E-RES is a system that implements the Language E, a logic for reasoning ...
research
03/27/2023

Inference Rules for Binary Predicates in a Multigranular Framework

In a multigranular framework, the two most important binary predicates a...

Please sign up or login with your details

Forgot password? Click here to reset