English
Related papers

Related papers: Applying Multi-Core Model Checking to Hardware-Sof…

200 papers

Bounded Model Checking (BMC) is a widely used software verification technique. Despite its successes, the technique has several limiting factors, from state-space explosion to lack of completeness. Over the years, interval analysis has…

Software Engineering · Computer Science 2024-06-24 Rafael Sá Menezes , Edoardo Manino , Fedor Shmarov , Mohannad Aldughaim , Rosiane de Freitas , Lucas C. Cordeiro

Formal verification of designs with multiple properties has been a long-standing challenge for the verification research community. The task of coming up with an effective strategy that can efficiently cluster properties to be solved…

Logic in Computer Science · Computer Science 2026-03-06 Soumik Guha Roy , Sumana Ghosh , Ansuman Banerjee , Raj Kumar Gajavelly , Sudhakar Surendran

In this paper we study the partitioning approach for multiprocessor real-time scheduling. This approach seems to be the easiest since, once the partitioning of the task set has been done, the problem reduces to well understood uniprocessor…

Operating Systems · Computer Science 2011-02-03 Irina Lupu , Pierre Courbin , Laurent George , Joël Goossens

Bounded model checking is among the most efficient techniques for the automatic verification of concurrent programs. However, encoding all possible interleavings often requires a huge and complex formula, which significantly limits the…

Programming Languages · Computer Science 2018-04-04 Liangze Yin , Wei Dong , Wanwei Liu , Ji Wang

The implementation of digital filters in processors based on fixed-point arithmetic can lead to problems related to the finite word-length. In particular, the processing of signals in such filters can produce overflows and unwanted noise…

Software Engineering · Computer Science 2013-07-24 Renato B. Abreu , Lucas Cordeiro , Eddie B. L. Filho

This paper introduces an innovative approach that combines Large Language Models (LLMs) with Formal Verification strategies for automatic software vulnerability repair. Initially, we employ Bounded Model Checking (BMC) to identify…

Software Engineering · Computer Science 2024-07-01 Norbert Tihanyi , Ridhi Jain , Yiannis Charalambous , Mohamed Amine Ferrag , Youcheng Sun , Lucas C. Cordeiro

Bounded model checking (BMC) is vital for finding program property violations. For unsafe programs, BMC can quickly find an execution path from an initial state to the violated state that refutes a given safety property. However, BMC…

Software Engineering · Computer Science 2022-09-22 Mohannad Aldughaim , Kaled Alshmrany , Rafael Menezes , Lucas Cordeiro , Alexandru Stancu

Software debugging is a very time-consuming process, which is even worse for multi-threaded programs, due to the non-deterministic behavior of thread-scheduling algorithms. However, the debugging time may be greatly reduced, if automatic…

Logic in Computer Science · Computer Science 2015-09-09 Erickson H. da S. Alves , Lucas C. Cordeiro , Eddie B. de Lima Filho

For many users of Satisfiability Modulo Theories (SMT) solvers, the solver's performance is the main bottleneck in their application. One promising approach for improving performance is to leverage the increasing availability of parallel…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-06-12 Amalee Wilson , Andres Noetzli , Andrew Reynolds , Byron Cook , Cesare Tinelli , Clark Barrett

The C Bounded Model Checker (CBMC) demonstrates the violation of assertions in C programs, or proves safety of the assertions under a given bound. CBMC implements a bit-precise translation of an input C program, annotated with assertions…

Software Engineering · Computer Science 2023-02-07 Daniel Kroening , Peter Schrammel , Michael Tautschnig

Bounded model checking (BMC) and fuzzing techniques are among the most effective methods for detecting errors and security vulnerabilities in software. However, there are still shortcomings in detecting these errors due to the inability of…

Software Engineering · Computer Science 2024-04-19 Kaled M. Alshmrany , Mohannad Aldughaim , Ahmed Bhayat , Lucas C. Cordeiro

Embedded Systems combine one or more processor cores with dedicated logic running on an ASIC or FPGA to meet design goals at reasonable cost. It is achieved by profiling the application with variety of aspects like performance, memory…

Performance · Computer Science 2013-12-12 Rajendra Patel , Arvind Rajwat

While vehicles have primarily been controlled through mechanical means in years past, an increasing number of embedded control systems are being installed and used, keeping pace with advances in electronic control technology and…

This paper reports on our experiences with verifying automotive C code by state-of-the-art open source software model checkers. The embedded C code is automatically generated from Simulink open-loop controller models. Its diverse features…

Logic in Computer Science · Computer Science 2020-03-27 Lukas Westhofen , Philipp Berger , Joost-Pieter Katoen

The latest trends in high-performance computing systems show an increasing demand on the use of a large scale multicore systems in a efficient way, so that high compute-intensive applications can be executed reasonably well. However, the…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-02-25 Juliana M. N. Silva , Cristina Boeres , Lúcia M. A. Drummond , Artur A. Pessoa

Component-based software development (CBSD) is an alternative approach to constructing software systems that offers numerous benefits, particularly in decreasing the complexity of system design. However, deploying components into a system…

Software Engineering · Computer Science 2021-05-28 Faranak Nejati , Abdul Azim Abd. Ghani , Ng Keng Yap , Azmi Jaafar

We explore ideas for scaling verification methods for quantum circuits using SMT (Satisfiability Modulo Theories) solvers. We propose two primary strategies: (1) decomposing proof obligations via compositional verification and (2)…

Logic in Computer Science · Computer Science 2024-12-02 Benedikt Fauseweh , Ben Hermann , Falk Howar

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

Event-driven multi-threaded programming is an important idiom for structuring concurrent computations. Stateless Model Checking (SMC) is an effective verification technique for multi-threaded programs, especially when coupled with Dynamic…

Mixed-Criticality (MC) systems consolidate multiple functionalities with different criticalities onto a single hardware platform. Such systems improve the overall resource utilization while guaranteeing resources to critical tasks. In this…

Operating Systems · Computer Science 2020-03-13 Saravanan Ramanathan , Arvind Easwaran