English
Related papers

Related papers: Verifying and Synthesizing Constant-Resource Imple…

200 papers

Conflict-free replicated data types (CRDTs) are a promising tool for designing scalable, coordination-free distributed systems. However, constructing correct CRDTs is difficult, posing a challenge for even seasoned developers. As a result,…

Programming Languages · Computer Science 2022-09-23 Shadaj Laddad , Conor Power , Mae Milano , Alvin Cheung , Joseph M. Hellerstein

We formalize a new type system for Elixir, a dynamically typed functional programming language of growing popularity that runs on the Erlang virtual machine. Our system combines gradual typing with semantic subtyping to enable precise,…

Programming Languages · Computer Science 2025-09-30 Giuseppe Castagna , Guillaume Duboc

Runtime Verification deals with the question of whether a run of a system adheres to its specification. This paper studies runtime verification in the presence of partial knowledge about the observed run, particularly where input values may…

Logic in Computer Science · Computer Science 2022-07-13 Hannes Kallwies , Martin Leucker , Cesar Sanchez

Runtime verification of temporal properties is essential for ensuring the correctness and reliability of real-time systems, particularly in cyber-physical systems. A significant challenge in this domain is the effective prediction of…

Formal Languages and Automata Theory · Computer Science 2025-07-30 Alessandro Cimatti , Thomas M. Grosen , Kim G. Larsen , Stefano Tonetta , Martin Zimmermann

Applications like program synthesis sometimes require proving that a property holds for all of the infinitely many programs described by a grammar - i.e., an inductively defined set of programs. Current verification frameworks…

Programming Languages · Computer Science 2025-07-29 Jinwoo Kim , Shaan Nagy , Thomas Reps , Loris D'Antoni

We introduce Conflict-Aware Replicated Data Types (CARDs). CARDs are significantly more expressive than Conflict-free Replicated Data Types (CRDTs) as they support operations that can conflict with each other. Introducing conflicting…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-09-27 Nicholas V. Lewchenko , Arjun Radhakrishna , Akash Gaonkar , Pavol Černý

Software developers study and reuse existing source code to understand how to properly use application programming interfaces (APIs). However, manually finding sufficient and adequate code examples for a given API is a difficult and a…

Software Engineering · Computer Science 2022-08-02 Mohammad Ghafari , Konstantin Rubinov , Mohammad Mehdi Pourhashem K

Memory spatial errors, i.e., buffer overflow vulnerabilities, have been a well-known issue in computer security for a long time and remain one of the root causes of exploitable vulnerabilities. Most of the existing mitigation tools adopt a…

Cryptography and Security · Computer Science 2020-04-07 Dongwei Chen , Daliang Xu , Dong Tong , Kang Sun , Xuetao Guan , Chun Yang , Xu Cheng

Commutativity of data structure methods is of ongoing interest, with roots in the database community. In recent years commutativity has been shown to be a key ingredient to enabling multicore concurrency in contexts such as parallelizing…

Programming Languages · Computer Science 2020-04-21 Eric Koskinen , Kshitij Bansal

Designing scalable concurrent objects, which can be efficiently used on multicore processors, often requires one to abandon standard specification techniques, such as linearizability, in favor of more relaxed consistency requirements.…

Logic in Computer Science · Computer Science 2016-07-22 Ilya Sergey , Aleksandar Nanevski , Anindya Banerjee , German Andres Delbianco

Mixed-criticality real-time scheduling has been developed to improve resource utilization while guaranteeing safe execution of critical applications. These studies use optimistic resource reservation for all the applications to improve…

Operating Systems · Computer Science 2020-04-07 Xiaozhe Gu , Arvind Easwaran , Kieu-My Phan , Insik Shin

Automated industrial optimization modeling requires reliable translation of natural-language requirements into solver-executable code. However, large language models often generate non-compilable models due to missing declarations, type…

Software Engineering · Computer Science 2026-03-04 Y. Zhong , R. Huang , M. Wang , Z. Guo , YC. Li , M. Yu , Z. Jin

The analysis of complex dynamic systems is a core research topic in formal methods and AI, and combined modelling of systems with data has gained increasing importance in applications such as business process management. In addition,…

Logic in Computer Science · Computer Science 2022-05-19 Paolo Felli , Marco Montali , Sarah Winkler

A runtime assurance system (RTA) for a given plant enables the exercise of an untrusted or experimental controller while assuring safety with a backup (or safety) controller. The relevant computational design problem is to create a logic…

Systems and Control · Electrical Eng. & Systems 2023-10-09 Kristina Miller , Christopher K. Zeitler , William Shen , Kerianne Hobbs , Sayan Mitra , John Schierman , Mahesh Viswanathan

This paper presents a {theoretical study} of the problem of verifying linearizability at runtime, where one seeks for a concurrent algorithm for verifying that the current execution of a given concurrent shared object implementation is…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-11-14 Armando Castañeda , Gilde Valeria Rodríguez

A resource leak occurs when a program fails to release a finite resource like a socket, file descriptor or database connection. While sound static analysis tools can detect all leaks, automatically repairing them remains challenging. Prior…

Software Engineering · Computer Science 2025-10-07 Sanjay Malakar , Michael D. Ernst , Martin Kellogg , Manu Sridharan

Conventional approaches for ensuring the security of application software at run-time, through monitoring, either produce (high rates of) false alarms (e.g. intrusion detection systems) or limit application performance (e.g. run-time…

Cryptography and Security · Computer Science 2016-01-19 Muhammad Taimoor Khan , Dimitrios Serpanos , Howard Shrobe

Geo-distributed systems often replicate data at multiple locations to achieve availability and performance despite network partitions. These systems must accept updates at any replica and propagate these updates asynchronously to every…

Programming Languages · Computer Science 2019-03-18 Constantin Enea , Suha Orhun Mutluergil , Gustavo Petri , Chao Wang

Environmental noise (e.g.heat, ionized particles, etc.) causes transient faults in hardware, which lead to corruption of stored values. Mission-critical devices require such faults to be mitigated by fault-tolerance --- a combination of…

Cryptography and Security · Computer Science 2014-10-28 Filippo Del Tedesco , David Sands , Alejandro Russo

Session types are widely used as abstractions of asynchronous message passing systems. Refinement for such abstractions is crucial as it allows improvements of a given component without compromising its compatibility with the rest of the…

Programming Languages · Computer Science 2024-10-09 Mario Bravetti , Julien Lange , Gianluigi Zavattaro