{
  "aliases": null,
  "backlinks": null,
  "body": "\n## Definition\n\nLet $\\mathcal{A}$ be an [[abelian category|Y9CZ3MTNF1]] and let $C_\\bullet$ be a [[chain complex|WQ82C0M3QB]] in $\\mathcal{A}$.\nA *Cartan–Eilenberg resolution* of $C_\\bullet$ is a [[double complex|N80ABTQHEQ]] $P_{\\bullet,\\bullet}$ of [[projective objects|YXMXAGVC1Q]] with $P_{p,q} = 0$ for $q \u003c 0$.\nIts horizontal differential is $d^h \\colon P_{p,q} \\to P_{p-1,q}$ and its vertical differential is $d^v \\colon P_{p,q} \\to P_{p,q-1}$.\nIt comes with a [[chain map|HTK9WQZJ1G]] $\\varepsilon \\colon P_{\\bullet,0} \\to C_\\bullet$ with $\\varepsilon \\circ d^v = 0$ on $P_{\\bullet,1}$.\nThese data must satisfy, for every $p$:\n\n1. if $C_p = 0$, then $P_{p,q} = 0$ for all $q$;\n2. the maps induced by $\\varepsilon$ on boundaries, $B_p(P_{\\bullet,\\bullet}, d^h) \\to B_p(C)$, form a [[projective resolution|HK2AA1YSQ2]] of $B_p(C)$;\n3. the maps induced by $\\varepsilon$ on [[homology|2J4JJJYP22]], $H_p(P_{\\bullet,\\bullet}, d^h) \\to H_p(C)$, form a projective resolution of $H_p(C)$.\n\nHere $B_p(P_{\\bullet,\\bullet}, d^h)$ and $H_p(P_{\\bullet,\\bullet}, d^h)$ are the complexes, with vertical differential, of horizontal boundaries and horizontal homology in column $p$.\n\n## Remarks\n\nIt follows that each column $P_{p,\\bullet} \\to C_p$ and the cycles $Z_p(P_{\\bullet,\\bullet}, d^h) \\to Z_p(C)$ are projective resolutions too.\nIf $\\mathcal{A}$ has [[enough projectives|J2TX4TDPCX]], every chain complex has a Cartan–Eilenberg resolution.\nIt is built with the [[horseshoe lemma|VNMBSYX9PY]] applied to $0 \\to B_p \\to Z_p \\to H_p \\to 0$ and $0 \\to Z_p \\to C_p \\to B_{p-1} \\to 0$.\nExample: let $C$ be a module $M$ in degree $0$, and place a projective resolution $Q_\\bullet \\to M$ in column $0$.\nThis is a Cartan–Eilenberg resolution: the boundaries are $0$, resolved by $0$.\nThe horizontal homology of column $0$ is $Q_\\bullet$, which resolves $H_0(C) = M$.\nNon-example: over $\\Z$, let $C$ be $\\Z \\xrightarrow{\\cdot 2} \\Z$ in degrees $1$ and $0$, and let $P = C$ placed in row $0$.\nClause 3 fails in degree $0$: the horizontal homology there is $\\Z/2\\Z$ alone.\nIt is not projective, so it is not a projective resolution of $H_0(C) = \\Z/2\\Z$.\nInjective Cartan–Eilenberg resolutions of cochain complexes are defined dually.\n",
  "commit": "ff8a40749dc16545e3d2fc637f6b0196e81d0bfa",
  "front": {
    "defines": "SX8V8GR5ZG",
    "kind": "definition",
    "msc": [
      "18G10",
      "18G35"
    ],
    "name": "Cartan–Eilenberg resolution",
    "sources": [
      {
        "url": "https://en.wikipedia.org/wiki/Cartan%E2%80%93Eilenberg_resolution"
      }
    ],
    "tag": "P84GBDM0QR",
    "uses": [
      "Y9CZ3MTNF1",
      "WQ82C0M3QB",
      "N80ABTQHEQ",
      "YXMXAGVC1Q",
      "HK2AA1YSQ2",
      "2J4JJJYP22",
      "HTK9WQZJ1G"
    ]
  },
  "kind": "definition",
  "link": "https://tamnd.github.io/math2/node/P84GBDM0QR/",
  "links": [
    {
      "field": "defines",
      "target": "SX8V8GR5ZG"
    },
    {
      "field": "uses",
      "target": "Y9CZ3MTNF1"
    },
    {
      "field": "uses",
      "target": "WQ82C0M3QB"
    },
    {
      "field": "uses",
      "target": "N80ABTQHEQ"
    },
    {
      "field": "uses",
      "target": "YXMXAGVC1Q"
    },
    {
      "field": "uses",
      "target": "HK2AA1YSQ2"
    },
    {
      "field": "uses",
      "target": "2J4JJJYP22"
    },
    {
      "field": "uses",
      "target": "HTK9WQZJ1G"
    }
  ],
  "markdown": "https://tamnd.github.io/math2/node/P84GBDM0QR.md",
  "msc": [
    "18G10",
    "18G35"
  ],
  "name": "Cartan–Eilenberg resolution",
  "prov": null,
  "role": "",
  "source": "https://github.com/tamnd/math2/blob/main/nodes/P84/P84GBDM0QR.md",
  "status": null,
  "tag": "P84GBDM0QR",
  "uri": "m2://P84GBDM0QR",
  "url": "https://tamnd.github.io/math2/wiki/cartan-eilenberg-resolution-definition/",
  "writing": {
    "tag": "P84GBDM0QR",
    "kind": "definition",
    "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
      }
    ]
  }
}
