English
Related papers

Related papers: MatchKAT: An Algebraic Foundation For Match-Action

200 papers

We introduce Concurrent NetKAT (CNetKAT), an extension of NetKAT with operators for specifying and reasoning about concurrency in scenarios where multiple packets interact through state. We provide a model of the language based on…

Programming Languages · Computer Science 2023-02-03 Jana Wagemaker , Nate Foster , Tobias Kappé , Dexter Kozen , Jurriaan Rot , Alexandra Silva

We tackle the problem of deciding whether two probabilistic programs are equivalent in Probabilistic NetKAT, a formal language for specifying and reasoning about the behavior of packet-switched networks. We show that the problem is…

Programming Languages · Computer Science 2018-03-28 Steffen Smolka , Praveen Kumar , Nate Foster , Justin Hsu , David Kahn , Dexter Kozen , Alexandra Silva

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

NetKAT is a domain-specific programming language and logic that has been successfully used to specify and verify the behavior of packet-switched networks. This paper develops techniques for automatically learning NetKAT models of unknown…

Programming Languages · Computer Science 2025-05-26 Mark Moeller , Tiago Ferreira , Thomas Lu , Nate Foster , Alexandra Silva

Programmability and verifiability lie at the heart of the software-defined networking paradigm. While OpenFlow and its match-action concept provide primitive operations to manipulate hardware configurations, over the last years, several…

Networking and Internet Architecture · Computer Science 2016-12-01 Kim G. Larsen , Stefan Schmid , Bingtian Xue

We develop StacKAT, a network verification language featuring loops, finite state variables, nondeterminism, and - most importantly - access to a stack with accompanying push and pop operations. By viewing the variables and stack as the…

Programming Languages · Computer Science 2025-06-17 Jules Jacobs , Nate Foster , Tobias Kappé , Dexter Kozen , Lily Saada , Alexandra Silva , Jana Wagemaker

We introduce weighted NetKAT, a domain-specific language for modeling and verifying quantitative network properties. The language is parametric on a semiring, enabling the treatment of a wide range of quantities in a uniform way. We provide…

Programming Languages · Computer Science 2026-04-16 Emmanuel Suárez Acevedo , Tiago Ferreira , Kevin Batz , Oliver Bøving , Nate Foster , Alexandra Silva

This paper presents McNetKAT, a scalable tool for verifying probabilistic network programs. McNetKAT is based on a new semantics for the guarded and history-free fragment of Probabilistic NetKAT in terms of finite-state, absorbing Markov…

Programming Languages · Computer Science 2019-04-18 Steffen Smolka , Praveen Kumar , David M Kahn , Nate Foster , Justin Hsu , Dexter Kozen , Alexandra Silva

A common requirement in policy specification languages is the ability to map policies to the underlying network devices. Doing so, in a provably correct way, is important in a security policy context, so administrators can be confident of…

Cryptography and Security · Computer Science 2016-05-31 Dinesha Ranathunga , Matthew Roughan , Phil Kernick , Nick Falkner

We propose an extension of the join calculus with pattern matching on algebraic data types. Our initial motivation is twofold: to provide an intuitive semantics of the interaction between concurrency and pattern matching; to define a…

Programming Languages · Computer Science 2015-07-01 Qin Ma , Luc Maranget

We develop new data structures and algorithms for checking verification queries in NetKAT, a domain-specific language for specifying the behavior of network data planes. Our results extend the techniques obtained in prior work on symbolic…

Based on our previous work on truly concurrent process algebras APTC, we use it to verify the security protocols. This work (called Secure APTC, abbreviated SAPTC) have the following advantages in verifying security protocols: (1) It has a…

Logic in Computer Science · Computer Science 2021-10-26 Yong Wang

With distributed computing and mobile applications, synchronizing diverging replicas of data structures is a more and more common problem. We use algebraic methods to reason about filesystem operations, and introduce a simplified definition…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-07-24 Elod Pal Csirmaz

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

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

Relational verification encompasses information flow security, regression verification, translation validation for compilers, and more. Effective alignment of the programs and computations to be related facilitates use of simpler relational…

Logic in Computer Science · Computer Science 2023-03-27 Timos Antonopoulos , Eric Koskinen , Ton Chanh Le , Ramana Nagasamudram , David A. Naumann , Minh Ngo

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

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

ProbNetKAT is a probabilistic extension of NetKAT with a denotational semantics based on Markov kernels. The language is expressive enough to generate continuous distributions, which raises the question of how to compute effectively in the…

Programming Languages · Computer Science 2018-12-18 Steffen Smolka , Praveen Kumar , Nate Foster , Dexter Kozen , Alexandra Silva

Sentence matching is a fundamental task of natural language processing with various applications. Most recent approaches adopt attention-based neural models to build word- or phrase-level alignment between two sentences. However, these…

Computation and Language · Computer Science 2021-10-22 Peng Cui , Le Hu , Yuanchao Liu
‹ Prev 1 2 3 10 Next ›