English
Related papers

Related papers: Automatically Checking Conformance on Asynchronous…

200 papers

A syntactic model is presented for the specification of finite-state synchronous digital logic systems with complex input/output interfaces, which control the flow of data between opaque computational elements, and for the composition of…

Logic in Computer Science · Computer Science 2023-02-02 Nick Mertin , K. Ritsuka , Karen Rudie

Observational determinism is a security property that characterizes secure information flow for multithreaded programs. Most of the methods that have been used to verify observational determinism are based on either type systems or…

Programming Languages · Computer Science 2016-03-14 Elaheh Ghassabani , Mohammad Abdollahi Azgomi

We introduce the term Super-Reactive Systems to refer to reactive systems whose construction and behavior are complex, constantly changing and evolving, and heavily interwoven with other systems and the physical world. Finding hidden faults…

Software Engineering · Computer Science 2025-06-17 David Harel , Assaf Marron

Static analysis is an essential component of many modern software development tools. Unfortunately, the ever-increasing complexity of static analyzers makes their coding error-prone. Even analysis tools based on rigorous mathematical…

Software Engineering · Computer Science 2025-05-08 Daniela Ferreiro , Ignacio Casso , Jose F. Morales , Pedro López-García , Manuel V. Hermenegildo

This paper deals with a common verification methodology and environment for SystemC BCA and RTL models. The aim is to save effort by avoiding the same work done twice by different people and to reuse the same environment for the two design…

Logic in Computer Science · Computer Science 2011-11-09 Giuseppe Falconeri , Walid Naifer , Nizar Romdhane

Traditionally, practitioners use formal methods pre-dominately for one half of the quality-assurance process: verification (do we build the software right?). The other half -- validation (do we build the right software?) -- has been given…

Software Engineering · Computer Science 2021-02-12 Atif Mashkoor , Michael Leuschel , Alexander Egyed

Embedded software systems, e.g. automotive, robotic or automation systems are highly configurable and consist of many software components being available in different variants and versions. To identify the degree of reusability between…

Software Engineering · Computer Science 2015-11-18 Bernhard Rumpe , Christoph Schulze , Michael von Wenckstern , Jan Oliver Ringert , Peter Manhart

This work utilizes the plethora of work on verification of sequential programs for the purpose of verifying concurrent programs. We reduce the verification of a concurrent program to a series of verification tasks of sequential programs.…

Programming Languages · Computer Science 2021-06-03 Dan Rasin , Orna Grumberg , Sharon Shoham

In this paper we demonstrate an approach to model structure and behavior of distributed systems, to map those models to a lightweight execution engine by using a functional programming language and to systematically define and execute tests…

Software Engineering · Computer Science 2014-09-24 Borislav Gajanovic , Hans Grönninger , Bernhard Rumpe

In top-down multi-level design methodologies, design descriptions at higher levels of abstraction are incrementally refined to the final realizations. Simulation based techniques have traditionally been used to verify that such model…

Logic in Computer Science · Computer Science 2013-08-02 Salim Ismail Al-Akhras , Sofiène Tahar , Gabriela Nicolescu , Michel Langevin , Pierre Paulin

This paper discusses a model-based approach to testing as a vital part of software development. It argues that an approach using models as central development artifact needs to be added to the portfolio of software engineering techniques,…

Software Engineering · Computer Science 2014-09-24 Bernhard Rumpe

Automatic verification deals with the validation by means of computers of correctness certificates. The related tools, usually called proof assistants or interactive provers, provide an interactive environment for the creation of formal…

Logic in Computer Science · Computer Science 2017-01-16 Andrea Asperti

Regular model checking is a technique for the verification of infinite-state systems whose configurations can be represented as finite words over a suitable alphabet. The form we are studying applies to systems whose set of initial…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-01-22 Javier Esparza , Michael Raskin , Christoph Welzel-Mohr

Runtime verification is an area of formal methods that studies the dynamic analysis of execution traces against formal specifications. Typically, the two main activities in runtime verification efforts are the process of creating monitors…

Fully functional program verification is an undecidable$\unicode{x2014}$and, hence, inherently difficult$\unicode{x2014}$task, that is not automatically solvable but typically requires user interaction and guidance. Existing verifiers…

Programming Languages · Computer Science 2026-05-11 Wolfram Pfeifer , Mattias Ulbrich , Daniel Drodt

Test or prove? These two approaches to software verification have long been presented as opposites. One is dynamic, the other static: a test executes the program, a proof only analyzes the program text. A different perspective is emerging,…

Software Engineering · Computer Science 2026-02-10 Li Huang , Bertrand Meyer , Manuel Oriol

Self-adaptation is a promising approach to manage the complexity of modern software systems. A self-adaptive system is able to adapt autonomously to internal dynamics and changing conditions in the environment to achieve particular quality…

Software Engineering · Computer Science 2015-03-20 M. Usman Iftikhar , Danny Weyns

The design of a system and its implementation are two tasks often carried out by different individuals on a development team, and can occur weeks or months apart. This creates a potential for divergence between real behavior and the…

Software Engineering · Computer Science 2026-05-11 Reid Anderson , Hassan Reza

Reactive programs combine traditional sequential programming constructs with primitives to allow communication with other concurrent agents. They are ubiquitous in modern applications, ranging from components systems and web services, to…

Logic in Computer Science · Computer Science 2021-04-19 Simon Foster , Kangfeng Ye , Ana Cavalcanti , Jim Woodcock

Formally verified compilers and formally verified static analyzers are a solution to the problem that certain industries face when they have to demonstrate to authorities that the object code they run truly corresponds to its source code…

Logic in Computer Science · Computer Science 2024-07-12 David Monniaux