Abstract
A reduction is a validity-preserving transformation by which a complex assertion about a complex model may be replaced by a simpler assertion about a simpler model in such a way that the validity of the latter implies the validity of the former. Reductions, in that they are relative to the property to be proved, are significantly more powerful than equivalence and minimization, and are needed to reason about complex coordinating systems. Furthermore, reduction subsumes refinement: a model M refines or “implements” a model M' provided M' reduces M relative to all assertions about M which are pullbacks of assertions in M' (so anything proved about M' remains true in the refinement M).
On account of the close relationship between state machines and automata, it is conceptually convenient to reason about reductions of state machine models in the context of formal assertions based in language (automata) theory. However, as a practical matter, state machine models have been felt to have overwhelming drawbacks. First of all, it has been felt that significant hardware and software systems are simply too complex to capture in a meaningful way, through state machine models. Second, even if they could be captured, the complexity of the resulting model has been thought to be too great to analyze: the complexity of the resulting model has been thought to be too great to analyze: the complexity of the analysis algorithms aside, the size of the resulting state spaces, growing geometrically with the number of system components, has been thought to render analysis intractable in practice. The purpose of this paper is to dispel both of these notions. It is shown how large, complex systems may be modelled accurately in terms of (many) small coordinating component state machines. Second, it is shown how a theory of reduction based upon language homomorphism can render analysis and refinement of such models tractable.
Preview
Unable to display preview. Download preview PDF.
References
M. O. Rabin, D. Scott, “Finite Automata and their Decisions Problems”, IBM J. Res. and Dev. 3 (1959) 114–125. (Reprinted in [Mo64] 63–91.)
M. L. Tsetlin, “Non-primitive Circuits” (in Russian) Problemy Kibernetiki 2 (1959).
J. R. Büchi, “On a Decision Method in Restricted Second-Order Arithmetic”, Proc. Internat. Cong. on Logic, Methodol. and Philos. of Sci., 1960, 1–11 (Stanford Univ. Press, 1962).
M. O. Rabin, “Decidability of Second-Order Theories and Automata on Infinite Trees”, Trans. Amer. Math. Soc. 141 (1969) 1–35.
M. O. Rabin, Automata on Infinite Objects and Church's Problem. Amer. Math. Soc., 1972.
Y. Choueka, “Theories of Automata on ω-Tapes: A Simplified Approach”, J. Comput. Syst. Sci. 8 (1974), 117–141.
P. Halmos, Lectures on Boolean Algebras, Springer-Verlag, N.Y., 1974.
B. Gopinath, R. P. Kurshan, “The Selection/Resolution Model of Coordinating Concurrent Processes”, internal AT&T report.
S. Aggarwal, R. P. Kurshan, K. K. Sabnani, “A Calculus for Protocol Specification and Validation” in Protocol Specification, Testing and Verification, III, North-Holland, 1983, 19–34.
D. L. Dill, E. M. Clarke, “Automatic Verification of Asynchronous Circuits Using Temporal Logic”, Proc. Chapel Hill Conf. VLSI, Computer Sci. Press (1985) 127–143.
R. P. Kurshan, “Modelling Concurrent Processes”, Proc. Symp. Applied Math. 3 (1985) 45–57.
A. P. Sistla, M. Y. Vardi, P. Wolper, “The Complementation Problem for Büchi Automata, with Applications to Temporal Logic”, in Proc. 12th Internat. Coll. on Automata, Languages and Programming, Lect. Notes Comp. Sci., 1985, Springer-Verlag.
W. W. Wadge, E. A. Ashcroft, LUCID, The Dataflow Programming Language, Academic Press, 1985.
J. Katzenelson and R. P. Kurshan, “S/R: A Language For Specifying Protocols and Other Coordinating Processes”, Proc. 5th Ann. Int'l Phoenix Conf. Comput. Commun., IEEE, 1986, 286–292.
M. C. Brown, E. M. Clarke, “SML — A High Level Language for the Design and Verification of Finite State Machines”, in From HDL Descriptions to Guaranteed Correct Circuit Designs (D. Borrione, ed.) North-Holland (1987) 269–292.
I. Gertner, R. P. Kurshan, “Logical Analysis of Digital Circuits”, Proc. 8th Intn'l. Conf. Comput. Hardware Description Languages, 1987, 47–67.
R. P. Kurshan, “Reducibility in Analysis of Coordination”, LNCIS 103 (1987) Springer Verlag, 19–39.
R. P. Kurshan, “Complementing Deterministic Büchi Automata in Polynomial Time”, J. Comput. Syst. Sci. 35 (1987) 59–71.
P. J. Ramadge, W. M. Wonham, “Supervisory Control of a Class of Discrete-Event Processes”, SIAM J. Contr. Opt. 25 (1987) 206–230.
S. Safra, “On the Complexity of ω-Automata”, 29th FOCS (1988) 319–327.
J. Barwise, “Mathematical Proofs of Computer System Correctness”, Notices AMS 36 (1989) 884–851.
R. P. Kurshan, K. McMillan, “A Structural Induction Theorem for Processes”, Proc. 8th ACM Symp. PODC (1989) 239–247.
R. P. Kurshan, K. McMillan, “Analysis of Digital Circuits Through Symbolic Reduction”, IEEE Trans. CAD/ICS, to appear.
Z. Har'El, R. P. Kurshan, “Software for analytical Development of Communication Protocols”, AT&T Tech. J., to appear.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1990 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kurshan, R.P. (1990). Analysis of discrete event coordination. In: de Bakker, J.W., de Roever, W.P., Rozenberg, G. (eds) Stepwise Refinement of Distributed Systems Models, Formalisms, Correctness. REX 1989. Lecture Notes in Computer Science, vol 430. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-52559-9_74
Download citation
DOI: https://doi.org/10.1007/3-540-52559-9_74
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-52559-2
Online ISBN: 978-3-540-47035-9
eBook Packages: Springer Book Archive