{
  "aliases": null,
  "backlinks": null,
  "body": "\n## Statement\n\nLet $a \u003c b$ and $k \\ge 0$ be given, and write $(t)_+^k$ for $t^k$ when $t \\ge 0$ and $0$ when $t \u003c 0$.\nLet $\\alpha_0, \\dots, \\alpha_k$ be piecewise continuous functions on $[a, b]$, and let $m_0, \\dots, m_k \\ge 0$ be integers.\nFor $0 \\le j \\le k$ and $1 \\le i \\le m_j$, let $\\beta_{ij}$ be a real number and $x_{ij}$ a point of $[a, b]$.\nLet $L$ be the linear functional on $C^{k+1}[a, b]$ given by\n$$L(f) = \\sum_{j=0}^{k} \\Big( \\int_a^b \\alpha_j(x) f^{(j)}(x)\\,dx + \\sum_{i=1}^{m_j} \\beta_{ij} f^{(j)}(x_{ij}) \\Big).$$\nAssume that $L(p) = 0$ for every polynomial $p$ of degree at most $k$.\nThen for every $f \\in C^{k+1}[a, b]$,\n$$L(f) = \\int_a^b K(\\theta)\\, f^{(k+1)}(\\theta)\\,d\\theta, \\qquad K(\\theta) = \\frac{1}{k!}\\, L_x\\big[(x - \\theta)_+^k\\big],$$\nwhere $L_x$ means that $L$ acts on $(x - \\theta)_+^k$ as a function of $x$ for fixed $\\theta$.\nThe function $K$ is the *Peano kernel* of $L$.\n\n## Remarks\n\nProof idea: write $f$ by [[Taylor's theorem with the integral remainder|0WJGR81HBD]] at $a$, as the [[Taylor polynomial|0HFSFVMWQB]] of degree $k$ plus $\\frac{1}{k!} \\int_a^b (x - \\theta)_+^k f^{(k+1)}(\\theta)\\,d\\theta$.\nThe functional kills the polynomial part.\nThe special form of $L$ allows $L$ to be moved inside the integral over $\\theta$, which gives the formula.\n\nIf $K$ does not change sign on $[a, b]$, the mean value theorem for integrals gives $L(f) = \\frac{f^{(k+1)}(\\xi)}{(k+1)!}\\, L\\big(x^{k+1}\\big)$ for some $\\xi \\in [a, b]$.\nAlso $\\abs{L(f)} \\le \\norm{K}_{L^1} \\, \\norm{f^{(k+1)}}_\\infty$ in all cases.\n\nExample: the error of the [[trapezoidal rule|FH0538XCZR]], $L(f) = \\int_a^b f - \\frac{b - a}{2} \\big( f(a) + f(b) \\big)$, with $k = 1$.\nHere $K(\\theta) = \\int_\\theta^b (x - \\theta)\\,dx - \\frac{b - a}{2} (b - \\theta) = -\\frac12 (\\theta - a)(b - \\theta)$, which is $\\le 0$.\nSince $\\int_a^b K = -\\frac{(b - a)^3}{12}$, one gets $L(f) = -\\frac{(b - a)^3}{12} f''(\\xi)$ for some $\\xi$.\n\nThe hypothesis $L(p) = 0$ for degree at most $k$ is needed: for $L(f) = f(0)$ on $[0, 1]$ and $k = 0$, the formula would give $f(0) = \\int_0^1 K f'$, which fails for $f = 1$.\n\n## Explanations\n\n### L1 human\n\nMany approximation formulas, such as quadrature rules, are exact for all polynomials up to some degree.\nThe theorem says that their error is then an average of a high derivative of the function, with a fixed weight called the Peano kernel.\nSo the error is small when that derivative is small.\nThe kernel depends only on the formula, not on the function.\n\n### L2 human\n\nThe theorem turns the question \"how large is the error of this rule\" into a computation with one explicit function $K$.\nIt is the standard way to derive the error terms of Newton–Cotes rules, of Gaussian rules and of interpolation and differentiation formulas.\nWhen $K$ keeps one sign, the error has the familiar form \"constant times $f^{(k+1)}(\\xi)$\", and the constant is found by testing the rule on $x^{k+1}$.\nWhen $K$ changes sign, one still has the bound by $\\norm{K}_{L^1} \\norm{f^{(k+1)}}_\\infty$, which is sharp over the class of functions with bounded $(k+1)$-st derivative.\nThe [[degree of exactness|ZYT1JNT1Y0]] of a rule fixes the largest $k$ for which the theorem applies.\n",
  "commit": "ff8a40749dc16545e3d2fc637f6b0196e81d0bfa",
  "front": {
    "about": [
      "ADSVMCY77A"
    ],
    "kind": "statement",
    "msc": [
      "41A80",
      "41A55",
      "65D32"
    ],
    "name": "Peano kernel theorem",
    "role": "theorem",
    "same_as": {
      "wikidata": "Q60741336",
      "wikipedia": "Peano kernel theorem"
    },
    "sources": [
      {
        "url": "https://en.wikipedia.org/wiki/Peano_kernel_theorem"
      }
    ],
    "tag": "7N8E1BR67D",
    "uses": [
      "ADSVMCY77A",
      "0HFSFVMWQB",
      "0WJGR81HBD"
    ]
  },
  "kind": "statement",
  "link": "https://tamnd.github.io/math2/node/7N8E1BR67D/",
  "links": [
    {
      "field": "about",
      "target": "ADSVMCY77A"
    },
    {
      "field": "uses",
      "target": "ADSVMCY77A"
    },
    {
      "field": "uses",
      "target": "0HFSFVMWQB"
    },
    {
      "field": "uses",
      "target": "0WJGR81HBD"
    }
  ],
  "markdown": "https://tamnd.github.io/math2/node/7N8E1BR67D.md",
  "msc": [
    "41A80",
    "41A55",
    "65D32"
  ],
  "name": "Peano kernel theorem",
  "prov": null,
  "role": "theorem",
  "source": "https://github.com/tamnd/math2/blob/main/nodes/7N8/7N8E1BR67D.md",
  "status": null,
  "tag": "7N8E1BR67D",
  "uri": "m2://7N8E1BR67D",
  "url": "https://tamnd.github.io/math2/wiki/peano-kernel-theorem/",
  "writing": {
    "tag": "7N8E1BR67D",
    "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
      }
    ]
  }
}
