Property Checking By Logic Relaxation

Eugene Goldberg
DOI: https://doi.org/10.48550/arXiv.1601.02742
2016-01-12
Abstract:We introduce a new framework for Property Checking (PC) of sequential circuits. It is based on a method called Lo-gic Relaxation (LoR). Given a safety property, the LoR method relaxes the transition system at hand, which leads to expanding the set of reachable states. For j-th time frame, the LoR method computes a superset A_j of the set of bad states reachable in j transitions only by the relaxed system. Set A_j is constructed by a technique called partial quantifier elimination. If A_j does not contain a bad state and this state is reachable in j transitions in the relaxed system, it is also reachable in the original system. Hence the property in question does not hold. The appeal of PC by LoR is as follows. An inductive invariant (or a counterexample) generated by LoR is a result of computing the states reachable only in the relaxed system. So, the complexity of PC can be drastically reduced by finding a "faulty" relaxation that is close to the original system. This is analogous to equivalence checking whose complexity strongly depends on how similar the designs to be compared are.
Logic in Computer Science
What problem does this paper attempt to address?
The problem that this paper attempts to solve is to develop a new framework and algorithm for property checking (PC) of sequential circuits. Specifically, the author introduced a method called Logic Relaxation (LoR), which constructs a superset of reachable states by relaxing the transition relation and using the Partial Quantifier Elimination (PQE) technique. This method aims to simplify the complexity of property checking and improve the verification efficiency. ### Core Problems of the Paper 1. **Complexity of Property Checking**: - Traditional property - checking methods are less efficient when dealing with quantified formulas, resulting in high computational complexity. - The author proposes to reduce the computational complexity through Logic Relaxation and PQE techniques, so as to perform property checking more efficiently. 2. **How to Effectively Utilize Quantified Formulas**: - The paper explores how to use quantified formulas for reasoning to achieve powerful equivalence and satisfiability transformations. - The author developed Dependency sequents (D - sequents) and Partial Quantifier Elimination (PQE) techniques to improve the performance of processing quantified formulas. 3. **Construction of Boundary Formulas**: - By constructing boundary formulas, the differences between the original system and the relaxed system can be distinguished. - Boundary formulas are used to over - approximate the set of states reachable only by the relaxed system within a specific time frame. 4. **Guarantee of Algorithm Convergence**: - The proposed PCLoR algorithm (PC by LoR) ensures the final generation of counterexamples or inductive invariants by maintaining four convergence conditions (CO conditions). ### Formula Representation - **Transition Relation**: Let \( T(S_j, X_j, Y_j, S_{j + 1}) \) represent the transition relation of the \( j \) - th time frame. - **Relaxed Transition Relation**: Let \( T^{rlx}_{j,j + 1} \) represent the relaxed transition relation, where \( T_{j,j + 1}\Rightarrow T^{rlx}_{j,j + 1} \). - **Boundary Formula**: Let \( H_j(S_j) \) be the boundary formula, satisfying: - For each state \( s \) that is reachable in \( \xi^{rlx} \) but not reachable in \( \xi \), \( H_j(s)=0 \). - For each state \( s \) that is reachable in \( \xi \), \( H_j(s) = 1 \). ### Algorithm Flow 1. **Initialization**: Let \( H_0=I \), that is, the initial state formula. 2. **Iteratively Generate Boundary Formulas**: - For each time frame \( j \), generate the boundary formula \( H_j \). - Check whether \( H_{j - 1}\wedge T^{rlx}_{j - 1,j}\rightarrow P \) holds. - If it does not hold, then correct it by strengthening \( H_{j - 1} \) or further relaxing the transition relation. 3. **Maintain Convergence Conditions**: - Ensure that \( H_{j - 1}\wedge T^{rlx}_{j - 1,j}\rightarrow H_j \) and \( H_{j - 1}\rightarrow H_j \) hold. Through the above steps, the PCLoR algorithm can effectively perform property checking and find counterexamples or prove inductive invariants when necessary.