Electronic Notes in Theoretical Computer Science · 2002 · 169 citations · 14 references
ComputingComputer EngineeringComputer ScienceFormal MethodsReal-time SystemsSafety EngineeringModel CheckingTemporal LogicLiveness PropertiesLoop ClosingReachabilityReachability AnalysisSafety PropertiesTemporal Logic VerificationTemporal Verification
Temporal logic is widely used for specifying hardware and software systems. Typically two types of properties are distinguished, safety and liveness properties. While safety can easily be checked by reachability analysis, and many efficient checkers for safety properties exist, more sophisticated algorithms have always been considered to be necessary for checking liveness. In this paper we describe an efficient translation of liveness checking problems into safety checking problems. A counter example is detected by saving a previously visited state in an additional state recording component and checking a loop closing condition. The approach handles fairness and thus extends to full LTL.
14
Graph-Based Algorithms for Boolean Function Manipulation
Bryant · IEEE Transactions on Computers · 1986 · 8.9K citations · Full text
E. M. Clarke, Orna Grümberg, D. Long · 1996 · 6.9K citations
Model Checking of Safety Properties
Orna Kupferman, Moshe Y. Vardi · Formal Methods in System Design · 2001 · 577 citations