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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Borceux, F. Handbook of Categorical Algebra 1: Basic Category Theory, vol. 50 of Encyclopedia of Mathematics and Its Applications. Cambridge University Press, Cambridge, 1994.
Errington, L. Notes on diagrams and state. Tech. rep., Kestrel Institute, 2000.
Freyd, P., and Kelly, G. M. Categories of continuous functors I. Journal of Pure and Applied Algebra 2, 3 (1972), 169–191.
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.
Gurevich, Y. Evolving algebra 1993: Lipari guide. In Specification and Validation Methods, E. Boerger, Ed. Oxford University Press, 1995, pp. 9–36.
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.
Kutter, P. W. State transitions modeled as refinements. Tech. Rep. KES.U.96.6, Kestrel Institute, August 1996.
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.
Power, J., and Robinson, E. Premonoidal categories and notions of computation. Mathematical Structures in Computer Science 7, 5 (1997), 453–468.
MacLane, S. Categories for the Working Mathematician, vol. 5 of Graduate Texts in Mathematics. Springer-Verlag, Berlin, 1971.
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.
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.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights 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