English
Related papers

Related papers: From Traces To Proofs: Proving Concurrent Program …

200 papers

Predicting program behavior without execution is a critical task in software engineering. Existing models often fall short in capturing the dynamic dependencies among program elements. To address this, we present CodeFlow, a novel machine…

Software Engineering · Computer Science 2025-02-11 Cuong Chi Le , Hoang Nhat Phan , Huy Nhat Phan , Tien N. Nguyen , Nghi D. Q. Bui

Proof autoformalization, the task of translating natural language theorems and proofs into machine-verifiable code, is a critical step for integrating large language models into rigorous mathematical workflows. Current approaches focus on…

Artificial Intelligence · Computer Science 2025-10-21 Rafael Cabral , Tuan Manh Do , Xuejun Yu , Wai Ming Tai , Zijin Feng , Xin Shen

Concurrent programs are difficult to test due to their inherent non-determinism. To address this problem, testing often requires the exploration of thread schedules of a program; this can be time-consuming when applied to real-world…

Software Engineering · Computer Science 2018-04-11 Tingting Yu , Wei Wen , Xue Han , Jane Hayes

We present a logical system CFP (Concurrent Fixed Point Logic) from whose proofs one can extract nondeterministic and concurrent programs that are provably total and correct with respect to the proven formula. CFP is an intuitionistic…

Logic in Computer Science · Computer Science 2022-02-01 Ulrich Berger , Hideki Tsuiki

Programmers often use an iterative process of hypothesis generation ("perhaps this function is called twice?") and hypothesis testing ("let's count how many times this breakpoint fires") to understand the behavior of unfamiliar or…

Programming Languages · Computer Science 2026-04-14 Shardul Chiplunkar , Clément Pit-Claudel

We aim to identify the differences in Input/Output(I/O) behavior between multiple user programs through the inspection of system calls (i.e., requests made to the operating system). A typical program issues a large number of I/O requests to…

Performance · Computer Science 2025-01-22 Aravind Sankaran , Ilya Zhukov , Wolfgang Frings , Paolo Bientinesi

Total Flow Analysis (TFA) is a method for conducting the worst-case analysis of time sensitive networks without cyclic dependencies. In networks with cyclic dependencies, Fixed-Point TFA introduces artificial cuts, analyses the resulting…

Networking and Internet Architecture · Computer Science 2022-05-12 Stéphan Plassart , Jean-Yves Le Boudec

We present a logical system CFP (Concurrent Fixed Point Logic) supporting the extraction of nondeterministic and concurrent programs that are provably total and correct. CFP is an intuitionistic first-order logic with inductive and…

Logic in Computer Science · Computer Science 2026-04-22 Ulrich Berger , Hideki Tsuiki

Automated software verification of concurrent programs is challenging because of exponentially large state spaces with respect to the number of threads and number of events per thread. Verification techniques such as model checking need to…

Programming Languages · Computer Science 2020-04-15 Patrick Metzler , Habib Saissi , Péter Bokor , Neeraj Suri

This paper elaborates on a new approach of the question of the proof-theoretic study of concurrent interaction called "proofs as schedules". Observing that proof theory is well suited to the description of confluent systems while…

Logic in Computer Science · Computer Science 2014-09-16 Emmanuel Beffara

The verification of multithreaded software is still a challenge. This comes mainly from the fact that the number of thread interleavings grows exponentially in the number of threads. The idea that thread interleavings can be studied with a…

Logic in Computer Science · Computer Science 2011-09-27 Robert Mittermayr , Johann Blieberger

Programs with constraints are hard to debug. In this paper, we describe a general architecture to help develop new debugging tools for constraint programming. The possible tools are fed by a single general-purpose tracer. A tracer-driver is…

Software Engineering · Computer Science 2007-05-23 Ludovic Langevine , Mireille Ducasse

Interprocedural data-flow analyses form an expressive and useful paradigm of numerous static analysis applications, such as live variables analysis, alias analysis and null pointers analysis. The most widely-used framework for…

Data Structures and Algorithms · Computer Science 2020-04-16 Krishnendu Chatterjee , Amir Kafshdar Goharshady , Rasmus Ibsen-Jensen , Andreas Pavlogiannis

Constraints over finite sequences of variables are ubiquitous in sequencing and timetabling. Moreover, the wide variety of such constraints in practical applications led to general modelling techniques and generic propagation algorithms,…

Artificial Intelligence · Computer Science 2013-09-30 Nicolas Beldiceanu , Pierre Flener , Justin Pearson , Pascal Van Hentenryck

In Real-time system, utilization based schedulability test is a common approach to determine whether or not tasks can be admitted without violating deadline requirements. The exact problem has previously been proven intractable even upon…

Software Engineering · Computer Science 2011-01-11 Jagbeer Singh

Noisy data, non-convex objectives, model misspecification, and numerical instability can all cause undesired behaviors in machine learning systems. As a result, detecting actual implementation errors can be extremely difficult. We…

Software Engineering · Computer Science 2017-06-28 Daniel Selsam , Percy Liang , David L. Dill

Infinite-state systems such as distributed protocols are challenging to verify using interactive theorem provers or automatic verification tools. Of these techniques, deductive verification is highly expressive but requires the user to…

Programming Languages · Computer Science 2019-05-21 Yotam M. Y. Feldman , James R. Wilcox , Sharon Shoham , Mooly Sagiv

When an evolving program is modified to address issues related to thread synchronization, there is a need to confirm the change is correct, i.e., it does not introduce unexpected behavior. However, manually comparing two programs to…

Software Engineering · Computer Science 2018-07-17 Chungha Sung , Shuvendu Lahiri , Constantin Enea , Chao Wang

We present a novel verification technique to prove interesting properties of a class of array programs with a symbolic parameter N denoting the size of arrays. The technique relies on constructing two slightly different versions of the same…

Programming Languages · Computer Science 2021-07-05 Supratik Chakraborty , Ashutosh Gupta , Divyesh Unadkat

Data replication is used in distributed systems to maintain up-to-date copies of shared data across multiple computers in a network. However, despite decades of research, algorithms for achieving consistency in replicated systems are still…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-08-30 Victor B. F. Gomes , Martin Kleppmann , Dominic P. Mulligan , Alastair R. Beresford
‹ Prev 1 2 3 10 Next ›