State machines for large scale computer software and systems
2015
Abstract
This paper introduces techniques for specifying behavior, architecture, and abstract properties of large scale computer software and hardware purely in terms of ordinary deterministic state machines. The goal is to be able to work with specifications ranging from operating systems to databases and real-time control. State machines with output are represented as maps from finite sequences of events to outputs so that f(s) is the output in the state reached by following s from a initial state. Composite sequence maps correspond to state machine products. The methods used here can specify or constrain both system behavior and system design. Motivating examples presented range from simple counters to distributed consensus algorithms and real-time circuits. The approach is intended to facilitate "back of the envelope" descriptions of devices and software and also to allow for detailed hierarchical specifications of behavior and architecture. The mathematical approach is based o...
References (24)
- Rozsa Peter. Recursive Functions in Computer Theory. Ellis Horwood Series in Computers and Their Applica- tions, 1982.
- Ferenc Gécseg. Products of Automata, volume 7 of EATCS Monographs on Theoretical Computer Science. Springer, 1986.
- John E. Hopcroft and Jeffrey D. Ullman. Introduction to Automata Theory, Languages, and Computation. Addison-Welsey, Reading MA, 1979.
- Manfred Broy. A logical basis for component-oriented software and systems engineering. Comput. J., 53(10):1758-1782, 2010.
- Z. Manna and A. Pnueli. The modal logic of programs. In Proceedings of the 6th International Colloquium on Automata, Languages, and Programming, volume 71 of Lecture Notes in Computer Science, pages 385-408, New York, 1979. Springer-Verlag.
- Krithivasan Ramamritham. Correctness of a distributed transaction system. Information systems, 8(4):309-324, 1983.
- S. Kripke. Semantical considerations on modal logic. Acta Philosophica Fennica, 16:83-94, 1963.
- Leslie Lamport, 2018.
- E.M. Clarke, O. Grumberg, D. Kroening, D. Peled, and H. Veith. Model Checking, second edition. Cyber Physical Systems Series. MIT Press, 2018.
- D. Harel. Statecharts: A visual formalism for complex systems. Technical report, Weizmann Institute, 1984.
- David Harel and Chaim-arie Kahana. On statecharts with overlapping. ACM Trans. Softw. Eng. Methodol., 1(4):399-421, October 1992.
- Gerald Lüttgen and Michael Mendler. The intuitionism behind statecharts steps. ACM Trans. Comput. Logic, 3(1):1-41, January 2002.
- J. Hartmanis and R. E. Stearns. Algebraic Structure Theory of Sequential Machines. Prentice-Hall, 1966.
- W.M.L. Holcombe. Algebraic Automata Theory. Cambridge University Press, 1983.
- J.E. Pin. Varieties of Formal Languages. Plenum Press, New York, 1986.
- E.F. Moore, editor. Sequential Machines: Selected Papers. Addison-Welsey, Reading MA, 1964.
- Victor Yodaiken. Modal functions for concise definition of state machines and products. Information Processing Letters, 40(2):65-72, October 1991.
- Victor Yodaiken. The algebraic feedback product of automata. In DIMACS Workshop on Computer Aided Verification, 1989.
- John von Neumann. The general and logical theory of automata. In Cerebral Mechanisms in Behavior, pages 1-41. Wiley, New York, NY, USA, 1941.
- Michael A Arbib. Theories of Abstract Automata (Prentice-Hall Series in Automatic Computation). Prentice- Hall, Inc., USA, 1969.
- Michel Charpentier, 2005.
- John F. Wakerly. Digital Design: Principles and Practices. Prentice-Hall, Inc., USA, 3rd edition, 2000.
- Rozsa Peter. Recursive functions. Academic Press, 1967.
- A. Ginzburg. Algebraic theory of automata. Academic Press, 1968.