Generalising KAT to verify weighted computations

11/04/2019
by   Leandro Gomes, et al.
0

Kleene algebra with tests (KAT) was introduced as an algebraic structure to model and reason about classic imperative programs, i.e. sequences of discrete transitions guarded by Boolean tests. This paper introduces two generalisations of this structure able to express programs as weighted transitions and tests with outcomes in non necessarily bivalent truth spaces: graded Kleene algebra with tests (GKAT) and a variant where tests are also idempotent (I-GKAT). On this context, and in analogy to Kozen's encoding of Propositional Hoare Logic (PHL) in KAT [22], we discuss the encoding of a graded PHL in I-GKAT and of its while-free fragment in GKAT. Moreover, to establish semantics for these structures four new algebras are defined: FSET(T), FREL(K,T) and FLANG(K,T) over complete residuated lattices K and T, and M(n,A) over a GKAT or I-GKAT A. As a final exercise, the paper discusses some program equivalence proofs in a graded context.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/01/2023

Kleene Algebra With Tests for Weighted Programs

Weighted programs generalize probabilistic programs and offer a framewor...
research
01/26/2023

A Complete Inference System for Skip-free Guarded Kleene Algebra with Tests

Guarded Kleene Algebra with Tests (GKAT) is a fragment of Kleene Algebra...
research
10/13/2021

Algebraic Reasoning of Quantum Programs via Non-Idempotent Kleene Algebra

We investigate the algebraic reasoning of quantum programs inspired by t...
research
05/06/2022

One-sorted Program Algebras

Kleene algebra with tests, KAT, provides a simple two-sorted algebraic f...
research
11/16/2018

Kleene Algebra with Observations

Kleene algebra with tests (KAT) is an algebraic framework for reasoning ...
research
05/01/2020

From Equations to Distinctions: Two Interpretations of Effectful Computations

There are several ways to define program equivalence for functional prog...
research
12/28/2021

Syntactic Regions for Concurrent Programs

In order to gain a better understanding of the state space of programs, ...

Please sign up or login with your details

Forgot password? Click here to reset