Journal of Automated Reasoning

, Volume 40, Issue 1, pp 1-33

First online:

Algorithms for Computing Minimal Unsatisfiable Subsets of Constraints

  • Mark H. LiffitonAffiliated withDepartment of Electrical Engineering and Computer Science, University of Michigan Email author 
  • , Karem A. SakallahAffiliated withDepartment of Electrical Engineering and Computer Science, University of Michigan

Rent the article at a discount

Rent now

* Final gross prices may vary according to local VAT.

Get Access


Much research in the area of constraint processing has recently been focused on extracting small unsatisfiable “cores” from unsatisfiable constraint systems with the goal of finding minimal unsatisfiable subsets (MUSes). While most techniques have provided ways to find an approximation of an MUS (not necessarily minimal), we have developed a sound and complete algorithm for producing all MUSes of an unsatisfiable constraint system. In this paper, we describe a relationship between satisfiable and unsatisfiable subsets of constraints that we subsequently use as the foundation for MUS extraction algorithms, implemented for Boolean satisfiability constraints. The algorithms provide a framework with which many related subproblems can be solved, including relaxations of completeness to handle intractable instances, and we develop several variations of the basic algorithms to illustrate this. Experimental results demonstrate the performance of our algorithms, showing how the base algorithms run quickly on many instances, while the variations are valuable for producing results on instances whose complete results are intractably large. Furthermore, our algorithms are shown to perform better than the existing algorithms for solving either of the two distinct phases of our approach.


Constraint satisfaction Minimal unsatifiable subset CAMUS