Partial Quantifier Elimination And Property Generation
We study partial quantifier elimination (PQE) for propositional CNF formulas with existential quantifiers. PQE is a generalization of quantifier elimination where one can limit the set of clauses taken out of the scope of quantifiers to a small subset of clauses. The appeal of PQE is that many verification problems (e.g. equivalence checking and model checking) can be solved in terms of PQE and the latter can be dramatically simpler than full quantifier elimination. We show that PQE can be used for property generation that can be viewed as a generalization of testing. The objective here is to produce an π’ππ€πππ‘ππ property of a design implementation thus exposing a bug. We introduce two PQE solvers called πΈπΊ-πππΈ and πΈπΊ-πππΈ^+. πΈπΊ-πππΈ is a very simple SAT-based algorithm. πΈπΊ-πππΈ^+ is more sophisticated and robust than πΈπΊ-πππΈ. We use these PQE solvers to find an unwanted property (namely, an unwanted invariant) of a buggy FIFO buffer. We also apply them to invariant generation for sequential circuits from a HWMCC benchmark set. Finally, we use these solvers to generate properties of a combinational circuit that mimic symbolic simulation.
READ FULL TEXT