Abstract
We discuss a formal model based upon dataflow, usable for high-level digital hardware design, among other things. One of our goals is to give a denotational semantics for this model, which includes indeterminate modules. While it is wellknown that denotational semantics for networks containing only determinate modules can be simply expressed as a composition of stream functions, this approach has previously been shown unacceptable for networks with indeterminate modules. Our approach is to devise composition rules based on modelling a network by the set of its possible behaviors, i.e. sequences of computational events, where each event is the appearance or consumption of a token on a data path. A sequence of such events is called ahistory and a set of such histories is called anarchive. We give composition rules that allow us to derive an archive for a network from the archive of its constituents. We show how causal and operational constraints on network behavior can be inferred from the specification of archives. We also present a construction which allows us to obtain the denotation of networks containing loops by a process of successive approximations. This construction is carried out using a construction resembling the category-theoretic notion oflimit, which differs from that of more traditional domain theory.
Similar content being viewed by others
References
Abramsky S (1983) Semantic foundations of applicative multiprogramming. In: Diaz J (ed) Automata, languages and programming. Springer, Berlin Heidelberg New York Tokyo, pp 1–14
Brock JD, Ackermann WB (1981) Scenarios: A model of nondeterminate computation. In: Diaz J, Ramos I (eds.), Formalization of programming concepts. Lecture Notes Comput Sci 107, 252–259. Springer, Berlin Heidelberg New York
Broy MA (1981) A fixed point approach to applicative multiprogramming. In: Lectures at the International Summer School on Theoretical Foundations of Programming Methodology
Hennessey M (1982) Synchronous and asynchronous experiments on processes. Tech Rep, University of Edinburgh (September)
Jhon CS, Sobelman GE, Krekelberg DE (1985) Silicon compilation based on a data-flow paradigm. IEEE circuits and devices magazine, pp 21–28
Kahn GF (1974) The semantics of a simple language for parallel programming. In: Information Processing 74, 471–475. IFIPS, North Holland
Karp RM, Miller R (1969) Parallel program schemata. JCSS 3(2):147–195
Keller RM (1978) Denotational models for parallel programs with indeterminate operators. In: Neuhold EJ (ed), Formal descriptions of programming concepts. North-Holland, Amsterdam, pp 337–365
Keller RM, Lindstrom G, Patil S (1980) Data-flow concepts for hardware design. Digest of papers, IEEE Compcon '80, pp 105–111
Keller RM (1983) Unpublished presentation on archives. Applicative Languages Workshop, Massachusetts Institute Technology, Endicott House (June)
Keller RM, Panangaden P (1984) Semantics of networks containing indeterminate operators. In: Brookes SD, Roscoe AW, Winskel G (eds) Seminar on Concurrency. Lecture Notes Comput Sci 197, 479–496
Patil SS (1970) Closure properties of interconnections of determinate systems. Record of the Project MAC conference on concurrent systems and parallel computation, pp 107–116
Plotkin G (1976) A powerdomain construction SIAM J. Comput 5(3):452–487
Pratt .V (1982) On the composition of processes. In: Ninth Annual ACM Symposium on Principles of Programming languages. ACM (January) pp 213–223
Riddle WE (1979) An approach to software system behavior description. Computer Languages 4:29–47
Scott DS (1970) Outline of a mathematical theory of computation. In: Proceedings of the Fourth Annual Princeton Conference on Information Sciences and Systems, pp 169–176
Scott DS, Strachey C (1971) Towards a mathematical semantics of computer languages. Tech Rep PRG-6, University of Oxford
Smythe MB (1978) Power domains. J CSS 16:23–36
Additional information
Prakash Panangadenreceived his M.Sc. in Physics from IIT Kanpur in 1975. He earned a MS in Physics from the University of Chicago in 1978 and a Ph.D. from the University of Wisconsin-Milwaukee in 1980. For the last 3 years he has worked in the area of distributed systems and semantics and has been an instructor at the University of Utah where he earned an MS in Computer Science in 1985. Since August 1985 he has been an assistant professor in the computer science department at Cornell University.
Robert M. Kelleris a Professor of Computer Science at the University of Utah. He received the B.S. and M.S.E.E. from Washington University, and the Ph.D. from the University of California, Berkeley. From 1970–1976 he was an Assistant Professor of Electrical Engineering at Princeton University. He has held visiting appointments at Stanford University and Lawrence Livermore National Laboratories. His research contributions are in the area of theory of concurrent processing, parallel program verification, parallel computer architecture, and implementation of functional languages. His current research interests deal with numerous topics relating to multiprocessor implementations of highlevel languages, particularly functional and logic languages, and the construction of reduction and data-flow computation models.
Rights and permissions
About this article
Cite this article
Keller, R.M., Panangaden, P. Semantics of digital networks containing indeterminate modules. Distrib Comput 1, 235–245 (1986). https://doi.org/10.1007/BF01660035
Issue Date:
DOI: https://doi.org/10.1007/BF01660035