Skip to main content

Reactive Systems

  • Chapter
  • First Online:
Scalable Techniques for Formal Verification
  • 710 Accesses

Abstract

In this chapter, we consider modeling and verification of reactive systems. We discuss why the correctness statement formalized for sequential programs is inadequate for reactive systems. We then formalize a different correctness statement based on refinements and derive a deductive recipe for proving such a correctness statement.

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 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 119.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.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

Notes

  1. 1.

    Any nondeterministic system that accepts a sequence of external inputs can be modeled as a deterministic system if any of the external inputs to the system do not depend somehow on any intermediate output produced by the system. This is because we can model the system with all the external inputs as being stored initially in one of the state component; whenever an external input is required that component is consulted for the appropriate stimulus.

  2. 2.

    Throughout this chapter, we will make use of well-foundedness to formalize several arguments. We assume that we use a fixed well-founded structure ⟨o-p ≺, ≺ ⟩. In general, our framework may be thought to be parameterized over the well-founded structure used.

  3. 3.

    One can extend GZ with an axiom positing the enumerability of the ACL2 universe, that is, the existence of a bijection between all ACL2 objects and the natural numbers. It is easy to see that the extended theory is consistent: there are models of GZ which are enumerable. The restriction of the legal inputs to only constitute good objects for the purpose of formalizing fairness is necessary if such an axiom is added. However, we did not go along that path since adding axioms incurs a certain amount of logical burden for soundness and also induces practical problems, for example, introduction of axioms cannot be local (to avoid risk of inconsistency), and hence, a book in which an axiom is defined cannot be locally included.

  4. 4.

    This deficiency was pointed out to the author by John Matthews in a private conversation on October 20, 2005. The author is grateful to him for the contribution.

  5. 5.

    Manolios [152] achieves this one-sided abstraction for branching time, by introducing proof rules for stuttering simulation.

References

  1. M. Abadi and L. Lamport. The Existence of Refinement Mappings. Theoretical Computer Science, 82(2):253–284, May 1991.

    Article  MathSciNet  MATH  Google Scholar 

  2. K. R. Apt and D. Kozen. Limits for Automatic Verification of Finite-State Concurrent Systems. Information Processing Letters, 15:307–307, 1986.

    Article  MathSciNet  Google Scholar 

  3. P. Attie. Liveness-Preserving Simulation Relations. In J. Welch, editor, Proceedings of 18th ACM Symposium on Principles of Distributed Computing (PODC 1999), pages 63–72, Atlanta, GA, May 1999. ACM Press.

    Google Scholar 

  4. K. A. Barlett, R. A. Scantlebury, and P. C. Wilkinson. A Note on Reliable Full Duplex Transmission over Half Duplex Links. Communications of the ACM, 12, 1969.

    Google Scholar 

  5. M. Browne, E. M. Clarke, and O. Grumberg. Characterizing Finite Kripke Structures in Propositional Temporal Logic. Theoretical Computer Science, 59, 1988.

    Google Scholar 

  6. K. M. Chandy and J. Misra. Parallel Program Design: A Foundation. Addison-Wesley, Cambridge, MA, 1990.

    Google Scholar 

  7. C. Chou and D. Peled. Formal Verification of a Partial-Order Reduction Technique for Model Checking. Journal of Automated Reasoning, 23(3-4):265–298, 1999.

    Article  MathSciNet  MATH  Google Scholar 

  8. E. M. Clarke, O. Grumberg, and D. A. Peled. Model-Checking. The MIT Press, Cambridge, MA, January 2000.

    Google Scholar 

  9. E. A. Emerson and V. Kahlon. Reducing Model Checking of the Many to the Few. In D. A. McAllester, editor, Proceedings of the 17th International Conference on Automated Deduction (CADE 2000), volume 1831 of LNCS, pages 236–254, Pittsburg, PA, July 2000. Springer-Verlag.

    Google Scholar 

  10. K. Engelhardt and W. P. de Roever. Generalizing Abadi & Lamport’s Method to Solve a Problem Posed by Pnueli. In J. Woodcock and P. G. Larsen, editors, Industrial-Strength Formal Methods, 1st International Symposium of Formal Methods Europe, volume 670 of LNCS, pages 294–313, Odense, Denmark, April 1993. Springer-Verlag.

    Chapter  Google Scholar 

  11. D. M. Goldshlag. Mechanically Verifying Concurrent Programs with the Boyer-Moore Prover. IEEE Transactions on Software Engineering, 16(9):1005–1023, 1990.

    Article  Google Scholar 

  12. W. Hesselink. Eternity Variables to Simulate Specification. In Proceedings of Mathematics of Program Construction, volume 2386 of LNCS, pages 117–130, Dagstuhl, Germany, 2002. Springer-Verlag.

    Google Scholar 

  13. B. Jonsson, A. Pnueli, and C. Rump. Proving Refinement Using Transduction. Distributed Computing, 12(2-3):129–149, 1999.

    Google Scholar 

  14. L. Lamport. Specifying Concurrent Program Modules. ACM Transactions on Programming Languages and Systems (ACM TOPLAS), 5(2):190–222, April 1983.

    Article  MATH  Google Scholar 

  15. L. Lamport. What Good is Temporal Logic? Information Processing, 83:657–688, 1983.

    Google Scholar 

  16. L. Lamport. The Temporal Logic of Actions. ACM Transactions on Programming Languages and Systems (ACM TOPLAS), 16(3):827–923, May 1994.

    Google Scholar 

  17. P. Manolios. A Compositional Theory of Refinement for Branching Time. In D. Geist, editor, Proceedings of the 12th Working Conference on Correct Hardware Design and Verification Methods, volume 2860 of LNCS, pages 304–218, L‘Aquila, Italy, 2003. Springer-Verlag.

    Google Scholar 

  18. P. Manolios, K. Namjoshi, and R. Sumners. Linking Model-Checking and Theorem-Proving with Well-Founded Bisimulations. In N. Halbwacha and D. Peled, editors, Proceedings of the 11th International Conference on Computer-Aided Verification (CAV 1999), volume 1633 of LNCS, pages 369–379, Trento, Italy, 1999. Springer-Verlag.

    Chapter  Google Scholar 

  19. K. McMillan, S. Qadeer, and J. Saxe. Induction in Compositional Model Checking. In E. A. Emerson and A. P. Sistla, editors, Proceedings of the 12th International Conference on Computer-Aided Verification (CAV 2000), volume 1855 of LNCS, Chicago, IL, July 2000. Springer-Verlag.

    Google Scholar 

  20. R. Milner. Communication and Concurrency. Prentice-Hall, 1990.

    Google Scholar 

  21. K. Namjoshi. A Simple Characterization of Stuttering Bisimulation. In S. Ramesh and G. Sivakumar, editors, Proceedings of the 17th International Conference on Foundations of Software Technology and Theoretical Computer Science (FSTTCS 1997), volume 1346 of LNCS, pages 284–296, Kharagpur, India, 1997. Springer-Verlag.

    Chapter  Google Scholar 

  22. D. Park. Concurrency and Automata on Infinite Sequences. In Proceedings of the 5th GI-Conference on Theoretical Computer Science, volume 104 of LNCS, pages 167–183, Karlsruhe, Germany, 1981. Springer-Verlag.

    Google Scholar 

  23. L. Paulson. Mechanizing UNITY in Isabelle. 1(1):3–32, 2000.

    MathSciNet  Google Scholar 

  24. A. Pnueli. Linear and Branching Structures in the Semantics and Logics of Reactive Systems. In W. Brauer, editor, Proceedings of the 12th International Colloquium on Automata, Languages, and Programming (ICALP 1985), volume 194 of LNCS, pages 15–32, Nafplion, Greece, 1985. Springer-Verlag.

    Google Scholar 

  25. R. Sumners. Fair Environment Assumptions in ACL2. In W. A. Hunt, Jr., M. Kaufmann, and J. S. Moore, editors, 4th International Workshop on the ACL2 Theorem Prover and Its Applications (ACL2 2003), Boulder, CO, July 2003.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sandip Ray .

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer Science+Business Media, LLC

About this chapter

Cite this chapter

Ray, S. (2010). Reactive Systems. In: Scalable Techniques for Formal Verification. Springer, Boston, MA. https://doi.org/10.1007/978-1-4419-5998-0_7

Download citation

  • DOI: https://doi.org/10.1007/978-1-4419-5998-0_7

  • Published:

  • Publisher Name: Springer, Boston, MA

  • Print ISBN: 978-1-4419-5997-3

  • Online ISBN: 978-1-4419-5998-0

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics