English
Related papers

Related papers: Some Challenges of Specifying Concurrent Program C…

200 papers

This paper suggests a [email protected] of composable specification of concurrent programs that permits: (1) verification of program code for a given specification, and (2) composition of the specifications of the components to yield…

Programming Languages · Computer Science 2017-04-07 Jayadev Misra

Consistency properties of concurrent computations, e.g., sequential consistency, linearizability, or eventual consistency, are essential for devising correct concurrent algorithms. In this paper, we present a logical formalization of such…

Logic in Computer Science · Computer Science 2013-05-13 Klaus v. Gleissenthall , Andrey Rybalchenko

Developing multithreaded software is an extremely challenging task, even for experienced programmers. The challenge does not end after the code is written. There are other tasks associated with a development process that become…

Software Engineering · Computer Science 2014-09-04 Evgeny Vainer , Amiram Yehudai

Designing component-based constraint solvers is a complex problem. Some components are required, some are optional and there are interdependencies between the components. Because of this, previous approaches to solver design and…

Artificial Intelligence · Computer Science 2011-10-31 Ian P. Gent , Chris Jefferson , Lars Kotthoff , Ian Miguel

Memory consistency models define the order in which accesses to shared memory in a concurrent system may be observed to occur. Such models are a necessity since program order is not a reliable indicator of execution order, due to…

Programming Languages · Computer Science 2026-03-16 Roger C. Su , Robert J. Colvin

Consensus is an often occurring problem in concurrent and distributed programming. We present a programming language with simple semantics and build-in support for consensus in the form of communicating transactions. We motivate the need…

Programming Languages · Computer Science 2013-05-08 Carlo Spaccasassi , Vasileios Koutavas

The contemporary development of hardware components is a prerequisite for increasing the concentration of computing power. System software is developing at a much slower pace. To use available resources efficiently modeling is required.…

Operating Systems · Computer Science 2014-02-21 Asen Petkov Iliev

The vast number of interleavings that a concurrent program can have is typically identified as the root cause of the difficulty of automatic analysis of concurrent software. Weak memory is generally believed to make this problem even…

Logic in Computer Science · Computer Science 2013-01-09 Jade Alglave , Daniel Kroening , Michael Tautschnig

The lack of specifications is a key difference between traditional software engineering and machine learning. We discuss how it drastically impacts how we think about divide-and-conquer approaches to system design, and how it impacts reuse,…

Software Engineering · Computer Science 2021-05-14 Christian Kästner , Eunsuk Kang , Sven Apel

Proving correctness of distributed or concurrent algorithms is a mind-challenging and complex process. Slight errors in the reasoning are difficult to find, calling for computer-checked proof systems. In order to build computer-checked…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-11-21 Armando Castañeda , Aurélie Hurault , Philippe Quéinnec , Matthieu Roy

Correctness conditions for concurrent objects describe how atomicity of an abstract sequential object may be decomposed. Many different concurrent objects and proof methods for them have been developed. However, arguments about correctness…

Logic in Computer Science · Computer Science 2016-06-08 Brijesh Dongol , Lindsay Groves

A memory consistency model specifies the allowed behaviors of shared memory concurrent programs. At the language level, these models are known to have a non-trivial impact on the safety of program optimizations, limiting the ability to…

Programming Languages · Computer Science 2025-03-11 Akshay Gopalakrishnan , Clark Verbrugge , Mark Batty

The upcoming many-core architectures require software developers to exploit concurrency to utilize available computational power. Today's high-level language virtual machines (VMs), which are a cornerstone of software development, do not…

Distributed, Parallel, and Cluster Computing · Computer Science 2010-02-05 Stefan Marr , Michael Haupt , Stijn Timbermont , Bram Adams , Theo D'Hondt , Pascal Costanza , Wolfgang De Meuter

Modern shared memory multiprocessors permit reordering of memory operations for performance reasons. These reorderings are often a source of subtle bugs in programs written for such architectures. Traditional approaches to verify weak…

Software Engineering · Computer Science 2016-02-29 Ganesh Narayanaswamy , Saurabh Joshi , Daniel Kroening

The hardware/software boundary in modern heterogeneous multicore computers is increasingly complex, and diverse across different platforms. A single memory access by a core or DMA engine traverses multiple hardware translation and caching…

Operating Systems · Computer Science 2017-03-21 Reto Achermann , Lukas Humbel , David Cock , Timothy Roscoe

Today, reusable components are available in several repositorys. These are certainly conceived for re-use. However, this re-use is not immediate, it requires, in effect, to pass by some essential conceptual operations, among which in…

Software Engineering · Computer Science 2010-05-26 Hicham Elasri , Larbi Kzaz , Abderrahim Sekkaki

The difficulty of developing reliable parallel software is generating interest in deterministic environments, where a given program and input can yield only one possible result. Languages or type systems can enforce determinism in new code,…

Operating Systems · Computer Science 2010-02-01 Amittai Aviram , Bryan Ford

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

Multiprocess systems, including grid systems, multiprocessors and multicore computers, incorporate a variety of specialized hardware and software mechanisms, which speed computation, but result in complex memory behavior. As a consequence,…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-06-04 Steven Cheng , Lisa Higham , Jalal Kawash

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
‹ Prev 1 2 3 10 Next ›