MaxSAT-based MCS enumeration

  • Authors:
  • Antonio Morgado;Mark Liffiton;Joao Marques-Silva

  • Affiliations:
  • CASL/CSI, University College Dublin, Dublin, Ireland;Illinois Wesleyan University, Bloomington, IL;CASL/CSI, University College Dublin, Dublin, Ireland,INESC-ID/IST, Lisbon, Portugal

  • Venue:
  • HVC'12 Proceedings of the 8th international conference on Hardware and Software: verification and testing
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

Enumeration of Minimal Correction Sets (MCS) finds a wide range of practical applications, including the identification of Minimal Unsatisfiable Subsets (MUS) used in verifying the complex control logic of microprocessor designs (e.g. in the CEGAR loop of RevealTM [1,2]). Current state of the art MCS enumeration exploits core-guided MaxSAT algorithms, namely the so-called MSU3 [16] MaxSAT algorithm. Observe that a MaxSAT solution corresponds to a minimum sized MCS, but a formula may contain MCSes larger than those reported by a MaxSAT solution. These are obtained by enumerating all MaxSAT solutions. This paper proposes novel approaches for MCS enumeration, in the context of SMT, that exploit MaxSAT algorithms other than the MSU3 algorithm. Among other contributions, the paper proposes new blocking techniques that can be applied to different MCS enumeration algorithms. In addition, the paper conducts a comprehensive experimental evaluation of MCS enumeration algorithms, including both the existing and the novel algorithms. Problem instances from hardware verification, the SMT-LIB, and the MaxSAT Evaluation are considered in the experiments.