{
  "aliases": null,
  "backlinks": null,
  "body": "\n## Statement\n\nLet $\\Omega \\subset \\C$ be a bounded [[domain|0Q4CBD3HX0]] on which the [[Dirichlet problem|8D56GQ4AG8]] is solvable for continuous boundary data.\nLet $E \\subseteq \\partial\\Omega$ be a closed set, and let $\\omega(z) = \\omega(z, E, \\Omega)$ be its [[harmonic measure|CFD7BPM51W]] at $z \\in \\Omega$.\nLet $0 \u003c m \\le M$, and let $f$ be a [[holomorphic function|0NAHXR1FRH]] on $\\Omega$ such that:\n\n1. $\\abs{f(z)} \\le M$ for all $z \\in \\Omega$.\n2. $\\limsup_{z \\to \\zeta} \\abs{f(z)} \\le m$ for every $\\zeta \\in E$.\n\nThen for every $z \\in \\Omega$,\n$$\\abs{f(z)} \\le m^{\\omega(z)} M^{1 - \\omega(z)}.$$\n\n## Remarks\n\nProof idea: the function $\\log\\abs{f}$ is [[subharmonic|Z1MHMGFNFW]], and $h = \\omega \\log m + (1 - \\omega) \\log M$ is harmonic.\nNear points of $E$ the bound for $\\log\\abs{f}$ is $\\log m$, elsewhere it is $\\log M$, and $h$ takes these boundary values in the generalized (Perron) sense.\nA maximum principle for $\\log\\abs{f} - h$, in the form valid for Perron solutions, gives $\\log\\abs{f} \\le h$.\nExample: on the annulus $r_1 \u003c \\abs{z} \u003c r_2$ with $E$ the inner circle, $\\omega(z) = \\log(r_2/\\abs{z}) / \\log(r_2/r_1)$.\nWith $m$ and $M$ the maxima of $\\abs{f}$ on the two circles, this gives the [[Hadamard three-circle theorem|V00Q05ZW1G]].\nOn a strip, the same argument gives the [[Hadamard three-lines theorem|WHS58R43N0]].\nIf $E$ is the whole boundary, then $\\omega \\equiv 1$ and the theorem reduces to the maximum modulus principle.\n\n## Explanations\n\n### L1 human\n\nSuppose a holomorphic function is at most $M$ everywhere and at most a smaller number $m$ on part of the boundary.\nThen inside the region the bound improves, and it improves more at points that \"see\" more of that part of the boundary.\nHarmonic measure measures exactly how much of the boundary a point sees.\n\n### L2 human\n\nThe theorem is the main way harmonic measure enters estimates of holomorphic functions.\nIt turns lower bounds for harmonic measure into upper bounds for holomorphic functions.\nTaking logarithms, it says that $\\log\\abs{f}$ lies below the harmonic interpolation between $\\log m$ and $\\log M$.\nIt is a special case of the principle that a subharmonic function lies below the harmonic function with the same boundary bounds.\n",
  "commit": "ff8a40749dc16545e3d2fc637f6b0196e81d0bfa",
  "front": {
    "about": [
      "CFD7BPM51W"
    ],
    "kind": "statement",
    "msc": [
      "30C85",
      "31A15",
      "30C80"
    ],
    "name": "Hadamard's two-constants theorem",
    "role": "theorem",
    "sources": [
      {
        "url": "https://en.wikipedia.org/wiki/Harmonic_measure"
      }
    ],
    "tag": "XGBDVQQV0T",
    "uses": [
      "CFD7BPM51W",
      "0NAHXR1FRH",
      "Z1MHMGFNFW",
      "8D56GQ4AG8",
      "0Q4CBD3HX0",
      "V00Q05ZW1G",
      "WHS58R43N0"
    ]
  },
  "kind": "statement",
  "link": "https://tamnd.github.io/math2/node/XGBDVQQV0T/",
  "links": [
    {
      "field": "about",
      "target": "CFD7BPM51W"
    },
    {
      "field": "uses",
      "target": "CFD7BPM51W"
    },
    {
      "field": "uses",
      "target": "0NAHXR1FRH"
    },
    {
      "field": "uses",
      "target": "Z1MHMGFNFW"
    },
    {
      "field": "uses",
      "target": "8D56GQ4AG8"
    },
    {
      "field": "uses",
      "target": "0Q4CBD3HX0"
    },
    {
      "field": "uses",
      "target": "V00Q05ZW1G"
    },
    {
      "field": "uses",
      "target": "WHS58R43N0"
    }
  ],
  "markdown": "https://tamnd.github.io/math2/node/XGBDVQQV0T.md",
  "msc": [
    "30C85",
    "31A15",
    "30C80"
  ],
  "name": "Hadamard's two-constants theorem",
  "prov": null,
  "role": "theorem",
  "source": "https://github.com/tamnd/math2/blob/main/nodes/XGB/XGBDVQQV0T.md",
  "status": null,
  "tag": "XGBDVQQV0T",
  "uri": "m2://XGBDVQQV0T",
  "url": "https://tamnd.github.io/math2/wiki/hadamards-two-constants-theorem/",
  "writing": {
    "tag": "XGBDVQQV0T",
    "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
      }
    ]
  }
}
