Harnessing Multiple BMC Engines Together for Efficient Formal Verification

Document Type

Conference Article

Publication Title

Proceedings - 2023 21st ACM/IEEE International Symposium on Formal Methods and Models for System Design, MEMOCODE 2023

Abstract

In recent times, Bounded Model Checking (BMC) engines are gaining wide prominence and showing great effectiveness in formal verification. Today, an arsenal of different BMC engines exist, differing widely in the optimization, representations and solving mechanisms used to represent and navigate the underlying state transition system as they look for property violations. When having a concrete verification task at hand, a designer is often confronted with the problem of engine selection, and more often than not, has to resort to manually designed selection heuristics or machine-learned strategies using carefully selected features of the design. It has been observed that these different engines have different strengths and weaknesses, depending on the nature of the verification task, the property and the complexity of the design. The objective of this paper is to examine if combinations of these engines can help to combine the strengths. We propose an approach that can create a sequencing of BMC engines that can reach better depth in formal verification, as opposed to executing them alone for a specified time. Our approach uses machine learning, specifically, the Multi-Armed Bandit paradigm of Reinforcement Learning, to predict the best-performing BMC engine for a given unrolling depth of the underlying design transition system. We evaluate our approach on a set of benchmark designs and show that it outperforms the state-of-the-art BMC engines in terms of the depth reached or time taken to deduce a property violation on the Hardware Model Checking Competition (HWMCC) benchmarks. Our results demonstrate the potential of machine learning to enhance the efficiency and effectiveness of formal verification, particularly in selecting the best-performing BMC engine sequence for a given verification task.CCS CONCEPTS• Hardware → Software tools for EDA; • Theory of computation → Verification by model checking; • Computing methodologies → Multi-agent reinforcement learning.

First Page

71

Last Page

81

DOI

10.1145/3610579.3611083

Publication Date

1-1-2023

Comments

Open Access, Bronze

This document is currently not available here.

Share

COinS