{
  "aliases": null,
  "backlinks": [
    {
      "field": "defines",
      "target": "GYR1XYFEZB"
    }
  ],
  "body": "\n## Summary\n\nKrohn–Rhodes theory studies finite [[semigroups|0XMEM406JM]] and finite automata by decomposing them into simple building blocks.\nIts central result is the Krohn–Rhodes theorem.\nIt says that every finite semigroup divides an iterated [[wreath product|W1X984PKJ9]] of finite [[simple groups|0YMYMNQ0QZ]] and copies of the flip-flop, a monoid of resets.\nThe simple groups in such a decomposition can be chosen among the simple groups that divide the semigroup.\nSo every finite automaton can be built in a cascade from reversible parts, which are groups, and memory parts, which are flip-flops.\nThe least number of group levels needed is the complexity of the semigroup, a central object of study in the theory.\n\n## Explanations\n\n### L1 human\n\nA finite automaton is a machine with finitely many states that reads input one symbol at a time.\nKrohn–Rhodes theory says that any such machine can be simulated by a chain of very simple machines, each feeding its state to the next ones.\nThe simple machines are of two kinds: those that permute their states reversibly, like the hands of a clock, and one-bit memories that can be set or reset.\nThis is a kind of prime factorization for machines.\n",
  "commit": "547b6eddb8f2feb8d579f2d633d22a27b7e132fc",
  "front": {
    "kind": "concept",
    "msc": [
      "20M35",
      "68Q70"
    ],
    "name": "Krohn–Rhodes theory",
    "same_as": {
      "wikidata": "Q6438788",
      "wikipedia": "Krohn–Rhodes theory"
    },
    "sources": [
      {
        "url": "https://en.wikipedia.org/wiki/Krohn–Rhodes_theory"
      }
    ],
    "tag": "3WDZY1J002"
  },
  "kind": "concept",
  "link": "https://math2.tamnd.com/node/3WDZY1J002/",
  "links": null,
  "markdown": "https://math2.tamnd.com/node/3WDZY1J002.md",
  "msc": [
    "20M35",
    "68Q70"
  ],
  "name": "Krohn–Rhodes theory",
  "prov": null,
  "role": "",
  "source": "https://github.com/tamnd/math2/blob/main/nodes/3WD/3WDZY1J002.md",
  "status": null,
  "tag": "3WDZY1J002",
  "uri": "m2://3WDZY1J002",
  "url": "https://math2.tamnd.com/wiki/krohn-rhodes-theory/",
  "writing": {
    "tag": "3WDZY1J002",
    "kind": "concept",
    "level": "W0",
    "next": [
      {
        "what": "an inventory row",
        "note": "the row of the inventory that the node accounts for",
        "have": 0,
        "want": 1
      },
      {
        "what": "a source with a locator",
        "have": 0,
        "want": 1
      }
    ]
  }
}
