{
  "aliases": null,
  "backlinks": [
    {
      "field": "illustrates",
      "target": "1QWN5CV4CG"
    },
    {
      "field": "uses",
      "target": "FYZ3CJGZYV"
    },
    {
      "field": "uses",
      "target": "SKTMN14X5P"
    }
  ],
  "body": "\n## Statement\n\nLet $\\sigma$ be a signature and let $\\Gamma$ be a set of first-order [[sentences|DKFGQTRYZE]] over $\\sigma$.\nThen $\\Gamma$ has a [[model|MVCH6N9SNW]] if and only if every finite subset of $\\Gamma$ has a model.\n\n## Remarks\n\nOne direction is clear, since a model of $\\Gamma$ is a model of each subset.\nFor the other, if $\\Gamma$ had no model, then by [[Gödel's completeness theorem|WQ1ZE255SF]] it would derive a contradiction.\nThat derivation uses only finitely many sentences of $\\Gamma$, and this finite subset would have no model.\nA second proof builds a model as an [[ultraproduct|AX9Q86GB8M]] of models of the finite subsets.\nApplication: let $\\Gamma$ be the true sentences of arithmetic, plus $c \u003e \\underline{n}$ for a new constant $c$ and each numeral $\\underline{n}$.\nEach finite subset holds in $\\N$ with $c$ a large number, so $\\Gamma$ has a model, a [[non-standard model of arithmetic|1QWN5CV4CG]].\nIn Mathlib the theorem is `FirstOrder.Language.Theory.isSatisfiable_iff_isFinitelySatisfiable`.\n\n## Explanations\n\n### L1 human\n\nIf every finite part of a list of axioms can be made true, then the whole infinite list can be made true at once.\nThis sounds simple, but it has strong consequences.\nFor example, it gives models of arithmetic with numbers larger than every ordinary natural number.\n\n### L2 human\n\nCompactness is the main tool of [[model theory|HFTBG5PMXC]].\nA typical use shows that some property cannot be expressed in first-order logic.\nIf a theory has finite models of every size, then it has an infinite model, so \"the domain is finite\" is not first-order.\nThe theorem is named after compactness in topology: it says that a certain space of complete theories, the Stone space, is compact.\nBy [[Lindström's theorem|FYZ3CJGZYV]], first-order logic is the strongest logic that has both compactness and the downward [[Löwenheim–Skolem theorem|484M0TZ1S7]].\n",
  "commit": "547b6eddb8f2feb8d579f2d633d22a27b7e132fc",
  "front": {
    "about": [
      "QN7M1JCGT9"
    ],
    "kind": "statement",
    "msc": [
      "03C07",
      "03B10"
    ],
    "name": "Compactness theorem",
    "role": "theorem",
    "same_as": {
      "wikidata": "Q1149458",
      "wikipedia": "Compactness theorem"
    },
    "sources": [
      {
        "url": "https://en.wikipedia.org/wiki/Compactness_theorem"
      }
    ],
    "tag": "1NR3HAWG9D",
    "uses": [
      "DKFGQTRYZE",
      "MVCH6N9SNW",
      "QN7M1JCGT9"
    ]
  },
  "kind": "statement",
  "link": "https://math2.tamnd.com/node/1NR3HAWG9D/",
  "links": [
    {
      "field": "about",
      "target": "QN7M1JCGT9"
    },
    {
      "field": "uses",
      "target": "DKFGQTRYZE"
    },
    {
      "field": "uses",
      "target": "MVCH6N9SNW"
    },
    {
      "field": "uses",
      "target": "QN7M1JCGT9"
    }
  ],
  "markdown": "https://math2.tamnd.com/node/1NR3HAWG9D.md",
  "msc": [
    "03C07",
    "03B10"
  ],
  "name": "Compactness theorem",
  "prov": null,
  "role": "theorem",
  "source": "https://github.com/tamnd/math2/blob/main/nodes/1NR/1NR3HAWG9D.md",
  "status": null,
  "tag": "1NR3HAWG9D",
  "uri": "m2://1NR3HAWG9D",
  "url": "https://math2.tamnd.com/wiki/compactness-theorem/",
  "writing": {
    "tag": "1NR3HAWG9D",
    "kind": "statement",
    "level": "W0",
    "next": [
      {
        "what": "a source with a locator",
        "have": 0,
        "want": 1
      }
    ]
  }
}
