{
  "aliases": null,
  "backlinks": [
    {
      "field": "uses",
      "target": "5J0D97M548"
    }
  ],
  "body": "\n## Statement\n\nLet $\\Omega \\subseteq \\C^n$ be open and let $\\mathcal{O}_\\Omega$ be the sheaf of [[holomorphic functions|507C34W0ZT]] on $\\Omega$.\nThen $\\mathcal{O}_\\Omega$ is a [[coherent analytic sheaf|DSJET02WPR]] of $\\mathcal{O}_\\Omega$-modules.\nEquivalently, let $U \\subseteq \\Omega$ be open and let $f_1, \\dots, f_q$ be holomorphic functions on $U$.\nThen the sheaf of relations\n$$\\mathcal{R}(f_1, \\dots, f_q) = \\set{(g_1, \\dots, g_q) \\in \\mathcal{O}_U^q : g_1 f_1 + \\dots + g_q f_q = 0}$$\nis of finite type: near each point of $U$ it is generated by finitely many of its sections.\n\n## Remarks\n\nThe proof is by induction on $n$.\nBy the Weierstrass preparation theorem, after a linear change of coordinates one may take the $f_i$ to be Weierstrass polynomials in $z_n$ with coefficients holomorphic in $z' = (z_1, \\dots, z_{n-1})$.\nWith the [[Weierstrass division theorem|FE83QQS17S]], relations among polynomials in $z_n$ of bounded degree are then reduced to relations over $\\mathcal{O}_{\\C^{n-1}}$, where the induction hypothesis applies.\n\nExample: on $\\C^2$ the relations of $f_1 = z_1$ and $f_2 = z_2$ are generated at every point by the single relation $(z_2, -z_1)$.\n\nA consequence is that the structure sheaf $\\mathcal{O}_X$ of every [[complex analytic space|HXSZA44J5J]] is coherent.\nIndeed, locally it is a quotient of $\\mathcal{O}_\\Omega$ by an ideal sheaf generated by finitely many sections.\nThe real analogue fails: the sheaf of real analytic functions on $\\R^3$ has non-coherent ideal sheaves, such as the ideal of germs vanishing on Cartan's umbrella $\\set{x^3 = z(x^2 + y^2)}$.\n\n## Explanations\n\n### L1 human\n\nTake finitely many holomorphic functions and look at all the ways to combine them into zero with holomorphic coefficients.\nAt a single point there are finitely many basic combinations from which all others follow.\nOka's theorem says that these basic combinations can be chosen so that they work at all nearby points at once.\n\n### L2 human\n\nCoherence is what makes sheaf theory effective in several complex variables.\nKernels, images and cokernels of maps between finite sums of $\\mathcal{O}$ are coherent, so one can apply Cartan's theorems A and B and the finiteness theorems to them.\nOka's theorem is the base case, and Cartan's coherence of ideal sheaves of analytic sets and Oka's coherence of the normalization sheaf build on it.\n",
  "commit": "ff8a40749dc16545e3d2fc637f6b0196e81d0bfa",
  "front": {
    "about": [
      "DSJET02WPR"
    ],
    "kind": "statement",
    "msc": [
      "32C35",
      "32B05"
    ],
    "name": "Oka coherence theorem",
    "role": "theorem",
    "same_as": {
      "wikidata": "Q7081700",
      "wikipedia": "Oka coherence theorem"
    },
    "sources": [
      {
        "url": "https://en.wikipedia.org/wiki/Oka_coherence_theorem"
      }
    ],
    "tag": "MSX3VKM9Z5",
    "uses": [
      "DSJET02WPR",
      "507C34W0ZT",
      "FE83QQS17S",
      "HXSZA44J5J"
    ]
  },
  "kind": "statement",
  "link": "https://tamnd.github.io/math2/node/MSX3VKM9Z5/",
  "links": [
    {
      "field": "about",
      "target": "DSJET02WPR"
    },
    {
      "field": "uses",
      "target": "DSJET02WPR"
    },
    {
      "field": "uses",
      "target": "507C34W0ZT"
    },
    {
      "field": "uses",
      "target": "FE83QQS17S"
    },
    {
      "field": "uses",
      "target": "HXSZA44J5J"
    }
  ],
  "markdown": "https://tamnd.github.io/math2/node/MSX3VKM9Z5.md",
  "msc": [
    "32C35",
    "32B05"
  ],
  "name": "Oka coherence theorem",
  "prov": null,
  "role": "theorem",
  "source": "https://github.com/tamnd/math2/blob/main/nodes/MSX/MSX3VKM9Z5.md",
  "status": null,
  "tag": "MSX3VKM9Z5",
  "uri": "m2://MSX3VKM9Z5",
  "url": "https://tamnd.github.io/math2/wiki/oka-coherence-theorem/",
  "writing": {
    "tag": "MSX3VKM9Z5",
    "kind": "statement",
    "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
      }
    ]
  }
}
