A relational model of non-deterministic dataflow

  • Thomas Hildebrandt
  • Prakash Panangaden
  • Glynn Winskel
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1466)

Abstract

We recast dataflow in a modern categorical light using profunctors as a generalisation of relations. The well known causal anomalies associated with relational semantics of indeterminate dataflow are avoided, but still we preserve much of the intuitions of a relational model. The development fits with the view of categories of models for concurrency and the general treatment of bisimulation they provide. In particular it fits with the recent categorical formulation of feedback using traced monoidal categories. The payoffs are: (1) explicit relations to existing models and semantics, especially the usual axioms of monotone IO automata are read off from the definition of profunctors, (2) a new definition of bisimulation for dataflow, the proof of the congruence of which benefits from the preservation properties associated with open maps and (3) a treatment of higher-order dataflow as a biproduct, essentially by following the geometry of interaction programme.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    S. Abramsky. A generalized kahn principle for abstract asynchronous networks. In MFPS'89, volume 442 of LNCS, pages 1–21. Springer, 1990.Google Scholar
  2. [2]
    S. Abramsky. Retracing some paths in process algebra. In U. Montanari and V. Sassone, editors, CONCUR'96, volume 1119 of LNCS, pages 1–17. Springer, August 1996.Google Scholar
  3. [3]
    S. Abramsky, S. Gay, and R. Nagarajan. Interaction categories and the foundations of typed concurrent programming. In Proc. of the 1994 Marktoberdorf summer school. Springer, 1994.Google Scholar
  4. [4]
    E. S. Bainbridge. Feedback and generalized logic. Information and Control, (31):75–96, 1976.Google Scholar
  5. [5]
    F. Borceux. Handbook of categorical logic, volume 1. Cambridge University Press, 1994.Google Scholar
  6. [6]
    J. Brock and W. Ackerman. Scenarios: A model of non-determinate computation. In J. Diaz and I. Ramos, editors, Formalization of Programming Concepts, volume 107 of LNCS. Springer, 1981.Google Scholar
  7. [7]
    G. L. Cattani and G. Winskel. Presheaf models for concurrency. In CSL'96, volume 1258 of LNCS, pages 58–75. Springer, 1997.Google Scholar
  8. [8]
    A. Cheng. Petri nets, traces, and local model checking. Research Series RS-95-39, BRICS, Department of Computer Science, University of Aarhus, July 1995.Google Scholar
  9. [9]
    J. B. Dennis. First version of a dataflow procedure language. In B. Robinet, editor, Proceedings Colloque sur la Programmation, volume 19 of LNCS, pages 362–376. Springer, 1974.Google Scholar
  10. [10]
    V. Diekert and Y. Métivier. Handbook of Formal Languages., volume 3, chapter Partial Commutation and Traces. Springer, 1997.Google Scholar
  11. [11]
    A. A. Faustini. An operational semantics for pure dataflow. In ICALP'82, volume 140 of LNCS, pages 212–224. Springer, 1982.Google Scholar
  12. [12]
    M. Gordon. The semantic challenge of verilog hdl. www.cl.cam.ac.uk/mjcg/, April 1996. Revised version of an invited paper published in LICS'95.Google Scholar
  13. [13]
    M. Hasegawa. Recursion from cyclic sharing: traced monoidal categories and models of cyclic lambda calculi. In TLCA'97, volume 1210 of LNCS, pages 196–213, April 1997.MATHMathSciNetGoogle Scholar
  14. [14]
    V. F. Jones. A polynomial invariant for links via von neumann algebras. Bull. Amer. Math. Soc., 129:103–112, 1985.CrossRefGoogle Scholar
  15. [15]
    B. Jonsson. A fully abstract trace model for dataflow networks. In POPL'89, pages 155–165. ACM, 1989.Google Scholar
  16. [16]
    A. Joyal and I. Moerdijk. A completeness theorem for open maps. Annals of Pure and Applied Logic, 70(1):51–86, 1994.MATHMathSciNetCrossRefGoogle Scholar
  17. [17]
    A. Joyal, M. Nielsen, and G. Winskel. Bisimulation from open maps. Research Series RS-94-7, BRICS, Department of Computer Science, University of Aarhus, May 1994. 42 pp. Appears in LICS '93 special issue of Information and Computation, 127(2):164–185.Google Scholar
  18. [18]
    A. Joyal, R. Street, and D. Verity. Traced monoidal categories. volume 119 of Math. Proc. Camb. Phil. Soc., pages 447–468, 1996.MATHMathSciNetCrossRefGoogle Scholar
  19. [19]
    G. Kahn. The semantics of a simple language for parallel programming. In Information Processing, volume 74, pages 471–475, 1974.MATHMathSciNetGoogle Scholar
  20. [20]
    G. Kahn and D. MacQueen. Coroutines and networks of parallel processes. In Gilchrist, editor, Proceedings of Information Processing, pages 993–998. North-Holland, 1977.Google Scholar
  21. [21]
    P. Katis, N. Sabadini, and R. Walters. Bicategories of processes. Journal of Pure and Applied Algebra, (115):141–178, 1997.Google Scholar
  22. [22]
    J. Kok. A fully abstract semantics for dataflow nets. In Proceedings of Parallel Architectures And Languages Europe, pages 351–368, Berlin, 1987. Springer.Google Scholar
  23. [23]
    N. A. Lynch and E. W. Stark. A proof of the kann principle for input/output automata. Information and Computation, 82:81–92, 1989.MATHMathSciNetCrossRefGoogle Scholar
  24. [24]
    S. Mac Lane and I. Moerdijk. Sheaves in Geometry and Logic: A First Introduction to Topos Theory. Springer, 1992.Google Scholar
  25. [25]
    S. Mac Lane. Categories for the Working Mathematician. Graduate Texts in Mathematics. Springer, 1971.Google Scholar
  26. [26]
    P. Panangaden and V. Shanbhogue. The expressive power of indeterminate dataflow primitive. Information and Computation, 98(1):99–131, 1992.MATHMathSciNetCrossRefGoogle Scholar
  27. [27]
    P. Panangaden and E. W. Stark. Computations, residuals and the power of indeterminacy. In Proc. of the 15th ICALP, pages 439–454. Springer, 1988.Google Scholar
  28. [28]
    V. Pratt. Modelling concurrency with partial orders. International Journal of Parallel Programming, (1), 1986.Google Scholar
  29. [29]
    A. Rabinovich and B. A. Trakhtenbrot. Nets and data flow interpreters. In Proceedings of the 4th LICS, pages 164–174, 1989.Google Scholar
  30. [30]
    A. Rabinovich and B. A. Trakhtenbrot. Nets of processes and dataflow. volume 354 of LNCS, 1989. To appear in Proceedings of ReX School on Linear Time, Branching Time and Partial Order in Logics and Models for Concurrency, LNCS.Google Scholar
  31. [31]
    A. Rabinovich and B. A. Trakhtenbrot. Communication among relations. In M. S. Paterson, editor, Proc. of the 7th ICALP, volume 443 of LNCS, pages 294–307. Springer, 1990.Google Scholar
  32. [32]
    P. Selinger. First-order axioms for asynchrony. In A. Mazurkiewicz and J. Winkowski, editors, CONCUR'97, volume 1243 of LNCS, pages 376–390. Springer, 1997.Google Scholar
  33. [33]
    E. W. Stark. Compositional relational semantics for indeterminate dataflow networks. In CTCS, volume 389 of LNCS, pages 52–74, Manchester, U.K., 1989. Springer.Google Scholar
  34. [34]
    E. W. Stark. Dataflow networks are fibrations. In CTCS, volume 530 of LNCS, pages 261–281. Springer, September 1991.Google Scholar
  35. [35]
    E. W. Stark. A calculus of dataflow networks. In Proceedings of the 7th LICS, pages 125–136, June 1992.Google Scholar
  36. [36]
    G. Winskel and M. Nielsen. Handbook of Logic in Computer Science, volume IV, chapter Models for concurrency. OUP, 1995.Google Scholar
  37. [37]
    G. Winskel and M. Nielsen. Presheaves as transition systems. In D. Peled, V. Pratt, and G. Holzmann, editors, POMIV'96, volume 29 of DIMACS. AMS, July 1996.Google Scholar

Copyright information

© Springer-Verlag 1998

Authors and Affiliations

  • Thomas Hildebrandt
    • 1
  • Prakash Panangaden
    • 2
  • Glynn Winskel
    • 1
  1. 1.BRICSUniversity of AarhusDenmark
  2. 2.McGill UniversityMontrealCanada

Personalised recommendations