English
Related papers

Related papers: Proving Correctness of Parallel Implementations of…

200 papers

Automatic software verification is a valuable means for software quality assurance. However, automatic verification and in particular software model checking can be time-consuming, which hinders their practical applicability e.g., the use…

Logic in Computer Science · Computer Science 2026-01-16 Max Barth , Marie-Christine Jakobs

We present a tractable method for synthesizing arbitrarily large concurrent programs, for a shared memory model with common hardware-available primitives such as atomic registers, compare-and-swap, load-linked/store conditional, etc. The…

Logic in Computer Science · Computer Science 2008-01-14 Paul C. Attie

An enforcement mechanism monitors a reactive system for undesired behavior at runtime and corrects the system's output in case it violates the given specification. In this paper, we study the enforcement problem for hyperproperties, i.e.,…

Logic in Computer Science · Computer Science 2022-03-09 Norine Coenen , Bernd Finkbeiner , Christopher Hahn , Jana Hofmann , Yannick Schillo

Efficient implementations of concurrent objects such as atomic collections are essential to modern computing. Programming such objects is error prone: in minimizing the synchronization overhead between concurrent object invocations, one…

Programming Languages · Computer Science 2017-07-04 Ahmed Bouajjani , Constantin Enea , Chao Wang

Soft error of exascale application is a challenge problem in modern HPC. In order to quantify an application's resilience and vulnerability, the application-level fault injection method is widely adopted by HPC users. However, it is not…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-08-06 Kai Wu , Qiang Guan , Nathan DeBardeleben , Dong Li

We describe the use of quantum process calculus to describe and analyze quantum communication protocols, following the successful field of formal methods from classical computer science. The key idea is to define two systems, one modelling…

Logic in Computer Science · Computer Science 2012-10-03 Timothy A. S. Davidson , Simon J. Gay , Rajagopal Nagarajan , Ittoop Vergheese Puthoor

We prove a general congruence result for bisimilarity in higher-order languages, which generalises previous work to languages specified by a labelled transition system in which programs may occur as labels, and which may rely on operations…

Logic in Computer Science · Computer Science 2023-03-22 Tom Hirschowitz , Ambroise Lafont

As multicore computing is now standard, it seems irresponsible for constraints researchers to ignore the implications of it. Researchers need to address a number of issues to exploit parallelism, such as: investigating which constraint…

Artificial Intelligence · Computer Science 2018-03-30 Ian P. Gent , Ciaran McCreesh , Ian Miguel , Neil C. A. Moore , Peter Nightingale , Patrick Prosser , Chris Unsworth

Runtime verification is an effective automated method for specification-based offline testing and analysis as well as online monitoring of complex systems. The specification language is often a variant of regular expressions or a popular…

Logic in Computer Science · Computer Science 2014-11-11 Ramy Medhat , Yogi Joshi , Borzoo Bonakdarpour , Sebastian Fischmeister

We introduce the calculus of Classical Transitions (CT), which extends the research line on the relationship between linear logic and processes to labelled transitions. The key twist from previous work is registering parallelism in typing…

Logic in Computer Science · Computer Science 2018-03-06 Fabrizio Montesi , Marco Peressotti

We study the problem of automatically computing the time complexity of concurrent object-oriented programs. To determine this complexity we use intermediate abstract descriptions that record relevant information for the time analysis (cost…

Programming Languages · Computer Science 2015-11-17 Elena Giachino , Einar Broch Johnsen , Cosimo Laneve , Ka I Pun

In this paper, we outline an approach to verifying parallel programs. A new mathematical model of parallel programs is introduced. The introduced model is illustrated by the verification of the matrix multiplication MPI program.

Logic in Computer Science · Computer Science 2021-10-19 Andrew M. Mironov

We revisit parallel-innermost term rewriting as a model of parallel computation on inductive data structures and provide a corresponding notion of runtime complexity parametric in the size of the start term. We propose automatic techniques…

Logic in Computer Science · Computer Science 2026-04-08 Thaïs Baudon , Carsten Fuhs , Laure Gonnord

While modern parallel computing systems offer high performance, utilizing these powerful computing resources to the highest possible extent demands advanced knowledge of various hardware architectures and parallel programming models.…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-05-03 Suejb Memeti , Sabri Pllana , Alecio Binotto , Joanna Kolodziej , Ivona Brandic

Usage of multiprocessor and multicore computers implies parallel programming. Tools for preparing parallel programs include parallel languages and libraries as well as parallelizing compilers and convertors that can perform automatic…

Mathematical Software · Computer Science 2022-12-12 Pavel Telegin , Anton Baranov , Boris Shabanov , Artem Tikhomirov

As scientific applications extend to the simulation of more and more complex systems, they involve an increasing number of abstraction levels, at each of which errors can emerge and across which they can propagate; tools for correctness…

Software Engineering · Computer Science 2011-01-18 Eloisa Bentivegna , Gabrielle Allen , Oleg Korobkin , Erik Schnetter

Evaluating how well a whole system or set of subsystems performs is one of the primary objectives of performance testing. We can tell via performance assessment if the architecture implementation meets the design objectives. Performance…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-09-15 Donald Ene Vincent Ike Anireh

In previous work we developed a framework of computational models for the concurrent execution of functions on different levels of abstraction. It shows that the traditional sequential execution of function is just a possible implementation…

Software Engineering · Computer Science 2012-08-20 Bob Diertens

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

An algorithm is discussed for converting a class of recursive processes to a parallel system. It is argued that this algorithm can be superior to certain methods currently found in the literature for an important subset of problems. The…

Computational Physics · Physics 2009-11-10 W. R. Gibbs