English
Related papers

Related papers: A Type System for Unstructured Locking that Guaran…

200 papers

We study the problem of disentangling locked processes via code refactoring. We identify and characterise a class of processes that is not lock-free; then we formalise an algorithm that statically detects potential locks and propose…

Programming Languages · Computer Science 2016-08-08 Adrian Francalanza , Marco Giunti , António Ravara

Context-free session types describe structured patterns of communication on heterogeneously-typed channels, allowing the specification of protocols unconstrained by tail recursion. The enhanced expressive power provided by non-regular…

Programming Languages · Computer Science 2023-09-21 Gil Silva , Andreia Mordido , Vasco T. Vasconcelos

This paper improves the session typing theory to support the modelling and verification of processes that implement federated learning protocols. To this end, we build upon the asynchronous ``bottom-up'' session typing approach by adding…

Logic in Computer Science · Computer Science 2026-03-27 Ivan Prokić , Simona Prokić , Silvia Ghilezan , Alceste Scalas , Nobuko Yoshida

It has been recently proposed that testing based on symbolic execution can be used in conjunction with static deadlock analysis to define a deadlock detection framework that: (i) can show deadlock presence, in that case a concrete test-case…

Programming Languages · Computer Science 2017-09-14 Elvira Albert , Miguel Gómez-Zamalloa , Miguel Isabel

Remote direct memory access (RDMA) networks are being rapidly adopted into industry for their high speed, low latency, and reduced CPU overheads compared to traditional kernel-based TCP/IP networks. RDMA enables threads to access remote…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-04-30 Amanda Baran , Jacob Nelson-Slivon , Lewis Tseng , Roberto Palmieri

Protection of confidential data is an important security consideration of today's applications. Of particular concern is to guard against unintentional leakage to a (malicious) observer, who may interact with the program and draw inference…

Logic in Computer Science · Computer Science 2024-07-03 Bas van den Heuvel , Farzaneh Derakhshan , Stephanie Balzer

Prior work has extended the deep, logical connection between the linear sequent calculus and session-typed message-passing concurrent computation with equi-recursive types and a natural notion of subtyping. In this paper, we extend this…

Programming Languages · Computer Science 2017-02-09 Coşku Acay , Frank Pfenning

This work provides a study to demonstrate the potential of using off-the-shelf programming languages and their theories to build sound language-based-security tools. Our study focuses on information flow security encompassing…

Cryptography and Security · Computer Science 2020-07-20 Minh Ngo , David A. Naumann , Tamara Rezk

Gradually-typed programming languages permit the incremental addition of static types to untyped programs. To remain sound, languages insert run-time checks at the boundaries between typed and untyped code. Unfortunately, performance…

Programming Languages · Computer Science 2020-10-13 Cameron Moy , Phúc C. Nguyen , Sam Tobin-Hochstadt , David Van Horn

Locks are a standard mechanism for synchronizing concurrent threads. The standard lock set construction assumes that critical sections are confined to a single thread, and therefore only accounts for locks acquired within that thread.…

Programming Languages · Computer Science 2026-04-08 Martin Sulzmann

A key part of implementing high-level languages is providing built-in and default data structures. Yet selecting good defaults is hard. A mutable data structure's workload is not known in advance, and it may shift over its lifetime - e.g.,…

Programming Languages · Computer Science 2017-08-09 Chao-Hong Chen , Vikraman Choudhury , Ryan R. Newton

Priority queues are abstract data structures which store a set of key/value pairs and allow efficient access to the item with the minimal (maximal) key. Such queues are an important element in various areas of computer science such as…

Data Structures and Algorithms · Computer Science 2015-09-24 Jakob Gruber

Lock sets are commonly used for dynamic analysis of deadlocks. The standard per-thread lock set construction only considers locks acquired in the same thread, but is unaware of locks acquired in another thread. This leads to false positives…

Programming Languages · Computer Science 2026-02-03 Martin Sulzmann

We consider the problem of static deadlock detection for programs in the Go programming language which make use of synchronous channel communications. In our analysis, regular expressions extended with a fork operator capture the…

Programming Languages · Computer Science 2016-09-05 Kai Stadtmüller , Martin Sulzmann , Peter Thiemann

Protecting confidential data from leaking is a critical challenge in computer systems, particularly given the growing number of observers on the internet. Therefore, limiting information flow using robust security policies becomes…

Relying on the formulae-as-types paradigm for classical logic, we define a program logic for an imperative language with higher-order procedural variables and non-local jumps. Then, we show how to derive a sound program logic for this…

Logic in Computer Science · Computer Science 2015-03-19 Tristan Crolard , Emmanuel Polonowski

We consider the distributed control synthesis problem for systems with locks. The goal is to find local controllers so that the global system does not deadlock. With no restriction this problem is undecidable even for three processes each…

Logic in Computer Science · Computer Science 2025-09-10 Hugo Gimbert , Corto Mascle , Anca Muscholl , Igor Walukiewicz

We investigate the interplay between a modality for controlling the behaviour of recursive functional programs on infinite structures which are completely silent in the syntax. The latter means that programs do not contain "marks" showing…

Logic in Computer Science · Computer Science 2023-06-22 Paula Severi

We present a type system capable of guaranteeing the memory safety of programs that may involve (sophisticated) pointer manipulation such as pointer arithmetic. With its root in a recently developed framework Applied Type System (ATS), the…

Programming Languages · Computer Science 2018-10-30 Hongwei Xi , Dengping Zhu

Latency-insensitive design mitigates increasing interconnect delay and enables productive component reuse in complex digital systems. This design style has been adopted in high-level design flows because untimed functional blocks connected…

Logic in Computer Science · Computer Science 2021-02-19 Steve Dai , Alicia Klinefelter , Haoxing Ren , Rangharajan Venkatesan , Ben Keller , Nathaniel Pinckney , Brucek Khailany
‹ Prev 1 3 4 5 6 7 10 Next ›