Skip to main content

Formal Hardware Verification Methods: A Survey

  • Chapter
Computer-Aided Verification

Abstract

Growing advances in VLSI technology have led to an increased level of complexity in current hardware systems. Late detection of design errors typically results in higher costs due to the associated time delay as well as loss of production. Thus it is important that hardware designs be free of errors. Formal verification has become an increasingly important technique towards establishing the correctness of hardware designs. In this article we survey the research that has been done in this area, with an emphasis on more recent trends. We present a classification framework for the various methods, based on the forms of the specification, the implementation, and the proof method. This framework enables us to better highlight the relationships and interactions between seemingly different approaches.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 129.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 169.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

Other Surveys

  1. P. Camurati and P. Prinetto. Formal verification of hardware correctness: Introduction and survey of current research. Computer, 21(7):8–19 (July 1988).

    Google Scholar 

  2. E.M. Clarke and O. Grumberg. Research on automatic verification of finite-state concurrent systems. Annual Review of Computer Science, Carnegie Mellon University, Pittsburgh, PA, 2:269–290 (1987).

    MathSciNet  Google Scholar 

  3. A. Pnueli. Applications of temporal logic to the specification and verification of reactive systems: A survey of current trends. In Current Trends in Concurrency, J.W. de Bakker, W-P.de Roever, and G. Rozenberg (eds.), volume 224 of Lecture Notes in Computer Science, Springer-Verlag, New York, 1986, pp. 510–584.

    Google Scholar 

  4. M. Yoeli. Formal Verification of Hardware Design. IEEE Computer Society Press, Los Alamitos, CA, 1990. Logic

    Google Scholar 

Logic

  1. J. Barwise (ed.). Handbook of Mathematical Logic. North-Holland, Amsterdam, 1977.

    Google Scholar 

  2. D. Gabbay and E Guenthner (eds.). Handbook of Philosophical Logic, volumes 1, 2, and 3. D. Reidel, Boston, 1983.

    MATH  Google Scholar 

  3. W.S. Hatcher. The Logical Foundations of Mathematics. Pergamon Press, Oxford, England, 1982.

    MATH  Google Scholar 

  4. G. Hunter. Metalogic: An Introduction to Metatheory of Standard First Order Logic. University of California Press, Berkeley, 1971.

    MATH  Google Scholar 

  5. E. Mendelson. Introduction to Mathematical Logic. Van Nostrand, New York, 1964. First-Order Logic

    Google Scholar 

First-Order Logic

  1. D.L. Beatty, R.E. Bryant, and C.-J.H. Seger. Synchronous circuit verification by symbolic simulation: An illustration. In Proceedings of the Sixth MIT Conference on Advanced Research in VLSI, W.J. Daily (ed.)., MIT Press, Cambridge, 1990, pp. 98–112.

    Google Scholar 

  2. S. Bose and A.L. Fisher. Verifying pipelined hardware using symbolic logic simulation. In Proceedings of the IEEE International Conference on Computer Design, IEEE Computer Society Press, Silver Spring, MD, 1989, pp. 217–221.

    Google Scholar 

  3. R.E. Bryant. Graph-based algorithms for Boolean function manipulation. IEEE Transactions on Computers, C-35(8):677–691 (August 1986).

    MATH  Google Scholar 

  4. R.E. Bryant. Algorithmic aspects of symbolic switch network analysis. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 6(4):618–633 (July 1987).

    Google Scholar 

  5. R.E. Bryant. A methodology for hardware verification based on logic simulation. Technical Report CMU-CS-87–128, Computer Science Department, Carnegie Mellon University, Pittsburgh, PA, June 1987.

    Google Scholar 

  6. R.E. Bryant. Symbolic analysis of VLSI circuits. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 6(4):634–649 (July 1987).

    Google Scholar 

  7. R.E. Bryant. Verifying a static RAM design by logic simulation. In Proceedings of the Fifth MIT Conference on Advanced Research in VLSI, J. Allen and F.T. Leighton (eds.). MIT Press, Cambridge, 1988, pp. 335–349.

    Google Scholar 

  8. R.E. Bryant, D. Beatty, K. Brace, K. Cho, and T Sheffler. COSMOS: A compiled simulator for MOS circuits. In Proceedings of the 24th ACM/IEEE Design Automation Conference, IEEE Computer Society Press, Los Alamitos, CA, June 1987, pp. 9–16.

    Google Scholar 

  9. J.A. Darringer. The application of program verification techniques to hardware verification. In Proceedings of the Sixteenth ACM/IEEE Design Automation Conference, IEEE Computer Society Press, Los Alamitos, CA, June 1979, pp. 375–381.

    Google Scholar 

  10. R.W. Floyd. Assigning meaning to programs. Proceedings of Symposia in Applied Mathematics: Mathematical Aspects of Computer Science, 19:19–31 (1967).

    MathSciNet  Google Scholar 

  11. M.R. Garey and D.S. Johnson. Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman, San Francisco, 1979.

    Google Scholar 

  12. C.A.R. Hoare. An axiomatic basis for computer programming. Communications of the ACM, 12:576–580 (1969).

    MATH  Google Scholar 

  13. C.A.R. Hoare. Proof of correctness of data representations. Acta Informatica, 1:271–281 (1972).

    MATH  Google Scholar 

  14. Z. Kohavi. Swtiching and Finite Automata Theory. McGraw-Hill, New York, 1978.

    Google Scholar 

  15. R. Milner. A Calculus of Communicating Systems, volume 92 of Lecture Notes in Computer Science. Springer-Verlag, New York, 1980.

    Google Scholar 

  16. E.F. Moore. Gedanken-experiments on sequential machines. In Automata Studies, C.E. Shannon (ed.), Princeton University Press, Princeton, NJ, 1956, pp. 129–153.

    Google Scholar 

  17. R.E. Shostak. Formal verification of circuit designs. In Proceedings of the Sixth International Symposium on Computer Hardware Description Languages and their Applications, T Uehara and M. Barbacci (eds.). IFIP, North-Holland, Amsterdam, 1983. Boyer-Moore Logic

    Google Scholar 

Boyer-Moore Logic

  1. W.R. Bevier. Kit and the short stack. Journal of Automated Reasoning,5(4):519–530 (1989).

    Google Scholar 

  2. W.R. Bevier, W.A. Hunt Jr., J.S. Moore, and W.D. Young An approach to systems verification. Journal of Automated Reasoning,5(4):411–428 (1989).

    Google Scholar 

  3. R.S. Boyer and J.S. Moore. Proof-checking, theorem-proving and program verification. Contemporary Mathematics, 29:119–132 (1984).

    Google Scholar 

  4. R.S. Boyer and J.S. Moore. A Computational Logic Handbook. Academic Press, Boston, 1988.

    MATH  Google Scholar 

  5. A. Bronstein and C.L. Talcott. String-functional semantics for formal verification of synchronous circuits. Technical Report 1210, Stanford University, Stanford, CA, 1988.

    Google Scholar 

  6. A. Bronstein and C.L. Talcott. Formal verification of synchronous circuits based on string-functional semantics: The 7 Paillet circuits in Boyer-Moore. In Proceedings of the International Workshop on Automatic Verification Methods for Finite State Systems, Grenoble, France, volume 407 of Lecture Notes in Computer Science. Springer-Verlag, New York, 1989, pp. 317–333.

    Google Scholar 

  7. S.M. German and Y. Wang. Formal verification of parameterized hardware designs. In Proceedings of the IEEE International Conference on Computer Design, IEEE Computer Society Press, Silver Spring, MD, 1985, pp. 549–552.

    Google Scholar 

  8. W.A. Hunt Jr. FM 8501: A verified microprocessor. Ph.D. thesis, Technical Report ICSCACMP-47, University of Texas at Austin, 1985.

    Google Scholar 

  9. W.A. Hunt Jr. The mechanical verification of a microprocessor design. In From HDL Descriptions to Guaranteed Correct Circuit Designs, D. Borrione (ed.). North-Holland, Amsterdam, 1987, pp. 89–129.

    Google Scholar 

  10. W.A. Hunt Jr. Micropocessor design verification. Journal of Automated Reasoning, 5(4):429–460 (1989).

    Google Scholar 

  11. J.S. Moore. A mechanically verified language implementation. Journal of Automated Reasoning, 5(4):461–492 (1989).

    Google Scholar 

  12. W.D. Young. A mechanically verified code generator. Journal of Automated Reasoning, 5(4):493–518 (1989).

    Google Scholar 

Higher-Order Logic

  1. H.G. Barrow. Proving the correctness of digital hardware designs. VLSI Design, 5:64–77 (July 1984).

    Google Scholar 

  2. A.J. Camilleri, M.J.C. Gordon, and T.F. Melham. Hardware verification using higher-order logic. In From HDL Descriptions to Guaranteed Correct Circuit Designs, D. Borrione (ed.). North-Holland, Amserdam, 1987, pp. 43–67.

    Google Scholar 

  3. W.F. Clocksin and C.S. Mellish. Programming in Prolog. Springer-Verlag, New York, 1981.

    MATH  Google Scholar 

  4. A. Cohn. A proof of correctness of the VIPER microprocessor: The first level. In VLSI Specification, Verification and Synthesis, G. Birtwistle and RA. Subrahmanyam (eds.). Kluwer Academic Publishers, Boston, 1987, pp. 27–71.

    Google Scholar 

  5. A. Cohn. The notion of proof in hardware verification. Journal of Automated Reasoning, 5(4):127–139 (1989).

    MATH  Google Scholar 

  6. W.J. Cullyer. Implementing safety critical systems: The VIPER microprocessor. In VLSI Specification, Verification and Synthesis, G. Birtwistle and P.A. Subrahmanyam (eds.). Kluwer Academic Publishers, Boston, 1987, pp. 1–26.

    Google Scholar 

  7. I. Dhingra. Formal validation of an integrated circuit design methodology. In VLSI Specification, Verification and Synthesis, G. Birtwistle and P.A. Subrahmanyam (eds.). Kluwer Academic Publishers, Boston, 1987, pp. 293–322.

    Google Scholar 

  8. M.J.C. Gordon. LCF_LSM: A system for specifying and verifying hardware. Technical Report 41, Computer Laboratory, University of Cambridge, 1983.

    Google Scholar 

  9. M.J.C. Gordon. HOL: A machine oriented formulation of higher order logic. Technical Report 68, Computer Laboratory, University of Cambridge, May 1985.

    Google Scholar 

  10. M.J.C. Gordon. Why higher-order logic is a good formalism for specifying and verifying hardware. Technical Report 77, Computer Laboratory, University of Cambridge, September 1985.

    Google Scholar 

  11. M.J.C. Gordon. HOL: A proof generating system for higher-order logic. In VLSI Specification, Verification and Synthesis, G. Birtwistle and P.A. Subrahmanyam (eds.). Kluwer Academic Publishers, Boston, 1987, pp. 73–128.

    Google Scholar 

  12. M.J.C. Gordon. Mechanizing programming logics in higher order logic. In Current Trends in Hardware Verification and Automatic Theorem Proving, G. Birtwistle and P.A. Subrahmanyam (eds.). Springer-Verlag, New York, 1989, pp. 387–439.

    Google Scholar 

  13. M.J.C. Gordon and J. Herbert. Formal hardware verification methodology and its application to a network interface chip IEE Proceedings133, Part E(5):255–270 (September 1986).

    Google Scholar 

  14. M.J.C. Gordon, P. Loewenstein, and M. Shahaf. Formal verification of a cell library: A case study in technology transfer. In Proceedings of the IFIP International Workshop on Applied Formal Methods for Correct VLSI Design, Leuven, Belgium, 1989, L.J.M. Claesen, (ed.), North-Holland, Amsterdam, 1990, pp. 409–417 (Volume II).

    Google Scholar 

  15. M.J.C. Gordon, R. Milner, and C. P. Wadsworth. Edinburgh LCF: A Mechanized Logic of Computation, volume 78 of Lecture Notes in Computer Science. Springer-Verlag, New York, 1979.

    Google Scholar 

  16. F.K. Hanna and N. Daeche. Specification and verification of digital systems using higher-order predicate logic. IEE Proceedings, 133 Part E(5):242–254 (September 1986).

    Google Scholar 

  17. J.M.J. Herbert. Formal verification of basic memory devices. Technical Report 124, Computer Laboratory, University of Cambridge, 1988.

    Google Scholar 

  18. C. A.R. Hoare. Communicating sequential processes Communications of the ACM21(8):666–667 (August 1978).

    MathSciNet  MATH  Google Scholar 

  19. J.J. Joyce. Formal verification and implementation of a microprocessor. In VLSI Specification,Verification and Synthesis, G. Birtwistle and P.A. Subrahmanyam (eds.). Kluwer Academic Publishers, Boston, 1987, pp. 129–158.

    Google Scholar 

  20. J.J. Joyce. Multi-level verification of microprocessor-based systems. Ph.D. thesis, Technical Report 195, Computer Laboratory, University of Cambridge, 1990.

    Google Scholar 

  21. T.F. Melham. Abstraction mechanisms for hardware verification. In VLSI Specification, Verification and Synthesis, G. Birtwistle and P.A. Subrahmanyam (eds.). Kluwer Academic Publishers, Boston, 1987, pp. 267–291.

    Google Scholar 

  22. T.F. Melham. Using recursive types to reason about hardware in higher order logic. In Fusion of Hardware Design and Verification, G.J. Milne (ed.). North-Holland, Amsterdam, 1988, pp. 27–50.

    Google Scholar 

  23. T.F. Melham. Formalizing abstraction mechanisms for hardware verification in higher order logic. Ph.D. thesis, Technical Report 201, Computer Laboratory, University of Cambridge, 1990.

    Google Scholar 

Temporal Logic

  1. K. Apt and D. Kozen. Limits for automatic verification of finite-state concurrent systems. Information Processing Letters, 22(6):307–309 (1986).

    MathSciNet  Google Scholar 

  2. H. Barringer and R. Kuiper. A temporal logic specification method supporting hierarchical development. Technical report, University of Manchester, November 1983.

    Google Scholar 

  3. H. Barringer, R. Kuiper, and A. Pnueli. Now you may compose temporal logic specifications. In Proceedings of the Sixteenth Annual ACM Symposium on Theory of Computing, ACM, New York, 1984, pp. 51–63.

    Google Scholar 

  4. M. Ben-Ari, A. Pnueli, and Z. Manna. The temporal logic of branching time. Acta Informatioa, 20(3):207–226 (1983).

    MathSciNet  MATH  Google Scholar 

  5. G.V. Bochmann. Hardware specification with temporal logic: An example. IEEE Transactions on Computers, C-31(3):223–231 (March 1982).

    MathSciNet  MATH  Google Scholar 

  6. S. Bose and A.L. Fisher. Automatic verification of synchronous circuits using symbolic simulation and temporal logic. In Proceedings of the IFIP International Workshop on Applied Formal Methods for Correct VLSI Design, Leuven, Belgium, 1989, L. J. M. Claesen, (ed.), North-Holland, Amsterdam, 1990, pp. 759–764.

    Google Scholar 

  7. M.C. Browne and E.M. Clarke. SML: A high level language for the design and verification of finite state machines. In From HDL Descriptions to Guaranteed Correct Circuit Designs, D. Borrione (eds.). North-Holland, Amsterdam, 1987, pp. 269–292.

    Google Scholar 

  8. M.C. Browne, E.M. Clarke, and D.L. Dill. Automatic circuit verification using temporal logic: Two new examples. In Formal Aspects of VLSI Design, G.J. Milne and P.A. Subrahmanyam (eds.). North-Holland, Amsterdam, 1986, pp. 113–124.

    Google Scholar 

  9. M.C. Browne, E.M. Clarke, D.L. Dill, and B. Mishra. Automatic verification of sequential circuits using temporal logic. IEEE Transactions on Computers, C-35(12):1035–1044 (December 1986).

    MATH  Google Scholar 

  10. R.E. Bryant and C.-J.H. Seger. Formal verification of digital circuits using symbolic ternary system models. In Proceedings of the Workshop on Computer-Aided Verification (CAV 90), E.M Clarke and R.P. Kurshan (eds.), volume 3 of DIMACS Series in Discrete Mathematics and Theoretical Computer Science. American Mathematical Society, Springer-Verlag, New York, 1991.

    Google Scholar 

  11. J. Burch, E.M. Clarke, K. McMillan, and D.L. Dill. Sequential circuit verification using symbolic model checking. In Proceedings of the 27th ACM/IEEE Design Automation Conference, IEEE Computer Society Press, Los Alamitos, CA, June 1990, pp. 46–51.

    Google Scholar 

  12. E.M. Clarke, S. Bose, M.C. Browne, and O. Grumberg. The design and verification of finite state hardware controllers. Technical Report CMU-CS-87–145, Computer Science Department, Carnegie Mellon University, Pittsburgh, PA, July 1987.

    Google Scholar 

  13. E.M. Clarke and E.A. Emerson. Design and synthesis of synchronization skeletons using branching time temporal logic. In Proceedings of the Workshop on Logics of Programs, volume 131 of Lecture Notes in Computer Science. Springer-Verlag, New York, 1981, pp. 52–71.

    Google Scholar 

  14. E.M. Clarke, E.A. Emerson, and A.P. Sistla. Automatic verification of finite state concurrent systems using temporal logic specifications. ACM Transactions on Programming Languages and Systems, 8(2):244–263 (April 1986).

    MATH  Google Scholar 

  15. E.M. Clarke and O. Grumberg. Avoiding the state explosion problem in temporal logic model checking algorithms. In Proceedings of the Sixth Annual ACM Symposium on Principles of Distributed Computing, ACM, New York, August 1987, pp. 294–303.

    Google Scholar 

  16. E.M. Clarke, O. Grumberg, and M.C. Browne. Reasoning about networks with many identical finite-state processes. In Proceedings of the Fifth Annual ACM Symposium on Principles of Distributed Computing, ACM, New York, August 1986, pp. 240–248.

    Google Scholar 

  17. E.M. Clarke, O. Grumberg, and D.E. Long. Model checking and abstraction. In Proceedings of the Nineteenth Annual ACM Symposium on Principles of Programming Languages. ACM, New York, January 1992.

    Google Scholar 

  18. E.M. Clarke, D.E. Long, and K.L. McMillan. Compositional model checking. In Proceedings of the Fourth Annual Symposium on Logic in Computer Science, IEEE Computer Society Press, Washington, D.C., June 1989, pp. 353–361.

    Google Scholar 

  19. E.M. Clarke, D.E. Long, and K.L. McMillan. A language for compositional specification and verification of finite state hardware controllers. In International Symposium on Computer Hardware Description Languages and their Applications, J.A. Darringer and F.J. Rammig (eds.). IFIP. North-Holland, Amsterdam, 1989, pp. 281–295.

    Google Scholar 

  20. O. Coudert, J.C. Madre, and C. Berthet Verifying temporal properties of sequential machines without building their state diagrams. In Proceedings of the Workshop on Computer-Aided Verification (CAV 90) E.M. Clarke and R.P. Kurshan (eds.). volume 3 of DIMACS Series in Discrete Mathematics and Theoretical Computer Science. American Mathematical Society, Springer-Verlag, New York, NY, 1991.

    Google Scholar 

  21. D.L. Dill and E.M. Clarke. Automatic verification of asynchronous circuits using temporal logic. IEE Proceedings, 133 Part E(5):276–282 (September 1986).

    Google Scholar 

  22. E.A. Emerson. Temporal and modal logic. In Handbook of Theoretical Computer Science,volume B, J. van Leeuwen (ed.). Elsevier Science Publishers, Amsterdam, 1990, pp. 995–1071.

    Google Scholar 

  23. E.A. Emerson and E.M. Clarke. Characterizing correctness properties of parallel programs as fixpoints. In Proceedings of the Seventh International Colloquium on Automata,Languages, and Programming, volume 85 of Lecture Notes in Computer Science. Springer-Verlag, New York, 1981, pp. 169–181.

    Google Scholar 

  24. E.A. Emerson and J.Y. Halpern. Decision procedures and expressiveness in the temporal logic of branching time. In Proceedings of the Fourteenth Annual ACM Symposium on Theory of Computing. ACM, New York, 1982, pp. 169–180.

    Google Scholar 

  25. E.A. Emerson and J.Y. Halpern. `Sometimes’ and `Not Never’ revisited: On branching time versus linear time temporal logic. Journal of the ACM, 33(1):151–178 (1986).

    MathSciNet  MATH  Google Scholar 

  26. E.A. Emerson and C.L. Lei Modalities for model checking: Branching time strikes back. In Proceedings of the Twelfth Annual ACM Symposium on Principles of Programming Languages, ACM, New York, January 1985, pp. 84–96.

    Google Scholar 

  27. N. Francez. Fairness. Springer-Verlag, New York, 1986.

    MATH  Google Scholar 

  28. D. Gabbay, A. Pnueli, S. Shelah, and J. Stavi On the temporal analysis of fairness. In Proceedings of the Seventh Annual ACM Symposium on Principles of Programming Languages, ACM, New York, 1980, pp. 163–173.

    Google Scholar 

  29. O. Grumberg and D.E. Long. Model checking and modular verification. In Proceedings of CONCUR ‘81: Second International Conference on Concurrency Theory,volume 527 of Lecture Notes in Computer Science. Springer-Verlag, New York, August 1991.

    Google Scholar 

  30. J. Halpern, Z. Manna, and B. Moszkowski A hardware semantics based on temporal intervals. In Proceedings of the Tenth International Colloquium on Automata,Languages, and Programming, volume 154 of it Lecture Notes in Computer Science, Springer-Verlag, New York, 1983, pp. 278–291.

    Google Scholar 

  31. D. Harel, D. Kozen, and R. Parikh. Process logic: Expressiveness, decidability and completeness. Journal of Computer and System Sciences, 25(2):144–170 (1982).

    MathSciNet  MATH  Google Scholar 

  32. G.E. Hughes and M.J. Creswell. An Introduction to Modal Logic. Methuen, London, 1977.

    Google Scholar 

  33. H.W. Kamp. Tense Logic and the Theory of Linear Order. Ph.D. thesis, University of California, Los Angeles, 1968.

    Google Scholar 

  34. R. Koymans, J. Vytopil, and W-P. de Roever. Real-time programming and asynchronous message passing. In Proceedings of the Second Annual ACM Symposium on Principles of Distributed Computing, ACM, New York, 1983, pp. 187–197.

    Google Scholar 

  35. L. Lamport. `Sometime’ is sometimes `Not Never’-On the temporal logic of programs. In Proceedings of the Seventh Annual ACM Symposium on Principles of Programming Languages, ACM, New York, 1980, pp. 174–185.

    Google Scholar 

  36. L. Lamport. Specifying concurrent program modules. ACM Transactions on Programming Languages and Systems, 5(2):190–222 (April 1983).

    MATH  Google Scholar 

  37. L. Lamport. What good is temporal logic? In Proceedings of the IFIP Congress on Information Processing, R.E.A. Mason (ed.). North-Holland, Amsterdam, 1983, pp. 657–667.

    Google Scholar 

  38. M.E. Leeser. Reasoning about the function and timing of integrated circuits with Prolog and temporal logic. Ph.D. thesis, Technical Report 132, Computer Laboratory, University of Cambridge, April 1988.

    Google Scholar 

  39. D. Lehmann, A. Pnueli, and J. Stavi. Impartiality, justice and fairness: The ethics of concurrent termination. In Proceedings of the Eighth International Colloquium on Automata, Language, and Programming, volume 115 of Lecture Notes in Computer Science, Springer-Verlag, New York, 1981, pp. 264–277.

    Google Scholar 

  40. O. Lichtenstein and A. Pnueli. Checking that finite state concurrent programs satisfy their linear specifications. In Proceedings of the Twelfth Annual ACM Symposium on Principles of Programming Languages, ACM, New York, 1985, pp. 97–107.

    Google Scholar 

  41. O. Lichtenstein, A. Pnueli, and L. Zuck. The glory of the past. In Proceedings of the Conference on Logics of Programs,volume 193 of Lecture Notes in Computer Science. Springer-Verlag, New York, 1985, pp. 196–218.

    Google Scholar 

  42. Y. Malachi and S.S. Owicki. Temporal specifications of self-timed systems. In VLSI Systems and Computations, H.T. Kung et. al. (eds.). Computer Science Press, Rockville, MD, 1981, pp. 203–212.

    Google Scholar 

  43. Z. Manna and A. Pnueli. Verification of concurrent programs: Temporal proof principles. In Proceedings of the Workshop on Logics of Programs, volume 131 of Lecture Notes in Computer Science, Springer-Verlag, New York, 1981, pp. 200–252.

    Google Scholar 

  44. Z. Manna and A. Pnueli. Verification of concurrent programs: The temporal framework. In Correctness Problem in Computer Science, R.S. Boyer and J.S. Moore (eds.)., Academic Press, London, 1982, pp. 215–273.

    Google Scholar 

  45. Z. Manna and A. Pnueli. How to cook a temporal proof system for your pet language. In Proceedings of the Tenth Annual ACM Symposium on Principles of Programming Languages, ACM, New York, 1983, pp. 141–154.

    Google Scholar 

  46. Z. Manna and A. Pnueli. Adequate proof principles for invariance and liveness properties of concurrent programs. Science of Computer Programming, 4(3):257–290 (1984).

    MathSciNet  MATH  Google Scholar 

  47. Z. Manna and P. Wolper. Synthesis of communicating processes from temporal logic specifications. ACM Transactions on Programming Languages and Systems,6:68–93 (1984).

    MATH  Google Scholar 

  48. K.L. McMillan. Symbolic Model Checking, An approach to the state explosion problem. Ph.D. thesis, School of Computer Science, Carnegie Mellon University, Pittsburgh, PA, 1992.

    Google Scholar 

  49. K.L. McMillan and J. Schwalbe. Formal verification of the Encore Gigamax cache consistency protocol. In Proceedings of the International Symposium on Shared Memory Multiprocessing, 1991 (sponsored by Information Processing Society, Tokyo, Japan), pp. 242–251.

    Google Scholar 

  50. B. Mishra and E.M. Clarke. Hierarchical verification of asynchronous circuits using temporal logic. Theoretical Computer Science, 38:269–291 (1985).

    MathSciNet  MATH  Google Scholar 

  51. B. Moszkowski. Reasoning about Digital Circuits. Ph.D. thesis, Stanford University, Stanford, CA, 1983.

    Google Scholar 

  52. B. Moszkowski. Executing temporal logic programs. Technical Report 55, Computer Laboratory, University of Cambridge, August 1984.

    Google Scholar 

  53. B. Moszkowski. A temporal logic for multi-level reasoning about hardware. Computer, pp. 10–19 (February 1985).

    Google Scholar 

  54. S. Owicki and L. Lamport. Proving liveness properties of concurrent programs. ACM Transactions on Programming Languages and Systems,4(3):455–495 (July 1992).

    Google Scholar 

  55. A. Pnueli. The temporal logic of programs. In Proceedings of the Eighth Annual Symposium on Foundations of Computer Science, IEEE, New York, 1977, pp. 46–57.

    Google Scholar 

  56. A. Pnueli. In transition from global to modular temporal reasoning about programs. In Logics and Models of Concurrent Systems, K. Apt (ed.). Volume 13 of NATO ASI series, Series F, Computer and System Sciences,Springer-Verlag, New York, 1984, pp. 123–144.

    Google Scholar 

  57. A. Pnueli. Linear and branching structures in the semantics and logics of reactive systems. In Proceedings of the Twelfth International Colloquium on Automata, Languages, and Programming,volume 194 of Lecture Notes in Computer Science, Springer-Verlag, New York, 1985, pp. 15–32.

    Google Scholar 

  58. J.P. Queille and J. Sifakis. Specification and verification of concurrent systems in CESAR. In Proceedings of the Fifth International Symposium in Programming, volume 137 of Lecture Notes in Computer Science, Springer-Verlag, New York, 1982, pp. 337–351.

    Google Scholar 

  59. J.P. Queille and J. Sifakis. Fairness and related properties in transition systems. Acta Informatica,19:195–220 (1983).

    MathSciNet  MATH  Google Scholar 

  60. N. Rescher and A. Urquhart. Temporal Logic. Springer-Verlag, Berlin, 1971.

    MATH  Google Scholar 

  61. B.-H. Schlingloff. Modal definability of w-tree languages. In Proceedings of the ESPRIT-BRA ASMICS Workshop on Logics and Recognizable Sets, Germany, 1990.

    Google Scholar 

  62. A.P. Sistla and E.M. Clarke. Complexity of propositional linear temporal logic. Journal of the ACM, 32(3):733–749 (July 1985).

    MathSciNet  MATH  Google Scholar 

  63. A.P. Sistla, E.M. Clarke, N. Francez, and A.M. Meyer. Can message buffers be axiomatized in temporal logic? Information and Control, 63(1):88–112 (1984).

    MathSciNet  MATH  Google Scholar 

  64. A.P. Sistla and S. German. Reasoning with many processes. In Proceedings of the Annual Symposium on Logic in Computer Science, IEEE Computer Society Press, Washington D.C., 1987, pp. 138–152.

    Google Scholar 

  65. P. Wolper. Expressing interesting properties of programs in propositional temporal logic. In Proceedings of the Thirteenth Annual ACM Symposium on Principles of Programming Languages, ACM, New York, January 1986, pp. 184–192.

    Google Scholar 

Extended Temporal Logic

  1. E.M. Clarke, O. Grumberg, and R.P. Kurshan. A synthesis of two approaches for verifying finite state concurrent systems. In Proceedings of Symposium on Logical Foundations of Computer Science: Logic at Botik ‘89,volume 363 of Lecture Notes in Computer Science. Springer-Verlag, New York, July 1989.

    Google Scholar 

  2. A.C. Shaw. Software specification languages based on regular expressions. Technical report, ETH Zurich, June 1979.

    Google Scholar 

  3. P. Wolper. Temporal logic can be made more expressive. In Proceedings of the 22nd Annual Symposium on Foundations of Computer Science,IEEE, New York, 1981, pp. 340–348.

    Google Scholar 

  4. P. Wolper, M.Y. Vardi, and A.P. Sistla. Reasoning about infinite computation paths. In Proceedings of the 24th Annual Symposium on Foundations of Computer Science,IEEE, New York, 1983, pp. 185–194.

    Google Scholar 

Mu-Calculus

  1. J. Burch, E.M. Clarke, K. McMillan, D. Dill, and J. Hwang. Symbolic model checking: 1020 states and beyond. In Proceedings of the Fifth Annual IEEE Symposium on Logic in Computer Science, IEEE Computer Society Press, Washington, D.C., June 1990, pp. 428–439.

    Google Scholar 

  2. E.A. Emerson and C.-L. Lei. Efficient model checking in fragments of the propositional mu-calculus. In Proceedings of the Annual Symposium on Logic in Computer Science,IEEE Computer Society Press, Washington, D.C., 1986, pp. 267–278.

    Google Scholar 

  3. D. Kozen. Results on the propositional mu-calculus. Theoretical Computer Science, 27:333–354 (December 1983).

    MathSciNet  MATH  Google Scholar 

  4. D. Niwinski. Fixed points vs. infinite generation. In Proceedings of the Third Annual Symposium on Logic in Computer Science, IEEE Computer Society Press, Washington, D.C., July 1988, pp. 402–409.

    Google Scholar 

  5. D. Park. Finiteness is mu-ineffable. Theory of Computation Report No. 3, University of Warwick, Warwick, England, 1974.

    Google Scholar 

  6. D. Park. Concurrency and automata on infinite sequences. In Proceedings of the Fifth GI-Conference on Theoretical Computer Science,volume 104 of Lecture Notes in Computer Science, Springer-Verlag, New York, 1981, pp. 167–183.

    Google Scholar 

  7. V. Pratt. A decidable mu-calculus. In Proceedings of the 22nd Annual Symposium on Foundations of Computer Science, IEEE, New York, 1981, pp. 421–427.

    Google Scholar 

Functional Approaches

  1. D. Borrione, P. Camurati, J.L. Paillet, and P. Prinetto. A functional approach to formal hardware verification: The MTI experience. In Proceedings of the IEEE International Conference on Computer Design,IEEE Computer Science Press, Silver Spring, MD, 1988, pp. 592–595.

    Google Scholar 

  2. D. Borrione and J.L. Paillet. An approach to the formal verification of VHDL descriptions. Research Report 683, IMAG/ARTEMIS, Grenoble, France, November 1987.

    Google Scholar 

  3. Z. Chaochen and C.A.R. Hoare. A model for synchronous switching circuits and its theory of correctness. In Proceedings of the Workshop on Designing Correct Circuits, G. Jones and M. Sheeran (eds.). Springer-Verlag, New York, 1990, pp. 196–211.

    Google Scholar 

  4. G.J. Milne. CIRCAL: A calculus for circuit description. In Integration, the VLSI Journal, Volume 1, Nos. 2 & 3, pp. 121–160 (October 1983).

    Google Scholar 

  5. G.J. Milne. A model for hardware description and verification. In Proceedings of the 21st ACM/IEEE Design Automation Conference, IEEE Computer Society Press, Los Alamitos, CA.

    Google Scholar 

  6. M. Sheeran. µFP, An Algebraic VLSI Design Language. Ph.D. thesis, University of Oxford, England, 1983.

    Google Scholar 

  7. M. Sheeran. Design and verification of regular synchronous circuits. IEE Proceedings, 133 Part E(5):295–304 (September 1986).

    Google Scholar 

  8. T.J. Wagner. Hardware Verification. Ph.D. thesis, Stanford University, Stanford, CA, 1977.

    Google Scholar 

  9. T.J. Wagner. Verification of hardware designs through symbolic manipulation. In Proceedings of the International Symposium on Design Automation and Microprocessors,IEEE, New York, 1977, pp. 50–53.

    Google Scholar 

  10. D. Weise. Multilevel verification of MOS circuits. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 9(4):341–351 (April 1990).

    Google Scholar 

  11. G. Winskel. A compositional model of MOS circuits. In VLSI Specification, Verification and Synthesis, G. Birtwistle and P.A. Subrahmanyam(eds.). Kluwer Academic Publishers, Boston, 1987, pp. 323–347.

    Google Scholar 

Machine Equivalence

  1. J.P. Billon. Perfect normal forms for discrete functions. Technical Report 87019, Bull Research Center, Louveciennes, France, June 1987.

    Google Scholar 

  2. J.P. Billon and J.C. Madre. Original concepts of PRIAM, an industrial tool for efficient formal verification of combinational circuits. In Fusion of Hardware Design and Verification, G. J. Milne (ed.). North-Holland, Amsterdam, 1988, pp. 487–501.

    Google Scholar 

  3. O. Coudert, C. Berthet, and J.C. Madre. Verification of sequential machines using Boolean functional vectors. In Proceedings of the IFIP International Workshop on Applied Formal Methods for Correct VLSI Design, Leuven, Belgium, 1989, L.J.M. Claesen, (ed.), North-Holland, Amsterdam, 1990, pp. 111–128.

    Google Scholar 

  4. O. Coudert, C. Berthet, and J.C. Madre. Verification of synchronous sequential machines using symbolic execution. In Proceedings of the International Workshop on Automatic Verification Methods for Finite State Systems, Grenoble, France, volume 407 of Lecture Notes in Computer Science. Springer-Verlag, New York, 1989, pp. 365–373.

    Google Scholar 

  5. O. Coudert and J.C. Madre. Logics over finite domain of interpretation: Proof and resolution procedures. Technical report, Bull Research Center, Louveciennes, France, 1989.

    Google Scholar 

  6. S. Devadas, H-K. T. Ma, and A.R. Newton. On the verification of sequential machines at differing levels of abstraction. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, June 1988, pp. 713–722.

    Google Scholar 

  7. J.E. Hoperoft and J.D. Ullman. Introduction to Automata Theory, Languages and Computation. Addison-Wesley, Reading, MA, 1979.

    Google Scholar 

  8. J.C. Madre and J.P. Billon. Proving circuit correctness using formal comparison between expected and extracted behavior. In Proceedings of the 25th ACM/IEEE Design Automation Conference, IEEE Computer Society Press, Los Alamitos, CA, 1988, pp. 205–210.

    Google Scholar 

Language Containment

  1. S. Aggarwal, R.P. Kurshan, and K.K. Sabnani. A calculus for protocol specification and validation. In Protocol Specification, Testing and Verification III. North-Holland, Amsterdam, 1983, pp. 19–34.

    Google Scholar 

  2. J.R. Büchi. On a decision method in restricted second order arithmetic. In Proceedings of the 1960 International Congress on Logic, Methodology and Philosophy of Science, E. Nagel et al(ed.). Stanford University Press, Stanford, CA, 1960, pp. 1–12.

    Google Scholar 

  3. E.M. Clarke, I.A. Draghicescu, and R.P. Kurshan. A unified approach for showing language containment and equivalence between various types of w-automata. In Proceedings of the Fifteenth Colloquium on Trees in Algebra and Programming, volume 431 of Lecture Notes in Computer Science. Springer-Verlag, New York, May 1990.

    Google Scholar 

  4. I. Gertner and R.P. Kurshan. Logical analysis of digital circuits. In Proceedings of the Eighth International Symposium on Computer Hardware Description Languages and their Applications, M.R. Barbacci and C.J. Koomen (eds.). IFIP, North-Holland, Amsterdam, 1987, pp. 47–67.

    Google Scholar 

  5. B. Gopinath and R.P. Kurshan. The Selection/Resolution model of coordinating concurrent processes. Technical report, AT&T Bell Laboratories, Murray Hill, NJ, 1980.

    Google Scholar 

  6. P. Halmos. Lectures on Boolean Algebras. Springer-Verlag, New York, 1974.

    MATH  Google Scholar 

  7. Z. Har’El and R.P. Kurshan. Software for analytical development of communication protocols. Technical report, AT&T Bell Laboratories, Murray Hill, NJ, January 1990.

    Google Scholar 

  8. J. Katzenelson and R.P. Kurshan. S/R: A language for specifying protocols and other communicating processes. In Proceedings of the Fifth IEEE International Conference on Computer Communications, IEEE, New York, 1986, pp. 286–292.

    Google Scholar 

  9. R.P. Kurshan. Reducibility in analysis of coordination. In Discrete Event Systems: Models and Applications, volume 103 of Lecture Notes in Control and Information Sciences. Springer-Verlag, New York, 1987, pp. 19–39.

    Google Scholar 

  10. R.P. Kurshan. Analysis of discrete event coordination. In Proceedings of the REX Workshop on Stepwise Refinement of Distributed Systems: Models, Formalisms,Correctness, volume 430 of Lecture Notes in Computer Science, J.W. de Bakker, W.-P. de Roever, and G. Rozenberg (eds.). Springer-Verlag, New York, 1989.

    Google Scholar 

  11. R.P.Kursan and K.L.McMliian.A steycural induction theourem for prosesses.In Proceedings of the Einghth Annual ACM Symposium on Principles of Distriuted Computing,ACM, New York,1989,pp.239–247.

    Google Scholar 

  12. R.P. Kurshan and K.L. McMillan. Analysis of digital circuits through symbolic reduction. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 10(11):1356–1371 (November 1991).

    Google Scholar 

  13. W. Thomas. Automata on infinite objects. In Handbook of Theoretical Computer Science, volume B. J. van Leeuwen (ed.). Elsevier Science Publishers, Amsterdam, 1990, pp. 133–191.

    Google Scholar 

  14. P. Wolper and V. Lovinfosse. Verifying properties of large sets of processes with network invariants. In Proceedings of the International Workshop on Automatic Verification Methods for Finite State Systems, Grenoble, France, volume 407 of Lecture Notes in Computer Science. Springer-Verlag, New York, 1989, pp. 68–80.

    Google Scholar 

Trace Theory

  1. J.R. Burch. Combining CTL, trace theory and timing models. In Proceedings of the International Workshop on Automatic Verification Methods for Finite State Systems,Grenoble, France, volume 407 of Lecture Notes in Computer Science. Springer-Verlag, New York, 1989, pp. 334–348.

    Google Scholar 

  2. T.-A. Chu. On the models for designing VLSI asynchronous digital systems. Integration, the VLSI Journal, 4:99–113 (1986).

    Google Scholar 

  3. D.L. Dill. Trace Theory for Automatic Hierarchical Verification of Speed-Independent Circuits. Ph.D. thesis, Computer Science Department, Carnegie Mellon University, Pittsburgh, PA 15213, 1988. Also published in ACM Distinguished Dissertations Series, MIT Press, Cambridge, MA, 1989.

    Google Scholar 

  4. D.L. Dill. Trace theory for automatic hierarchical verification of speed-independent circuits. In Proceedings of the Fifth MIT Conference on Advanced Research in VLSI, J. Allen and F.T. Leighton (eds.). MIT Press, Cambridge, MA, 1988.

    Google Scholar 

  5. D.L. Dill. Timing assumptions and verification of finite-state concurrent systems. In Proceedings of the International Workshop on Automatic Verification Methods for Finite State Systems, Grenoble, France, volume 407 of Lecture Notes in Computer Science. Springer-Verlag, New York, 1989, pp. 197–212.

    Google Scholar 

  6. A.J. Martin. The design of a self-timed circuit for distributed mutual exclusion. In H. Fuchs, ed., Proceedings of the 1985 Chapel Hill Conference on VLSI; W.H. Freeman, New York, 1985, pp. 245–260.

    Google Scholar 

  7. M. Rem. Concurrent computation and VLSI circuits. In Control Flow and Data Flow: Concepts of Distributed Programming, M. Broy (ed.). Volume 14 of NATO ASI series, series F. Computer and System Sciences, Springer-Verlag, New York, 1985, pp. 399–437.

    Google Scholar 

  8. J. L. A. Sneupscheut. Trace Theory and VLSI Design. Ph.D. thesis, Department of Computing Science, Eindhoven University of Technology, The Netherlands, 1983.

    Google Scholar 

Hybrid Approaches

  1. E. A. Emerson and C. L. Lei. Temporal model checking under generalized fairness constraints. In Proceedings of the Eighteenth Hawaii International Conference on System Sciences,1985, Western Periodicals Company, North Hollywood, CA, pp. 277–288, (Vol. I).

    Google Scholar 

  2. M. Fujita and H. Fujisawa. Specification, verification, and synthesis of control circuits with propositional temporal logic. In Proceedings of the Ninth International Symposium on Computer Hardware Description Languages and their Applications, J. A. Darringer and F. J. Rammig (eds.). IFIP, North-Holland, Amsterdam, 1989, pp. 265–279.

    Google Scholar 

  3. M. Fujita, H. Tanaka, and T. Moto-oka. Verification with Prolog and temporal logic. In Proceedings of the Sixth International Symposium on Computer Hardware Description Languages and Their Applications, T. Uehara and M. Barbacci (eds.)IFIP, North-Holland, Amsterdam, 1983, pp. 103–114.

    Google Scholar 

  4. M. Fujita, H. Tanaka, and T Moto-oka. Logic design assistance with temporal logic. In Proceedings of the Seventh International Symposium on Computer Hardware Description Languages and their Applications, C.J. Koomen and T. Moto-oka (eds.)IFIP, North-Holland, Amsterdam, 1983, pp. 129–138.

    Google Scholar 

  5. P. Loewenstein. Reasoning about state machines in higher-order logic. In Hardware Specification, Verification and Synthesis: Mathematical Aspects M. Leeser and G. Brown (eds.). volume 408 of Lecture Notes in Computer Science. Springer-Verlag, New York, 1990.

    Google Scholar 

  6. P. Loewenstein and D.L. Dill. Verification of a multiprocessor cache protocol using simulation relations and higher-order logic. In Proceedings of the Workshop on Computer-Aided Verification (CAV 90),E.M. Clarke and R.P. Kurshan (eds.). volume 3 of DIMACS Series in Discrete Mathematics and Theoretical Computer Science. American Mathematical Society, Springer-Verlag, New York, 1991.

    Google Scholar 

  7. E. Maruyama and M. Fujita. Hardware verification. IEEE Computer, 18(2):22–32 (February 1985).

    Google Scholar 

  8. A.P. Sistla, M.Y. Vardi, and P. Wolper. The complementation problem for Büchi automata with applications to temporal lcgic. In Proceedings of the Twelfth International Colloquium on Automata, Languages, and Programming, volume 194 of Lecture Notes in Computer Science. Springer-Verlag, New York, pp. 465–474.

    Google Scholar 

  9. M. Vardi and P. Wolper. An automata-theoretic approach to automatic program verification. In Proceedings of the Annual Symposium on Logic in Computer Science. IEEE Computer Society Press, Washington, D.C., June 1986, pp. 332–344.

    Google Scholar 

  10. M. Vardi and P. Wolper. Automata-theoretic techniques for modal logics of programs. Journal of Computer and System Sciences, 32(2): 183–221 (April 1986).

    MathSciNet  MATH  Google Scholar 

  11. P. Wolper. The tableau method for temporal logic: An overview. Logique et Analyse, 28:119–136 (1985).

    MathSciNet  MATH  Google Scholar 

Real-Time Verification

  1. R. Alur, C. Courcoubetics, and D.L. Dill. Model checking for real-time systems. In Proceedings of the Fifth Annual IEEE Symposium on Logic in Computer Science. IEEE Computer Society Press, Washington, D.C., June 1990, pp. 414–425.

    Google Scholar 

  2. R. Alur and D.L. Dill. Automata for modeling real-time systems. In Proceedings of the Seventeenth International Colloquium on Automata,Languages, and Programming, volume 443 of Lecture Notes in Computer Science. Springer-Verlag, New York, 1990.

    Google Scholar 

  3. R. Alur and T.A. Henzinger. A really temporal logic. In Proceedings of the 30th Annual Symposium on Foundations of Computer Science, IEEE, New York, pp. 164–169, 1989.

    Google Scholar 

  4. R. Alur and T.A. Henzinger. Real-time logics: Complexity and expressiveness. In Proceedings of the Fifth Annual IEEE Symposium on Logic in Computer Science, IEEE Computer Society Press, Washington, D.C., June 1990, pp. 390–401.

    Google Scholar 

  5. M. R. Barbacci and J. M. Wing. Specifying functional and timing behavior for real-time systems. In Proceedings of the Conference on Parallel Architectures and Languages Europe, volume 259 of Lecture Notes in Computer Science. Springer-Verlag, New York, June 1987.

    Google Scholar 

  6. A. Bernstein and P. Harter. Proving real-time properties of programs with temporal logic. In Proceedings of the Eighth Annual ACM Symposium on Operating Systems Principles,ACM, New York, December 1981, pp. 1–11.

    Google Scholar 

  7. J.R. Burch. Modeling timing assumptions with trace theory. In Proceedings of the IEEE International Conference on Computer Design, IEEE Computer Science Press, Silver Spring, MD, October 1989, pp. 208–211.

    Google Scholar 

  8. J.R. Burch. Automatic Verification of Real-Time Concurrent Systems. Ph.D. thesis, School of Computer Science, Carnegie Mellon University, Pittsburgh, PA, 1991 (forthcoming).

    Google Scholar 

  9. E.A. Emerson, A.K. Mok, A.P. Sistla, and J. Srinivasan. Quantitative temporal reasoning. Presented at the International Workshop on Automatic Verification Methods for Finite State Systems, Grenoble, France, June 1989.

    Google Scholar 

  10. E. Harel, O. Lichtenstein, and A. Pnueli. Explicit clock temporal logic. In Proceedings of the Fifth Annual IEEE Symposium on Logic in Computer Science. IEEE Computer Society Press, Washington, D.C., June 1990, pp. 402–413.

    Google Scholar 

  11. E Jahanian, R.S. Lee, and A.K. Mok. Semantics of modechart in real time logic. In Proceedings of the 21st Hawaii International Conference on System Sciences, IEEE Computer Science Press, Washington, D.C., January 1988, Volume II, pp. 479–489.

    Google Scholar 

  12. F. Jahanian and A. Mok. Safety analysis of timing properties in real-time systems. IEEE Transactions on Software Engineering, 12(9):890–904 (1986).

    Google Scholar 

  13. E Jahanian, A. Mok, and D.A. Stuart. Formal specification of real-time systems. Technical Report TR-88–25, Department of Computer Science, University of Texas at Austin, June 1988.

    Google Scholar 

  14. E Jahanian and D.A. Stuart. A method for verifying properties of modechart specification. In Proceedings of the IEEE Real-Time Systems Symposium, IEEE, New York, December 1988, pp. 12–21.

    Google Scholar 

  15. R. Koymans. Specifying Message-Passing and Time-Critical Systems with Temporal Logic. Ph.D. thesis, Eindhoven University of Technology, The Netherlands, 1989.

    Google Scholar 

  16. H. Lewis. A logic of concrete time intervals. In Proceedings of the Fifth Annual IEEE Symposium on Logic in Computer Science. IEEE Computer Society Press, Washington, D.C., June 1990, pp. 380–389.

    Google Scholar 

  17. G.H. MacEwen and D.B. Skillicorn. Using higher-order logic for modular specification of real-time distributed systems. In Formal Techniques in Real-time and Fault Tolerant Systems: Proceedings of a Symposium,M. Joseph (ed.), Volume 331 of Lecture Notes in Computer Science. Springer-Verlag, New York, 1988, pp. 36–66.

    Google Scholar 

  18. J. Ostroff. Real-time computer control of discrete event systems modeled by extended state machines: A temporal logic approach. Technical Report 8618, University of Toronto, September 1987.

    Google Scholar 

  19. J. Ostroff. Automated verification of timed transition models. In Proceedings of the International Workshop on Automatic Verification Methods for Finite State Systems, Grenoble, France, volume 407 of Lecture Notes in Computer Science. Springer-Verlag, New York, 1989, pp. 247–256.

    Google Scholar 

  20. A. Pnueli and E. Harel Applications of temporal logic to the specification of real-time systems. In Formal Techniques in Real-time and Fault Tolerant Systems: Proceedings of a Symposium, M. Joseph (ed.), Volume 331 of Lecture Notes in Computer Science. Springer-Verlag, New York, 1988, pp. 84–98.

    Google Scholar 

  21. A. Zwarico and I. Lee. Proving a network of real-time processes correct. In Proceedings of the IEEE Real-Time Systems Symposium, IEEE, New York, December 1985, pp. 169–177.

    Google Scholar 

  22. J.R. Burch. Using BDDs to verify multipliers. In Proceedings of the 28th ACM/IEEE Design Automation Conference, IEEE Computer Society Press, Los Alamitos, CA, June 1991, pp. 408–412.

    Google Scholar 

  23. J.R. Burch, E.M. Clarke, and D.E. Long. Representing circuits more efficiently in symbolic model checking. In Proceedings of the 28th ACM/IEEE Automation Conference, IEEE Computer Society Press, Los Alamitos, CA, June 1991, pp. 403–407.

    Google Scholar 

  24. H. Busch and G. Venzl. Proof-aided design of verified hardware. In Procedings of the 28th ACM/IEEE Design Automation Conference, IEEE Computer Society Press, Los Alamitos, CA, June 1991, pp. 391–396.

    Google Scholar 

  25. H. Eveking. Verification, synthesis and correctness-preserving transformations-cooperative approaches to correct hardware design. In From HDL Descriptions to Guranteed Correct Circuit Designs, D. Borrione (ed.). North-Holland, Amsterdam, 1987, pp. 229–239.

    Google Scholar 

  26. W. Luk and G. Jones. From specifications to parameterized architectures. In Fusion of Hardware Design and Verification, G.J. Milne (ed.). North-Holland, Amsterdam, 1988, pp. 267–268.

    Google Scholar 

  27. H. Ochi, N. Ishiura, and S. Yajima. Breadth-first manipulation of SBDD of Boolean functions for vector processing. In Proceedings of the 28th ACM/IEEE Design Automation Conference,IEEE Computer Society Press, Los Alamitos, CA, June 1991, pp. 413–416.

    Google Scholar 

  28. V. Stavridou, H. Barringer, and D.A. Edwards. Formal specification and verification of hardware: A comparative case study. In Proceedings of the 25th ACM/IEEE Design Automation Conference, 1988, pp. 197–204.

    Google Scholar 

  29. D. Verkest, P. Johannes, L. Claesen, and H. De Man. Formal techniques for proving correctness of parameterized hardware using correctness preserving transformations. In Fusion of Hardware Design and Verification, G.J. Milne (ed.). North-Holland, Amsterdam, 1988, pp. 77–97.

    Google Scholar 

  30. D. Verkest, P. Johannes, L. Claesen, and H. De Man. Correctness proofs of parameterized hardware modules in the Cathedral-II synthesis environment. In Proceedings of the European Design Automation Conference, Glasgow, 1990. IEEE Computer Society Press, Washington, D.C., 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1992 Springer Science+Business Media New York

About this chapter

Cite this chapter

Gupta, A. (1992). Formal Hardware Verification Methods: A Survey. In: Kurshan, R. (eds) Computer-Aided Verification. Springer, Boston, MA. https://doi.org/10.1007/978-1-4615-3556-0_2

Download citation

  • DOI: https://doi.org/10.1007/978-1-4615-3556-0_2

  • Publisher Name: Springer, Boston, MA

  • Print ISBN: 978-1-4613-6579-2

  • Online ISBN: 978-1-4615-3556-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics