Abstract
This paper argues that basing the semantics of concurrent systems on the notions of state and state transitions is neither advisable nor necessary. The tendency to do this is deeply rooted in our notions of computation, but these roots have proved problematic in concurrent software in general, where they have led to such poor programming practice as threads. I review approaches (some of which have been around for some time) to the semantics of concurrent programs that rely on neither state nor state transitions. Specifically, these approaches rely on a broadened notion of computation consisting of interacting components. The semantics of a concurrent compositions of such components generally reduces to a fixed point problem. Two families of fixed point problems have emerged, one based on metric spaces and their generalizations, and the other based on domain theories. The purpose of this paper is to argue for these approaches over those based on transition systems, which require the notion of state.
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
Abramsky, S., Gay, S.J., Nagarajan, R.: Interaction categories and the foundations of typed concurrent programming. In: Broy, M. (ed.) Deductive Program Design: Proceedings of the 1994 Marktoberdorf Summer School. NATO ASI Series F. Springer, Heidelberg (1995)
Abramsky, S., Jung, A.: Domain theory. In: Handbook of logic in computer science: semantic tructures, vol. 3, pp. 1–168. Oxford University Press, Oxford (1995)
Agha, G.: Concurrent object-oriented programming. Communications of the ACM 33(9), 125–140 (1990)
Arbab, F.: Abstract behavior types: A foundation model for components and their composition. Science of Computer Programming 55, 3–52 (2005)
Armstrong, J.R., Gray, F.G.: VHDL Design Representation and Synthesis, 2nd edn. Prentice-Hall, Englewood Cliffs (2000)
Arnold, A., Nivat, M.: Metric interpretations of infinite trees and semantics of non deterministic recursive programs. Fundamenta Informaticae 11(2), 181–205 (1980)
Baier, C., Majster-Cederbaum, M.E.: Denotational semantics in the cpo and metric approach. Theoretical Computer Science 135(2), 171–220 (1994)
Benveniste, A., Berry, G.: The synchronous approach to reactive and real-time systems. Proceedings of the IEEE 79(9), 1270–1282 (1991)
Benveniste, A., Carloni, L., Caspi, P., Sangiovanni-Vincentelli, A.: Heterogeneous Reactive Systems Modeling and Correct-by-Construction Deployment. In: Alur, R., Lee, I. (eds.) EMSOFT 2003. LNCS, vol. 2855, pp. 35–50. Springer, Heidelberg (2003)
Berry, G.: The Constructive Semantics of Pure Esterel. Book Draft (1996)
Broy, M., Stefanescu, G.: The algebra of stream processing functions. Theoretical Computer Science 258, 99–129 (2001)
Burch, J.R., Passerone, R., Sangiovanni-Vincentelli, A.L.: Notes on agent algebras. Technical Report UCB/ERL M03/38, University of California (November 2003)
Cassandras, C.G.: Discrete Event Systems, Modeling and Performance Analysis, Irwin (1993)
Cataldo, A., Lee, E.A., Liu, X., Matsikoudis, E., Zheng, H.: A constructive fixed-point theorem and the feedback semantics of timed systems. In: Workshop on Discrete Event Systems (WODES). Ann Arbor, Michigan (2006)
Davey, B.A., Priestly, H.A.: Introduction to Lattices and Order. Cambridge University Press, Cambridge (1990)
de Bakker, J.W., de Vink, E.P.: Denotational models for programming languages: Applications of banachs fixed point theorem. Topology and its Applications 85, 35–52 (1998)
Dennis, J.B.: First version data flow procedure language. Technical Report MAC TM61, MIT Laboratory for Computer Science (1974)
Edwards, S.A., Lee, E.A.: The semantics and execution of a synchronous block-diagram language. Science of Computer Programming 48(1) (2003)
Fishman, G.S.: Discrete-Event Simulation: Modeling, Programming, and Analysis. Springer, Heidelberg (2001)
Goldin, D., Smolka, S., Attie, P., Sonderegger, E.: Turing machines, transition systems, and interaction. Information and Computation 194(2), 101–128 (2004)
Gontmakher, A., Schuster, A.: Java consistency: nonoperational characterizations for Java memory behavior. ACM Trans. Comput. Syst. 18(4), 333–386 (2000)
Gssler, G., Sifakis, J.: Composition for component-based modeling. Science of Computer Programming 55 (2005)
Gurevich, Y.: Evolving algebras 1993: Lipari Guide. In: Börger, E. (ed.) Specification and Validation Methods, pp. 9–37 (1994)
Hewitt, C.: Viewing control structures as patterns of passing messages. Journal of Artifical Intelligence 8(3), 323–363 (1977)
Hoare, C.A.R.: Communicating sequential processes. Communications of the ACMÂ 21(8) (1978)
Johannessen, S.: Time synchronization in a local area network. IEEE Control Systems Magazine, 61–69 (2004)
Kahn, G.: The semantics of a simple language for parallel programming. In: Proc. of the IFIP Congress 74. North-Holland Publishing Co., Amsterdam (1974)
Kahn, G., MacQueen, D.B.: Coroutines and networks of parallel processes. In: Gilchrist, B. (ed.) Information Processing, pp. 993–998. North-Holland Publishing Co., Amsterdam (1977)
Lee, E.A.: Modeling concurrent real-time processes using discrete events. Annals of Software Engineering 7, 25–45 (1999)
Lee, E.A.: Embedded software. In: Zelkowitz, M. (ed.) Advances in Computers, vol. 56. Academic Press, London (2002)
Lee, E.A.: Model-driven development - from object-oriented design to actor-oriented design. In: Workshop on Software Engineering for Embedded Systems: From Requirements to Implementation (a.k.a. The Monterey Workshop), Chicago (2003)
Lee, E.A.: The problem with threads. Computer 39(5), 33–42 (2006)
Lee, E.A., Neuendorffer, S., Wirthlin, M.J.: Actor-oriented design of embedded hardware and software systems. Journal of Circuits, Systems, and Computers 12(3), 231–260 (2003)
Lee, E.A., Parks, T.M.: Dataflow process networks. Proceedings of the IEEE 83(5), 773–801 (1995)
Lee, E.A., Sangiovanni-Vincentelli, A.: A framework for comparing models of computation. IEEE Transactions on Computer-Aided Design of Circuits and Systems 17(12), 1217–1229 (1998)
Lee, E.A., Zheng, H., Zhou, Y.: Causality interfaces and compositional causality analysis. In: Foundations of Interface Technologies (FIT), Satellite to CONCUR, San Francisco, CA (2005)
Liu, X.: Semantic foundation of the tagged signal model. Phd thesis, EECS Department, University of California, December 20 (2005)
Liu, X., Lee, E.A.: CPO semantics of timed interactive actor networks. Technical Report EECS-2006-67, UC Berkeley, May 18 (2006)
Liu, X., Matsikoudis, E., Lee, E.A.: Modeling Timed Concurrent Systems. In: Baier, C., Hermanns, H. (eds.) CONCUR 2006. LNCS, vol. 4137, pp. 1–15. Springer, Heidelberg (2006)
Maler, O., Manna, Z., Pnueli, A.: From timed to hybrid systems. In: Huizing, C., de Bakker, J.W., Rozenberg, G., de Roever, W.-P. (eds.) REX 1991. LNCS, vol. 600, pp. 447–484. Springer, Heidelberg (1992)
Manna, Z., Pnueli, A.: Verifying hybrid systems. Hybrid Systems, 4–35 (1992)
Milner, R.: A Calculus of Communication Systems. LNCS, vol. 92. Springer, Heidelberg (1980)
Milner, R.: Elements of interaction. Communications of the ACM 36, 78–89 (1993)
Naundorf, H.: Strictly causal functions have a unique fixed point. Theoretical Computer Science 238(1-2), 483–488 (2000)
Priess-Crampe, S., Ribenboim, P.: Generalized ultrametric spaces I. Abhandlungen aus dem Mathematischen Seminar der Universität Hamburg 66, 55–73 (1996)
Priess-Crampe, S., Ribenboim, P.: Fixed point and attractor theorems for ultrametric spaces. Forum Mathematicum 12, 53–64 (2000)
Pugh, W.: Fixing the Java memory model. In: Proceedings of the ACM 1999 conference on Java Grande, San Francisco, California, United States, pp. 89–98. ACM Press, New York (1999)
Reed, G.M., Roscoe, A.W.: Metric spaces as models for real-time concurrency. In: Main, M.G., Mislove, M.W., Melton, A.C., Schmidt, D. (eds.) MFPS 1987. LNCS, vol. 298, pp. 331–343. Springer, Heidelberg (1988)
Schneider, K., Brandt, J., Schuele, T.: Causality analysis of synchronous programs with delayed actions. In: International Conference on Compilers, Architecture, and Synthesis for Embedded Systems, Washington DC, USA (2004)
Stoy, J.E.: Denotational Semantics. MIT Press, Cambridge (1977)
Talcott, C.L.: Interaction semantics for components of distributed systems. In: Formal Methods for Open Object-Based Distributed Systems (FMOODS) (1996)
Taylor, P.: Practical Foundations of Mathematics. Cambridge University Press, Cambridge (1999)
Tiller, M.M.: Introduction to Physical Modeling with Modelica. Kluwer Academic Publishers, Dordrecht (2001)
Turing, A.M.: Computability and λ-definability. Journal of Symbolic Logic 2, 153–163 (1937)
Winskel, G.: The Formal Semantics of Programming Languages. MIT Press, Cambridge (1993)
Yates, R.K.: Networks of real-time processes. In: Best, E. (ed.) CONCUR 1993. LNCS, vol. 715. Springer, Heidelberg (1993)
Zeigler, B.P., Praehofer, H., Kim, T.G.: Theory of Modeling and Simulation, 2nd edn. Academic Press, London (2000)
Zhou, Y., Lee, E.A.: A causality interface for deadlock analysis in dataflow. Technical Report UCB/EECS-2006-51, EECS Department, UC Berkeley (May 12, 2006)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Lee, E.A. (2006). Concurrent Semantics Without the Notions of State or State Transitions. In: Asarin, E., Bouyer, P. (eds) Formal Modeling and Analysis of Timed Systems. FORMATS 2006. Lecture Notes in Computer Science, vol 4202. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11867340_2
Download citation
DOI: https://doi.org/10.1007/11867340_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-45026-9
Online ISBN: 978-3-540-45031-3
eBook Packages: Computer ScienceComputer Science (R0)