{
  "aliases": null,
  "backlinks": null,
  "body": "\n## Statement\n\nLet $G$ be a finite [[connected|0FFAYNMAJZ]] [[graph|0JD5C82QMB]] or [[multigraph|01M5T0KDG7]] with at least one edge.\nThen $G$ has an Eulerian circuit if and only if every vertex of $G$ has even [[degree|0T0F6CCS9W]].\n\n## Remarks\n\nThe condition is necessary by the theorem on [[degrees along an Eulerian trail|0CDVDGWGEG]].\nA consequence: a finite connected graph has an [[Eulerian trail|0NNYDD1AVR]] that is not closed if and only if exactly two vertices have odd degree.\nHierholzer's algorithm builds an Eulerian circuit: it joins closed trails until every edge is used.\n\n## History\n\nLeonhard Euler showed the necessity of the condition, and he stated without proof that it is sufficient.\nThe first complete proof is by Carl Hierholzer. It was published after his death, in 1873.\n\n## Explanations\n\n### L1 human\n\nYou can draw a connected graph in one closed stroke exactly when every vertex has an even number of edges.\nEach time the pen passes a vertex, it uses one edge to arrive and one edge to leave.\n",
  "commit": "545acf83a9b75c8ddc375ef8b23d2ae101a4d7e4",
  "front": {
    "kind": "statement",
    "msc": [
      "05C45"
    ],
    "name": "Euler's theorem on Eulerian circuits",
    "role": "theorem",
    "sources": [
      {
        "locator": "lead section",
        "url": "https://en.wikipedia.org/wiki/Eulerian_path"
      }
    ],
    "tag": "020422MDQF",
    "uses": [
      "0T0F6CCS9W",
      "0FFAYNMAJZ",
      "0NNYDD1AVR"
    ]
  },
  "kind": "statement",
  "link": "https://math2.tamnd.com/node/020422MDQF/",
  "links": [
    {
      "field": "uses",
      "target": "0T0F6CCS9W"
    },
    {
      "field": "uses",
      "target": "0FFAYNMAJZ"
    },
    {
      "field": "uses",
      "target": "0NNYDD1AVR"
    }
  ],
  "markdown": "https://math2.tamnd.com/node/020422MDQF.md",
  "msc": [
    "05C45"
  ],
  "name": "Euler's theorem on Eulerian circuits",
  "prov": null,
  "role": "theorem",
  "source": "https://github.com/tamnd/math2/blob/main/nodes/020/020422MDQF.md",
  "status": null,
  "tag": "020422MDQF",
  "uri": "m2://020422MDQF",
  "url": "https://math2.tamnd.com/wiki/eulers-theorem-on-eulerian-circuits/",
  "writing": {
    "tag": "020422MDQF",
    "kind": "statement",
    "level": "W0",
    "next": [
      {
        "what": "an inventory row",
        "note": "the row of the inventory that the node accounts for",
        "have": 0,
        "want": 1
      }
    ]
  }
}
