English
Related papers

Related papers: Multi-Threaded Software Model Checking via Paralle…

200 papers

In typical embedded applications, the precise execution time of the program does not matter, and it is sufficient to meet a real-time deadline. However, modern applications in information security have become much more time-sensitive, due…

Cryptography and Security · Computer Science 2020-05-07 Pantea Kiaei , Patrick Schaumont

Linearizability and progress properties are key correctness notions for concurrent objects. However, model checking linearizability has suffered from the PSPACE-hardness of the trace inclusion problem. This paper proposes to exploit…

Programming Languages · Computer Science 2016-10-03 Xiaoxiao Yang , Joost-Pieter Katoen , Huimin Lin , Hao Wu

We propose a memory-model-aware static program analysis method for accurately analyzing the behavior of concurrent software running on processors with weak consistency models such as x86-TSO, SPARC-PSO, and SPARC-RMO. At the center of our…

Programming Languages · Computer Science 2017-09-29 Markus Kusano , Chao Wang

Large language models (LLMs) have been increasingly used to analyze text. However, they are often plagued with contextual reasoning limitations when analyzing long documents. When long documents are processed sequentially, early or dominant…

Computation and Language · Computer Science 2026-05-21 Aisvarya Adeseye , Jouni Isoaho , Adeyemi Adeseye

Automatic performance debugging of parallel applications usually involves two steps: automatic detection of performance bottlenecks and uncovering their root causes for performance optimization. Previous work fails to resolve this…

Distributed, Parallel, and Cluster Computing · Computer Science 2010-02-24 Xu Liu , Lin Yuan , Jianfeng Zhan , Bibo Tu , Dan Meng

Monitoring is a runtime verification technique that allows one to check whether an ongoing computation of a system (partial trace) satisfies a given formula. It does not need a complete model of the system, but it typically requires the…

Artificial Intelligence · Computer Science 2025-08-26 Andrea Brunello , Luca Geatti , Angelo Montanari , Nicola Saccomanno

In this work, we present an automatic way to parallelize logic programs for finding all the answers to queries using a transformation to low level threading primitives. Although much work has been done in parallelization of logic…

Programming Languages · Computer Science 2009-12-28 Diptikalyan Saha , Paul Fodor

Tracing just-in-time compilation is a popular compilation technique for the efficient implementation of dynamic languages, which is commonly used for JavaScript, Python and PHP. We provide a formal model of tracing JIT compilation of…

Programming Languages · Computer Science 2015-10-29 Stefano Dissegna , Francesco Logozzo , Francesco Ranzato

We present a new active model-learning approach to generating abstractions of a system implementation, as finite state automata (FSAs), from execution traces. Given an implementation and a set of observable system variables, the generated…

Formal Languages and Automata Theory · Computer Science 2021-12-15 Natasha Yogananda Jeppu , Tom Melham , Daniel Kroening

Being intensively studied, visual object tracking has witnessed great advances in either speed (e.g., with correlation filters) or accuracy (e.g., with deep features). Real-time and high accuracy tracking algorithms, however, remain scarce.…

Computer Vision and Pattern Recognition · Computer Science 2019-09-04 Heng Fan , Haibin Ling

We propose an effective parallel program debugging approach based on the timing annotation technique. With prevalent multi-core platforms, parallel programming is required to fully utilize the computing power. However, the non-determinism…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-09-10 Yun Chang , Hsin-I Wu , Ren-Song Tsay

Recent years have seen growing interest in the retrofitting of type systems onto dynamically-typed programming languages, in order to improve type safety, programmer productivity, or performance. In such cases, type system developers must…

Programming Languages · Computer Science 2016-05-05 Esben Andreasen , Colin S. Gordon , Satish Chandra , Manu Sridharan , Frank Tip , Koushik Sen

Software performance modeling plays a crucial role in developing and maintaining software systems. A performance model analytically describes the relationship between the performance of a system and its runtime activities. This process…

Software Engineering · Computer Science 2024-11-27 Kaveh Shahedi , Heng Li , Maxime Lamothe , Foutse Khomh

To efficiently exploit the resources of new many-core architectures, integrating dozens or even hundreds of cores per chip, parallel programming models have evolved to expose massive amounts of parallelism, often in the form of fine-grained…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-05-14 Andi Drebes , Karine Heydemann , Antoniu Pop , Albert Cohen , Nathalie Drach

In this paper, we present structural abstraction refinement, a novel framework for verifying the threshold problem of probabilistic programs. Our approach represents the structure of a Probabilistic Control-Flow Automaton (PCFA) as a Markov…

Formal Languages and Automata Theory · Computer Science 2025-08-19 Guanyan Li , Juanen Li , Zhilei Han , Peixin Wang , Hongfei Fu , Fei He

The last improvements in programming languages, programming models, and frameworks have focused on abstracting the users from many programming issues. Among others, recent programming frameworks include simpler syntax, automatic memory…

Programming Languages · Computer Science 2018-10-29 Cristian Ramon-Cortes , Ramon Amela , Jorge Ejarque , Philippe Clauss , Rosa M. Badia

Parallel batched data structures are designed to process synchronized batches of operations in a parallel computing model. In this paper, we propose parallel combining, a technique that implements a concurrent data structure from a parallel…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-11-14 Vitaly Aksenov , Petr Kuznetsov , Anatoly Shalyto

When developing a software system, a change in one part of the system may lead to unwanted changes in other parts of the system. These affected parts may interfere with system performance, so regression testing is used to deal with these…

Software Engineering · Computer Science 2024-05-13 Mahdi Movahedian Moghaddam

Code review is a crucial process before deploying code to production, as it validates the code, provides suggestions for improvements, and identifies errors such as missed edge cases. In projects with regular production releases, the effort…

Software Engineering · Computer Science 2024-12-23 Jahnavi Kumar , Sridhar Chimalakonda

We present a technique for the automated verification of abstract models of multithreaded programs providing fresh name generation, name mobility, and unbounded control. As high level specification language we adopt here an extension of…

Logic in Computer Science · Computer Science 2007-05-23 Giorgio Delzanno