English
Related papers

Related papers: Some Challenges of Specifying Concurrent Program C…

200 papers

Today, reusable components are available in several repositories. These last are certainly conceived for the reusing However, this re-use is not immediate; it requires, in the fact, to pass through some essential conceptual operations,…

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

Software developers are expected to protect concurrent accesses to shared regions of memory with some mutual exclusion primitive that ensures atomicity properties to a sequence of program statements. This approach prevents data races but…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-05-13 Diogo G. Sousa , Ricardo J. Dias , Carla Ferreira , João M. Lourenço

Utilizing third party software components in the development of new systems became somewhat unfavourable approach among many organizations nowadays. This reluctance is primarily built due to the lack of support to verify the quality…

Software Engineering · Computer Science 2012-10-16 Basem Y. Alkazemi

Writing parallel codes is difficult and exhibits a fundamental trade-off between abstraction and performance. The high level language abstractions designed to simplify the complexities of parallelism make certain assumptions that impacts…

Programming Languages · Computer Science 2020-10-28 Nick Brown , Ludovic Capelli , J. Mark Bull

An established trend in software engineering insists on using components (sometimes also called services or packages) to encapsulate a set of related functionalities or data. By defining interfaces specifying what functionalities they…

Software Engineering · Computer Science 2015-07-29 Daniel Ricardo dos Santos , Silvio Ranise , Serena Elisa Ponta

In dynamic architectures, component activation and connections between components may vary over time. With the emergence of mobile computing such architectures became increasingly important and several techniques emerged to support in their…

Software Engineering · Computer Science 2017-03-21 Diego Marmsoler

Reusable software components need expressive specifications. This paper outlines a rigorous foundation to model-based contracts, a method to equip classes with strong contracts that support accurate design, implementation, and formal…

Software Engineering · Computer Science 2013-08-14 Nadia Polikarpova , Carlo A. Furia , Bertrand Meyer

On a system that exposes disjoint memory spaces to the software, a program has to address memory consistency issues and perform data transfers so that it always accesses valid data. Several approaches exist to ensure the consistency of the…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-10-25 Ludovic Henrio , Christoph Kessler , Lu Li

Artificial Intelligence has gained a lot of traction in the recent years, with machine learning notably starting to see more applications across a varied range of fields. One specific machine learning application that is of interest to us…

Software Engineering · Computer Science 2023-05-10 Teodor Rares Begu

Configuring consists in simulating the realization of a complex product from a catalog of component parts, using known relations between types, and picking values for object attributes. This highly combinatorial problem in the field of…

Artificial Intelligence · Computer Science 2007-05-23 Stephane Grandcolas , Laurent Henocque , Nicolas Prcovic

A software architecture describes the structure of a computing system by specifying software components and their interactions. Mapping a software architecture to an implementation is a well known challenge. A key element of this mapping is…

Programming Languages · Computer Science 2011-09-14 Damien Cassou , Emilie Balland , Charles Consel , Julia Lawall

Specifying the intended behaviour of autonomous systems is becoming increasingly important but is fraught with many challenges. This technical report provides an overview of existing work on specifications of autonomous systems and places a…

Systems and Control · Electrical Eng. & Systems 2023-02-21 Andrew Sogokon , Burak Yuksek , Gokhan Inalhan , Neeraj Suri

In resolving instances of a computational problem, if multiple instances of interest share a feature in common, it may be fruitful to compile this feature into a format that allows for more efficient resolution, even if the compilation is…

Computational Complexity · Computer Science 2015-03-03 Hubie Chen

This article provides formal definitions characterizing well-formed composition of components in order to guarantee their safe deployment and execution. Our work focuses on the structural aspects of component composition; it puts together…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-02-13 Ludovic Henrio , Oleksandra Kulankhina , Dongqian Liu , Eric Madelaine

We present a lightweight approach to Hoare-style specifications for fine-grained concurrency, based on a notion of time-stamped histories that abstractly capture atomic changes in the program state. Our key observation is that histories…

Logic in Computer Science · Computer Science 2014-10-02 Ilya Sergey , Aleksandar Nanevski , Anindya Banerjee

We present a lattice of distributed program specifications, whose ordering represents implementability/refinement. Specifications are modelled by families of subsets of relative execution traces, which encode the local orderings of state…

Logic in Computer Science · Computer Science 2023-04-25 Nasos Evangelou-Oost , Callum Bannister , Ian J. Hayes

The development of high-quality software or software-intensive systems requires custom-tailored process models that fit the organizational and project goals as well as the development contexts. These models are a necessary prerequisite for…

Software Engineering · Computer Science 2014-01-20 Jürgen Münch

This thesis embarks on a comprehensive exploration of formal computational models that underlie typed programming languages. We focus on programming calculi, both functional (sequential) and concurrent, as they provide a compelling rigorous…

Logic in Computer Science · Computer Science 2024-08-16 Joseph William Neal Paulus

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

Multicore parallel programming has some very difficult problems such as deadlocks during synchronizations and race conditions brought by concurrency. Added to the difficulty is the lack of a simple, well-accepted computing model for…

Programming Languages · Computer Science 2010-12-09 Yibing Wang