The bitstate hashing, or supertrace, technique was introduced in 1987 as a method to increase the quality of verification by reachability analyses for applications that defeat analysis by traditional means because of their size. Since then, the technique has been included in many research verification tools, and was adopted in tools that are marketed commercially. It is therefore important that we understand well how and why the method works, what its limitations are, and how it compares with alternative methods over a broad range of problem sizes.
The original motivation for the bitstate hashing technique was based on empirical evidence of its effectiveness. In this paper we provide an analytical argument. We compare the technique with two alternatives that have been proposed in the recent literature. We also describe a sequential bitstate hashing technique that can be of value when confronted with very large problem sizes.
Unable to display preview. Download preview PDF.
- 1.T. Cattel, “Modelization and verification of a multiprocessor realtime OS kernel,” in Proc. 7th FORTE Conference, Bern, Switzerland, pp. 35–51, 1994.Google Scholar
- 2.J. Chaves, “Formal methods at AT&T, an industrial usage report,” in Proc. 4th FORTE Conference, Sydney, Australia, pp. 83–90, 1991.Google Scholar
- 3.P. Godefroid, G.J. Holzmann, and D. Pirottin, “State space caching revisited,” in Proc. 4th Int. Conference on Computer Aided Verification, Montreal, Canada, LNCS, Vol. 663, pp. 178–191, 1992.Google Scholar
- 4.G.J. Holzmann, “On limits and possibilities of automated protocol analysis,” in Proc. 7th IFIP WG 6.1 Int. Workshop on Protocol Specification, Testing, and Verification, North-Holland Publ., Amsterdam, pp. 137–161, 1987.Google Scholar
- 5.G.J. Holzmann, “An improved protocol reachability analysis technique,” Software, Practice and Experience, Vol. 18, No. 2, pp. 137–161, 1988.Google Scholar
- 6.G.J. Holzmann, Design and Validation of Computer Protocols, Prentice Hall, Englewood Cliffs, NJ, 1991.Google Scholar
- 7.G.J. Holzmann, “The theory and practice of a formal method: NewCoRe,” in Proc. 13th IFIP World Computer Congress, Hamburg, Germany, 1994.Google Scholar
- 8.G.J. Holzmann, “Proving the value of formal methods,” in Proc. 7th FORTE Conference, Bern, Switzerland, Chapman & Hall, pp. 385–396, 1994.Google Scholar
- 9.G.J. Holzmann, “The model checker SPIN,” IEEE Trans. on Softw. Eng. (Special issue on Formal Methods in Software Practice), Vol. 23, No. 5, May 1997.Google Scholar
- 10.G.J. Holzmann, P. Godefroid, and D. Pirottin, “Coverage preserving reduction strategies for reachability analysis,” in Proc. 12th IFIP WG 6.1 Int. Workshop on Protocol Specification, Testing, and Verification, North-Holland Publ., Amsterdam, pp. 349–363, 1992.Google Scholar
- 11.F.J. Lin, “Specification and validation of communications in client/server models,” in Proc. 1994 Int. Conference on Network Protocols ICNP, Boston, Mass., pp. 108–116, 1994.Google Scholar
- 12.U. Stern and D. Dill, “Improved probabilistic verification by hash compaction,” in Proc. IFIP WG 10.5 Advanced Research Working Conf. on Correct Hardware Design and Verification Methods, pp. 206–224, 1995.Google Scholar
- 13.U. Stern and D. Dill, “A new scheme for memory-efficient probabilistic verification,” IFIP TC6/WG6.1 Joint Int. Conf. on Formal Description Techn. for Distr. Systems and Comm. Protocols, and Protocol Spec., Testing, and Verification, FORTE/PSTV96, North-Holland Publ., pp. 333–348, 1996.Google Scholar
- 14.P. Wolper and D. Leroy, “Reliable hashing without collision detection,” in Proc. 5th Int. Conference on Computer Aided Verification, Elounda, Greece, Springer-Verlag, LNCS, pp. 59–70, 1993.Google Scholar