Skip to main content

Guarded Transitions in Evolving Specifications

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2422))

Abstract

We represent state machines in the category of specifications, where assignment statements correspond exactly to interpretations between theories [7][8]. However, the guards on an assignment require a special construction. In this paper we raise guards to the same level as assignments by treating each as a distinct category over a shared set of objects. A guarded assignment is represented as a pair of arrows, a guard arrow and an assignment arrow. We give a general construction for combining arrows over a factorization system, and show its specialization to the category of specifications. This construction allows us to define the fine structure of state machine morphisms with respect to guards. Guards define the flow of control in a computation, and how they may be translated under refinement is central to the formal treatment of safety, liveness, concurrency, and determinism.

Supported from the DARPA project “Specification-Carrying Software”, contract number F30602-00-C-0209, and the ONR project “Game Theoretic Framework for Reasoning about Security”, contract number N00014-01-C-0454.

Supported from the DARPA project “Specification-Carrying Software” contract number F30602-00-C-0209.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight 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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Borceux, F. Handbook of Categorical Algebra 1: Basic Category Theory, vol. 50 of Encyclopedia of Mathematics and Its Applications. Cambridge University Press, Cambridge, 1994.

    Google Scholar 

  2. Errington, L. Notes on diagrams and state. Tech. rep., Kestrel Institute, 2000.

    Google Scholar 

  3. Freyd, P., and Kelly, G. M. Categories of continuous functors I. Journal of Pure and Applied Algebra 2, 3 (1972), 169–191.

    Article  MathSciNet  MATH  Google Scholar 

  4. Gabriel, P., and Zisman, M. Calculus of Fractions and Homotopy Theory, vol. 36 of Ergebnisse der Mathematik und ihrer Grenzgebiete. New Series. Springer-Verlag, New York, 1967.

    Google Scholar 

  5. Gurevich, Y. Evolving algebra 1993: Lipari guide. In Specification and Validation Methods, E. Boerger, Ed. Oxford University Press, 1995, pp. 9–36.

    Google Scholar 

  6. J. L. Fiadeiro, and T. Maibaum. Interconnecting formalisms: supporting modularity, reuse and incrementality. In Proc. 3rd Symposium on the Foundations of Software Engineering (1995), G. Kaiser, Ed., ACM Press, pp. 72–80.

    Google Scholar 

  7. Kutter, P. W. State transitions modeled as refinements. Tech. Rep. KES.U.96.6, Kestrel Institute, August 1996.

    Google Scholar 

  8. Pavlovic, D., and Smith, D. R. Composition and refinement of behavioral specifications. In Proceedings of Automated Software Engineering Conference (2001), IEEE Computer Society Press, pp. 157–165.

    Google Scholar 

  9. Power, J., and Robinson, E. Premonoidal categories and notions of computation. Mathematical Structures in Computer Science 7, 5 (1997), 453–468.

    Article  MATH  MathSciNet  Google Scholar 

  10. MacLane, S. Categories for the Working Mathematician, vol. 5 of Graduate Texts in Mathematics. Springer-Verlag, Berlin, 1971.

    Google Scholar 

  11. Smith, D. R. Mechanizing the development of software. In Calculational System Design, Proceedings of the NATO Advanced Study Institute, M. Broy and R. Steinbrueggen, Eds. IOS Press, Amsterdam, 1999, pp. 251–292.

    Google Scholar 

  12. Srinivas, Y. V., and Jüllig, R. Specware: Formal support for composing software. In Proceedings of the Conference on Mathematics of Program Construction, B. Moeller, Ed. LNCS 947, Springer-Verlag, Berlin, 1995, pp. 399–422.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Pavlovic, D., Smith, D.R. (2002). Guarded Transitions in Evolving Specifications. In: Kirchner, H., Ringeissen, C. (eds) Algebraic Methodology and Software Technology. AMAST 2002. Lecture Notes in Computer Science, vol 2422. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45719-4_28

Download citation

  • DOI: https://doi.org/10.1007/3-540-45719-4_28

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-44144-1

  • Online ISBN: 978-3-540-45719-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics