English
Related papers

Related papers: Specifying and Verifying Persistent Libraries

200 papers

We propose a new library to model and verify hardware circuits in the Coq proof assistant. This library allows one to easily build circuits by following the usual pen-and-paper diagrams. We define a deep-embedding: we use a (dependently…

Logic in Computer Science · Computer Science 2011-08-23 Thomas Braibant

Parallel programming remains a daunting challenge, from the struggle to express a parallel algorithm without cluttering the underlying synchronous logic, to describing which devices to employ in a calculation, to correctness. Over the…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-08-10 Patrick Diehl , Steven R. Brandt , Hartmut Kaiser

The dependency on the correct functioning of embedded systems is rapidly growing, mainly due to their wide range of applications, such as micro-grids, automotive device control, health care, surveillance, mobile devices, and consumer…

Logic in Computer Science · Computer Science 2017-03-01 Lucas Cordeiro

Training large language models (LLMs) at scale requires parallel execution across thousands of devices, incurring enormous computational costs. Yet, these costly distributed trainings are rarely verified, leaving them prone to silent errors…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-06-25 Yunchi Lu , Youshan Miao , Cheng Tan , Peng Huang , Yi Zhu , Xian Zhang , Fan Yang

We present a framework that provides deterministic consistency algorithms for given memory models. Such an algorithm checks whether the executions of a shared-memory concurrent program are consistent under the axioms defined by a model. For…

Data Structures and Algorithms · Computer Science 2020-07-24 Peter Chini , Prakash Saivasan

Memory safety remains a critical and widely violated property in reality. Numerous defense techniques have been proposed and developed but most of them are not applied or enabled by default in production-ready environment due to their…

Cryptography and Security · Computer Science 2021-11-30 Wei Song , Jiameng Ying , Sihao Shen , Boya Li , Hao Ma , Peng Liu

The application of machine learning (ML) libraries has been tremendously increased in many domains, including autonomous driving systems, medical, and critical industries. Vulnerabilities of such libraries result in irreparable…

Software Engineering · Computer Science 2022-03-15 Nima Shiri Harzevili , Jiho Shin , Junjie Wang , Song Wang

The data model of an application, the nature and format of data stored across executions, is typically a very rigid part of its early specification, even when prototyping, and changing it after code that relies on it was written can prove…

Software Engineering · Computer Science 2008-02-26 Pierre Thierry , Simon E. B. Thierry

With the increased dependence on software, there is a pressing need for engineering long-lived software. As architectures have a profound effect on the life-span of the software and the provisioned quality of service, stable architectures…

Software Engineering · Computer Science 2019-12-12 Maria Salama , Rami Bahsoon , Rajkumar Buyya

We introduce a novel validation framework to measure the true robustness of learning models for real-world applications by creating source-inclusive and source-exclusive partitions in a dataset via clustering. We develop a robustness metric…

Machine Learning · Computer Science 2017-04-04 Ozsel Kilinc , Ismail Uysal

We present a formal framework for proving the correctness of set implementations backed by binary-search-tree (BST) and linked lists, which are often difficult to prove correct using automation. This is because many concurrent set…

Programming Languages · Computer Science 2023-05-16 Uri Abraham , Avi Hayoun

Fair classification has been a topic of intense study in machine learning, and several algorithms have been proposed towards this important task. However, in a recent study, Friedler et al. observed that fair classification algorithms may…

Machine Learning · Computer Science 2020-09-10 Lingxiao Huang , Nisheeth K. Vishnoi

Although they differ in the functionality they offer, low-level systems exhibit certain patterns of design and utilization of computing resources. In this paper, we argue the position that modalities, in the sense of modal logic, should be…

Logic in Computer Science · Computer Science 2025-09-30 Ismail Kuru , Colin S. Gordon

OpenACC is a high-level directive-based parallel programming model that can manage the sophistication of heterogeneity in architectures and abstract it from the users. The portability of the model across CPUs and accelerators has gained the…

Software Engineering · Computer Science 2022-08-30 A. M. Jarmusch , A. Liu , C. Munley , D. Horta , V. Ravichandran , J. Denny , S. Chandrasekaran

Since its inception as a student project in 2001, initially just for the handling (as the name implies) of convex polyhedra, the Parma Polyhedra Library has been continuously improved and extended by joining scrupulous research on the…

Mathematical Software · Computer Science 2007-05-23 Roberto Bagnara , Patricia M. Hill , Enea Zaffanella

Insufficient requirements reusability, understandability and verifiability jeopardize software projects. Empirical studies show little success in improving these qualities separately. Applying object-oriented thinking to requirements leads…

Software Engineering · Computer Science 2019-03-19 Alexandr Naumchev

Correctness of concurrent objects is defined in terms of safety properties such as linearizability, sequential consistency, and quiescent consistency, and progress properties such as wait-, lock-, and obstruction-freedom. These properties,…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-03-07 Brijesh Dongol , Lindsay Groves

We study the formal semantics of non-volatile memory in the x86-TSO architecture. We show that while the explicit persist operations in the recent model of Raad et al. from POPL'20 only enforce order between writes to the non-volatile…

Programming Languages · Computer Science 2020-10-28 Artem Khyzha , Ori Lahav

Linearizability is a well-known correctness property for concurrent and distributed systems. In the past, it was also used to prove the design and implementation of replicated state-machines correct. State-machine replication (SMR) is a…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-07-03 Franz J. Hauck , Alexander Heß

Software testing and verification are critical for ensuring the reliability and security of modern software systems. Traditionally, formal verification techniques, such as model checking and theorem proving, have provided rigorous…

Software Engineering · Computer Science 2025-03-17 Norbert Tihanyi , Tamas Bisztray , Mohamed Amine Ferrag , Bilel Cherif , Richard A. Dubniczky , Ridhi Jain , Lucas C. Cordeiro