{
  "aliases": null,
  "backlinks": null,
  "body": "\n## Definition\n\nLet $A$ be a [[finite set|070R982G4B]] with at least two elements.\nA set $F$ of finitary [[operations|EJ8YJVM9BW]] on $A$ is *functionally complete* if the [[clone|PTKR703G6A]] generated by $F$ contains every operation $A^n \\to A$ for every $n \\ge 1$.\n\n## Remarks\n\nExample: $F = \\set{\\wedge, \\neg}$ on $\\set{0, 1}$ is functionally complete.\nCheck: every Boolean function of $n \\ge 1$ variables has a disjunctive normal form, with the constant $0$ written as $x_1 \\wedge \\neg x_1$.\nThe disjunctions are removed with $x \\vee y = \\neg(\\neg x \\wedge \\neg y)$.\nNon-example: $F = \\set{\\wedge, \\vee}$ on $\\set{0, 1}$ is not functionally complete.\nEvery operation built from $\\wedge$ and $\\vee$ maps $(1, \\dots, 1)$ to $1$, so $\\neg$ is not in the generated clone.\nSome texts, especially in logic, allow constants to be used for free; this changes which sets count as complete.\n",
  "commit": "ff8a40749dc16545e3d2fc637f6b0196e81d0bfa",
  "front": {
    "defines": "TDZVCWYJ9F",
    "kind": "definition",
    "msc": [
      "08A40",
      "06E30",
      "03B50"
    ],
    "name": "Functional completeness",
    "sources": [
      {
        "url": "https://en.wikipedia.org/wiki/Functional_completeness"
      }
    ],
    "tag": "FSZ6PCKN0F",
    "uses": [
      "PTKR703G6A",
      "EJ8YJVM9BW",
      "070R982G4B"
    ]
  },
  "kind": "definition",
  "link": "https://tamnd.github.io/math2/node/FSZ6PCKN0F/",
  "links": [
    {
      "field": "defines",
      "target": "TDZVCWYJ9F"
    },
    {
      "field": "uses",
      "target": "PTKR703G6A"
    },
    {
      "field": "uses",
      "target": "EJ8YJVM9BW"
    },
    {
      "field": "uses",
      "target": "070R982G4B"
    }
  ],
  "markdown": "https://tamnd.github.io/math2/node/FSZ6PCKN0F.md",
  "msc": [
    "08A40",
    "06E30",
    "03B50"
  ],
  "name": "Functional completeness",
  "prov": null,
  "role": "",
  "source": "https://github.com/tamnd/math2/blob/main/nodes/FSZ/FSZ6PCKN0F.md",
  "status": null,
  "tag": "FSZ6PCKN0F",
  "uri": "m2://FSZ6PCKN0F",
  "url": "https://tamnd.github.io/math2/wiki/functional-completeness-definition/",
  "writing": {
    "tag": "FSZ6PCKN0F",
    "kind": "definition",
    "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
      }
    ]
  }
}
