{
  "aliases": null,
  "backlinks": null,
  "body": "\n## Statement\n\nFor each natural number $n$, let $(a_k(n))_{k \\ge 0}$ be a sequence of complex numbers.\nAssume that:\n\n1. for each $k$, the limit $a_k = \\lim_{n \\to \\infty} a_k(n)$ exists;\n2. there are nonnegative real numbers $M_k$ with $\\abs{a_k(n)} \\le M_k$ for all $k$ and $n$, and $\\sum_k M_k \u003c \\infty$.\n\nThen the series $\\sum_k a_k(n)$ and $\\sum_k a_k$ [[converge absolutely|0W3K3QPEWT]], and\n$$\\lim_{n \\to \\infty} \\sum_{k=0}^{\\infty} a_k(n) = \\sum_{k=0}^{\\infty} a_k.$$\n\n## Remarks\n\nGiven $\\varepsilon \u003e 0$, choose $K$ with $\\sum_{k \u003e K} M_k \u003c \\varepsilon$.\nThe tails beyond $K$ of both series are then smaller than $\\varepsilon$, since $\\abs{a_k} \\le M_k$ too.\nThe finitely many terms with $k \\le K$ converge, so the difference of the two sums is less than $3\\varepsilon$ for large $n$.\nExample: for real $x$ put $a_k(n) = \\binom{n}{k} x^k / n^k$ for $k \\le n$ and $a_k(n) = 0$ for $k \u003e n$.\nThen $\\sum_k a_k(n) = (1 + x/n)^n$, $a_k(n) \\to x^k/k!$, and $\\abs{a_k(n)} \\le \\abs{x}^k / k!$.\nSo $(1 + x/n)^n \\to \\sum_k x^k / k! = e^x$.\nWithout the bound of clause 2 the conclusion fails: $a_k(n) = 1$ for $k = n$ and $0$ otherwise gives sums equal to $1$ but limits $a_k = 0$.\n\n## Explanations\n\n### L1 human\n\nTannery's theorem allows you to take a limit inside an infinite sum.\nIt needs one fixed summable bound for all the terms, uniformly in $n$.\nThen no mass can escape to infinity, so the limit of the sums is the sum of the limits.\n\n### L2 human\n\nTannery's theorem is the [[dominated convergence theorem|BYNV84PF86]] for the counting measure on $\\N$, but it predates measure theory and has a short direct proof.\nA typical use is to pass from finite products or binomial expansions to their limits, as in the proof that $(1 + x/n)^n \\to e^x$.\nCompare the [[Weierstrass M-test|0NX5NWAFC9]], which uses the same kind of bound to get uniform convergence of a series of functions.\n",
  "commit": "547b6eddb8f2feb8d579f2d633d22a27b7e132fc",
  "front": {
    "kind": "statement",
    "msc": [
      "40A05",
      "40A30"
    ],
    "name": "Tannery's theorem",
    "role": "theorem",
    "same_as": {
      "wikidata": "Q60791768",
      "wikipedia": "Tannery's theorem"
    },
    "sources": [
      {
        "url": "https://en.wikipedia.org/wiki/Tannery%27s_theorem"
      }
    ],
    "tag": "Y0JH94QR80",
    "uses": [
      "0CVVKY7GY2",
      "0AZ3R52593",
      "0W3K3QPEWT"
    ]
  },
  "kind": "statement",
  "link": "https://math2.tamnd.com/node/Y0JH94QR80/",
  "links": [
    {
      "field": "uses",
      "target": "0CVVKY7GY2"
    },
    {
      "field": "uses",
      "target": "0AZ3R52593"
    },
    {
      "field": "uses",
      "target": "0W3K3QPEWT"
    }
  ],
  "markdown": "https://math2.tamnd.com/node/Y0JH94QR80.md",
  "msc": [
    "40A05",
    "40A30"
  ],
  "name": "Tannery's theorem",
  "prov": null,
  "role": "theorem",
  "source": "https://github.com/tamnd/math2/blob/main/nodes/Y0J/Y0JH94QR80.md",
  "status": null,
  "tag": "Y0JH94QR80",
  "uri": "m2://Y0JH94QR80",
  "url": "https://math2.tamnd.com/wiki/tannerys-theorem/",
  "writing": {
    "tag": "Y0JH94QR80",
    "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
      }
    ]
  }
}
