In program verification, we check that an implementation meets its specification. Both the specification and the implementation describe the possible behaviors of the program, though at different levels of abstraction. We distinguish between two approaches to implementation of specifications. The first approach is trace-based implementation, where we require every computation of the implementation to correlate to some computation of the specification. The second approach is tree-based implementation, where we require every computation tree embodied in the implemenration to correlate to some computation tree embodied in the specification. The two approaches to implementation are strongly related to the linear-time versus branching-time dichotomy in temporal logic. In this work we examine the trace-based and the tree-based approaches from a complexity-theoretic point of view. We consider and compare the complexity of verification of fair transition systems, modeling both the implementation and the specification, in the two approaches. We consider unconditional, weak, and strong fairness. For the trace-based approach, the corresponding problem is language containment. For the tree-based approach, the corresponding problem is fair simulation. We show that while both problems are PSPACE-complete, their complexities in terms of the size of the implementation do not coincide and the trace-based approach is more efficient. As the implementation is normally much bigger than the specification, we see this as an advantage of the trace-based approach. Our results are at variance with the known results for the case of transition systems with no fairness, where the tree-based approach is more efficient.
|Title of host publication
|Computer Aided Verification - 8th International Conference, CAV 1996, Proceedings
|Thomas A. Henzinger, Rajeev Alur
|Number of pages
|Published - 1996
|8th International Conference on Computer Aided Verification, CAV 1996 - New Brunswick, United States
Duration: 31 Jul 1996 → 3 Aug 1996
|Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
|8th International Conference on Computer Aided Verification, CAV 1996
|31/07/96 → 3/08/96
Bibliographical notePublisher Copyright:
© Springer-Verlag Berlin Heidelberg 1996.