In mathematics and computer science, the Krohn–Rhodes theory (or algebraic automata theory) is an approach to the study of finite semigroups and automata that seeks to decompose them in terms of elementary components. These components correspond to finite aperiodic semigroups and finite simple groups that are combined together in a feedback-free manner (called a "wreath product" or "cascade").
Krohn and Rhodes found a general decomposition for finite automata. In doing their research, though, the authors discovered and proved an unexpected major result in finite semigroup theory, revealing a deep connection between finite automata and semigroups.
Definitions and description of the Krohn–Rhodes theorem 
The Krohn–Rhodes theorem for finite semigroups states that every finite semigroup S is a divisor of a finite alternating wreath product of finite simple groups, each a divisor of S, and finite aperiodic semigroups (which contain no nontrivial subgroups).
In the automata formulation, the Krohn–Rhodes theorem for finite automata states that given a finite automaton A with states Q and input set I, output alphabet U, then one can expand the states to Q' such that the new automaton A' embeds into a cascade of "simple", irreducible automata: In particular, A is emulated by a feed-forward cascade of (1) automata whose transitions semigroups are finite simple groups and (2) automata which are banks of flip-flops running in parallel.[nb 1] The new automaton A' has the same input and output symbols as A. Here, both the states and inputs of the cascaded automata have a very special hierarchical coordinate form.
Moreover, each simple group (prime) or non-group irreducible semigroup (subsemigroup of the flip-flop monoid) that divides the transformation semigroup of A must divide the transition semigroup of some component of the cascade, and only the primes that must occur as divisors of the components are those that divide A 's transition semigroup.
The Krohn–Rhodes complexity (also called group complexity or just complexity) of a finite semigroup S is the least number of groups in a wreath product of finite groups and finite aperiodic semigroups of which S is a divisor.
All finite aperiodic semigroups have complexity 0, while non-trivial finite groups have complexity 1. In fact, there are semigroups of every non-negative integer complexity. For example, for any n greater than 1, the multiplicative semigroup of all (n+1)×(n+1) upper triangular matrices over any fixed finite field has complexity n (Kambites, 2007).
A major open problem in finite semigroup theory is the decidability of complexity: given the multiplication table for a finite semigroup, is there an algorithm that will compute its Krohn–Rhodes complexity? Upper bounds and ever more precise lower bounds on complexity have been obtained (see, e.g. Rhodes & Steinberg, 2009). Rhodes has conjectured that the problem is decidable.[nb 2]
History and applications
At a conference in 1962, Kenneth Krohn and John Rhodes announced a method for decomposing a (deterministic) finite automaton into "simple" components that are themselves finite automata. This joint work, which has implications for philosophy, comprised both Krohn's doctoral thesis at Harvard University, and Rhodes' doctoral thesis at MIT.[nb 3] Simpler proofs, and generalizations of the theorem to infinite structures, have been published since then (see Chapter 4 of Steinberg and Rhodes' 2009 book The q-Theory of Finite Semigroups for an overview).
In the 1965 paper by Krohn and Rhodes, the proof of the theorem on the decomposition of finite automata (or, equivalently sequential machines) made extensive use of the algebraic semigroup structure. Later proofs contained major simplifications using finite wreath products of finite transformation semigroups. The theorem generalizes the Jordan–Hölder decomposition for finite groups (in which the primes are the finite simple groups), to all finite transformation semigroups (for which the primes are again the finite simple groups plus all subsemigroups of the "flip-flop" (see above)) . Both the group and more general finite automata decomposition require expanding the state-set of the general, but allow for the same number of input symbols. In the general case, these are embedded in a larger structure with a hierarchical "coordinate system".
One must be careful in understanding the notion of "prime" as Krohn and Rhodes explicitly refer to their theorem as a "prime decomposition theorem" for automata. The components in the decomposition, however, are not prime automata (with prime defined in a naïve way); rather, the notion of prime is more sophisticated and algebraic: the semigroups and groups associated to the constituent automata of the decomposition are prime (or irreducible) in a strict and natural algebraic sense with respect to the wreath product (Eilenberg, 1976). Also, unlike earlier decomposition theorems, the Krohn–Rhodes decompositions usually require expansion of the state-set, so that the expanded automaton covers (emulates) the one being decomposed. These facts have made the theorem difficult to understand, and challenging to apply in a practical way—until recently, when computational implementations became available (Egri-Nagy & Nehaniv 2005, 2008).
H.P. Zeiger (1967) proved an important variant called the holonomy decomposition (Eilenberg 1976).[nb 4] The holonomy method appears to be relatively efficient and has been implemented computationally by A. Egri-Nagy (Egri-Nagy & Nehaniv 2005).
Meyer and Thompson (1969) give a version of Krohn–Rhodes decomposition for finite automata that is equivalent to the decomposition previously developed by Hartmanis and Stearns, but for useful decompositions, the notion of expanding the state-set of the original automaton is essential (for the non-permutation automata case).
Many proofs and constructions now exist of Krohn–Rhodes decompositions (e.g., [Krohn, Rhodes & Tilson 1968], [Ésik 2000]), with the holonomy method the most popular and efficient in general (although not in all cases). Due to the close relation between monoids and categories, a version of the Krohn–Rhodes theorem is applicable to category theory. This observation and a proof of an analogous result were offered by Wells (1980).[nb 5]
The Krohn–Rhodes theorem for semigroups/monoids is an analogue of the Jordan–Hölder theorem for finite groups (for semigroups/monoids rather than groups). As such, the theorem is a deep and important result in semigroup/monoid theory. The theorem was also surprising to many mathematicians and computer scientists[nb 6] since it had previously been widely believed that the semigroup/monoid axioms were too weak to admit a structure theorem of any strength, and prior work (Hartmanis & Stearns) was only able to show much more rigid and less general decomposition results for finite automata.
Work by Egri-Nagy and Nehaniv (2005, 2008–) continues to further automate the holonomy version of the Krohn–Rhodes decomposition extended with the related decomposition for finite groups (so-called Frobenius–Lagrange coordinates) using the computer algebra system GAP.
Applications outside of the semigroup and monoid theories are now computationally feasible. They include computations in biology and biochemical systems (e.g. Egri-Nagy & Nehaniv 2008), artificial intelligence, finite-state physics, psychology, and game theory (see, for example, Rhodes 2009).
- The flip-flop is the two-state automaton with three input operations: the identity (which leaves its state unchanged) and the two reset operations (which overwrite the current state by a resetting to a particular one of the two states). This can be considered a one-bit read-write storage unit: the identity corresponds to reading the bit (while leaving its value unaltered), and the two resets to setting the value of the bit to 0 or 1. Note that a reset is an irreversible operator as it destroys the currently stored bit value. NB: The semigroup of the flip-flop and all its subsemigroups are irreducible.
- J. Rhodes, Keynote talk at the International Conference on Semigroups & Algebraic Engineering (Aizu, Japan), 26 March 1997.
- Morris W. Hirsch, "Foreword to Rhodes' Applications of Automata Theory and Algebra". In J. Rhodes, Applications of Automata Theory and Algebra: Via the Mathematical Theory of Complexity to Biology, Physics, Philosophy and Games", (ed. C. L. Nehaniv), World Scientific Publishing Co., 2010.
- Eilenberg 1976, as well as Dömösi and Nehaniv, 2005, present proofs that correct an error in Zeiger's paper.
- See also (Tilson 1989)
- C.L. Nehaniv, Preface to (Rhodes, 2009)
- Barrington, David A. Mix (1992). "Some problems involving Razborov-Smolensky polynomials". In Paterson, M.S.. Boolean function complexity, Sel. Pap. Symp., Durham/UK 1990. London Mathematical Society Lecture Notes Series 169. pp. 109–128. ISBN 0-521-40826-1. Zbl 0769.68041.
- Pál Dömösi; Chrystopher L. Nehaniv (2005). Algebraic theory of automata networks: an introduction. Society for Industrial Mathematics. ISBN 978-0-89871-569-9.
- Egri-Nagy, A.; and Nehaniv, C. L. (2005), "Algebraic Hierarchical Decomposition of Finite State Automata: Comparison of Implementations for Krohn–Rhodes Theory", in 9th International Conference on Implementation and Application of Automata (CIAA 2004), Kingston, Canada, July 22–24, 2004, Revised Selected Papers, Editors: Domaratzki, M.; Okhotin, A.; Salomaa, K.; et al.; Springer Lecture Notes in Computer Science, Vol. 3317, pp. 315–316, 2005
- Egri-Nagy, Attila; Nehaniv, Chrystopher L. (Summer 2008). "Hierarchical Coordinate Systems for Understanding Complexity and its Evolution with Applications to Genetic Regulatory Networks". Artificial Life (Massachusetts Institute of Technology) 14 (3): 299–312. doi:10.1162/artl.2008.14.3.14305. ISSN 1064-5462.
- Eilenberg, Samuel (1976). Automata, Languages and Machines. Pure and applied mathematics, Lecture notes in mathematics. New York: Academic Press. ISBN 978-0-12-234001-7. Two chapters are written by Bret Tilson.
- Ésik, Z. (March 2000). "A proof of the Krohn–Rhodes decomposition theorem". Theoretical Computer Science (Essex, UK: Elsevier) 234 (1–2): 287–300. ISSN 0304-3975.
- Hartmanis, Juris; Stearns, R. E. (1966). Algebraic structure theory of sequential machines. Prentice–Hall. ASIN B0006BNWTE.
- Kambites, Mark (2007). "On the Krohn–Rhodes complexity of semigroups of upper triangular matrices". International Journal of Algebra and Computation 17 (1): 187–201. doi:10.1142/S0218196707003548. ISSN 0218-1967.
- Krohn, K. R.; and Rhodes, J. L. (1962), "Algebraic theory of machines", Proceedings of the Symposium on Mathematical Theory of Automata (editor: Fox, J.), (Wiley–Interscience)
- Krohn, Kenneth; Rhodes, John (April 1965). "Algebraic Theory of Machines. I. Prime Decomposition Theorem for Finite Semigroups and Machines" (PDF). Transactions of the American Mathematical Society (American Mathematical Society) 116: 450–464. ISSN 0002-9947. Retrieved September 18, 2010.
- Krohn, Kenneth; Rhodes, John L. (August 1968). Arbib, Michael A., ed. Algebraic Theory of Machines, Languages and Semigroups. Academic Press. ISBN 978-0-12-059050-6.
- Lallement, Gerard (1971-03-01). "On the prime decomposition theorem for finite monoids". Theory of Computing Systems (New York: Springer) 5 (1): 8–12. doi:10.1007/BF01691462. ISSN 1433-0490. Retrieved September 18, 2010.
- Meyer, A. R.; Thompson, C. (1969-06-01). "Remarks on algebraic decomposition of automata" (PDF). Theory of Computing Systems (New York: Springer) 3 (2): 110–118. doi:10.1007/BF01746516. ISSN 1432-4350.
- John Rhodes; Benjamin Steinberg (2008-12-17). The q-theory of finite semigroups. Springer Verlag. ISBN 978-0-387-09780-0.
- Straubing, Howard; Thérien, Denis (2002). "Weakly iterated block products of finite monoids". In Raisbaum, Sergio. Lecture Notes in Computer Science. LATIN 2002: Theoretical Informatics 2286. Berlin: Springer. pp. 91–104. doi:10.1007/3-540-45995-2_13. ISBN 978-3-540-43400-9. Retrieved September 18, 2010.
- Rhodes, John L. (September 3, 2009). Nehaniv, Chrystopher L., ed. Applications of Automata Theory and Algebra via the Mathematical Theory of Complexity to Finite-State Physics, Biology, Philosophy, and Games. Singapore: World Scientific Publishing Company. ISBN 978-981-283-696-0.
- Tilson, Bret (September 1987). "Categories as algebra: an essential ingredient in the theory of monoids". Journal of Pure and Applied Algebra (North-Holland) 48 (1–2): 83–198. doi:10.1016/0022-4049(87)90108-3. ISSN 0022-4049.
- Wells, C. (1980). "A Krohn–Rhodes theorem for categories". Journal of Algebra (Elsevier) 64: 37–45. ISSN 0021-8693.
- Zeiger, H. P. (April 1967). "Cascade synthesis of finite state machines". Information and Control (Churchill Livingstone) 10 (4): 419–433. doi:10.1016/S0019-9958(67)90228-8. ISSN 1462-3889. Erratum: Information and Control 11(4): 471 (1967), plus erratum.
- Rhodes, John L. (2010). Chrystopher L. Nehaniv, ed. Applications of automata theory and algebra: via the mathematical theory of complexity to biology, physics, psychology, philosophy, and games. World Scientific Pub Co Inc. ISBN 978-981-283-696-0.
- Rhodes, John; Steinberg, Benjamin (2008-12-17). The q-theory of finite semigroups. Springer Verlag. ISBN 978-0-387-09780-0.
- Straubing, Howard (1994). Finite automata, formal logic, and circuit complexity. Progress in Theoretical Computer Science. Basel: Birkhäuser. ISBN 3-7643-3719-2. Zbl 0816.68086.
- Prof. John L. Rhodes, University of California at Berkeley webpage
- SgpDec: Hierarchical Composition and Decomposition of Permutation Groups and Transformation Semigroups, developed by A. Egri-Nagy and C. L. Nehaniv. Open-source software package for the GAP computer algebra system.
- John L. Rhodes (2010). Chrystopher L. Nehaniv, ed. Applications of automata theory and algebra: via the mathematical theory of complexity to biology, physics, psychology, philosophy, and games. World Scientific Pub Co Inc. ISBN 978-981-283-696-0.