From 58caad3e9ff6ed6b53589f1c93f011d76dfae0e3 Mon Sep 17 00:00:00 2001 From: Yuhang Eric Wei Date: Mon, 25 Nov 2024 13:30:50 +0800 Subject: [PATCH 1/4] Fix punctuations Consistency of trailing punctuations in displayed formulae #9 --- ha/1-cat.typ | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/ha/1-cat.typ b/ha/1-cat.typ index 8d86db0..a55c0d6 100644 --- a/ha/1-cat.typ +++ b/ha/1-cat.typ @@ -34,7 +34,7 @@ This section is a crash course in category theory. The reader is advised to take #example[ A *discrete category* $cC$ is one where $ - hom_cC (X, Y) = cases({id_X} quad &X = Y, nothing quad &X != Y) + hom_cC (X, Y) = cases({id_X} quad &X = Y\,, nothing quad &X != Y.) $ It does not contain more information than $ob cC$, so it can be simply regarded as a collection of objects, or a set when $cC$ is small. ] @@ -257,7 +257,7 @@ $ product_(i in I) X_i = {(x_i)_(i in I) | x_i in X_i} $ and $product.co_(i in I #proof[ For any $C_i$, there exists $pi_i : product C_i -> C_i$ satisfying the universal property. Define $phi: Hom(C) (A, product C_i) -> product Hom(C) (A, C_i)$ as - $ f |-> (pi_i compose f)_i = (pi_1 compose f, ..., pi_n compose f) $ + $ f |-> (pi_i compose f)_i = (pi_1 compose f, ..., pi_n compose f). $ #align(center, commutative-diagram( node((0, 0), [$A$]), node((0, 1), [$product C_i$]), @@ -294,13 +294,13 @@ Any $(g_i)_i in product Hom(C) (A, C_i)$ can be factorised as $(pi_i compose f') Let $cC$, $cD$ be categories. A *functor* $F: cC -> cD$ consists of - A map of objects $ob cC -> ob cD$; - - #fw[For every pair objects $C_1, C_2 in cC$, a map of morphisms $ Hom(C) (C_1, C_2) -> Hom(D) (F(C_1), F(C_2)) $ ] + - #fw[For every pair objects $C_1, C_2 in cC$, a map of morphisms $ Hom(C) (C_1, C_2) -> Hom(D) (F(C_1), F(C_2)), $ ] subject to preserving morphism composition and identity morphisms. ] #definition[ Now we can define $bd("Cat")$, the category of all (small) categories, where $ob bd("Cat")$ are small categories and $hom_Cat (cC, cD)$ are functors between $cC$ and $cD$. ] #definition[ - Suppose $F, G: cC -> cD$, then a *natural transformation* $alpha: F => G$ is defined by a collection of morphisms in $cD$ indexed by $x in ob cC$: $ {alpha_x: F(x) -> G(x)}_(x in ob cC) $ where the diagram commutes: + Suppose $F, G: cC -> cD$, then a *natural transformation* $alpha: F => G$ is defined by a collection of morphisms in $cD$ indexed by $x in ob cC$: $ {alpha_x: F(x) -> G(x)}_(x in ob cC), $ where the diagram commutes: // https://tikzcd-typst-editor.pages.dev/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRADEAKADwEoQAvqXSZc+QigCM5KrUYs2AcR78hI7HgJEyk2fWatEHHgHJVwkBg3ii03dX0Kjy7mcGyYUAObwioAGYAThAAtkhkIDgQSJJqIEGhMdRRSADMDvKGIMr+5gHBYYgRKYgATBkGbFy5ghYJheWR0YipAhQCQA #align(center, commutative-diagram( node((0, 0), [$F(x)$]), @@ -328,7 +328,7 @@ In $Cat$, the hom-sets are not only sets but also categories, which means that $ == Adjoint Functors #definition[ - Functors $L : cA arrows.rl cB : R$ are *adjoint* if for all $A in cA, B in cB$ there exists a bijection $ tau_(A B) : Hom(B)(L(A), B) bij Hom(A) (A, R(B)) $ such that for any $f: A-> A'$ and $g: B-> B'$, the diagram commutes: + Functors $L : cA arrows.rl cB : R$ are *adjoint* if for all $A in cA, B in cB$, there exists a bijection $ tau_(A B) : Hom(B)(L(A), B) bij Hom(A) (A, R(B)) $ such that for any $f: A-> A'$ and $g: B-> B'$, the diagram commutes: // #image("imgs/10.png") // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAAkIBbACgCEAlAAIeAGR4BBAOQDSQwQJABfUuky58hFAEZyVWoxZtOvQSPETZ8xSrXY8BIgCY91es1aIO3fsLGSrPhllVRAMe00iMm19dyMvEwCRaTkAJV8bUPCNRx1SGLdDT29eS2S0jJC7HK1kFwKDD2MfMskKoIEbfRgoAHN4IlAAMwAnbiQyEBwIJG1bEFHxxF0pmcQnecWuCepppABmQqavHDomAH1JKUEqhbHt5d21gBYj+Kmzy4lrW62kF1WSAArG9iqcLpJ5MFNvcDk8kM8YUtXoDEEClBQlEA #align(center, commutative-diagram( @@ -365,12 +365,12 @@ Equivalently, $tau$ is a natural isomorphism between $Hom(B) (L(-), -)$ and $Hom #example[ - $"Free"$ is the left adjoint of $"Forget"$. For example, we define the functors between $veck$ and $Set$: $ "Forget": veck &-> Set \ (V, +, dot) &|-> V $ $ "Free" : Set &-> veck \ X &|-> k[X] $ + $"Free"$ is the left adjoint of $"Forget"$. For example, we define the functors between $veck$ and $Set$: $ "Forget": veck &-> Set, \ (V, +, dot) &|-> V; $ $ "Free" : Set &-> veck, \ X &|-> k[X]. $ Then we have: -$ hom_(veck)(k[X], W) &iso hom_(Set) (X, "Forget"(W))\ -T &|-> T|_X \ -"linearly extended" f &arrow.l.bar f +$ hom_(veck)(k[X], W) &iso hom_(Set) (X, "Forget"(W)),\ +T &|-> T|_X, \ +"linearly extended" f &arrow.l.bar f. $ From a7336a47de0a2ac9a0f788317ba8475370d9d452 Mon Sep 17 00:00:00 2001 From: Yuhang Eric Wei Date: Mon, 25 Nov 2024 13:39:56 +0800 Subject: [PATCH 2/4] Format document --- ha/0-module.typ | 129 ++--- ha/1-cat.typ | 533 ++++++++++---------- ha/2-ab.typ | 891 ++++++++++++++++++---------------- ha/3-tp.typ | 321 +++++++------ ha/4-enough.typ | 400 ++++++++-------- ha/5-cc.typ | 1092 +++++++++++++++++++++-------------------- ha/6-df.typ | 277 ++++++----- ha/7-balance.typ | 1173 ++++++++++++++++++++++++--------------------- ha/8-ext.typ | 251 +++++----- ha/9-tor.typ | 282 ++++++----- ha/a-kc.typ | 242 +++++----- ha/b-ext1.typ | 596 ++++++++++++----------- ha/c-gc.typ | 613 ++++++++++++----------- ha/d-app.typ | 143 +++--- libs/color.typ | 2 - libs/template.typ | 7 +- main.typ | 12 +- 17 files changed, 3686 insertions(+), 3278 deletions(-) diff --git a/ha/0-module.typ b/ha/0-module.typ index 5543cfa..a22c1bd 100644 --- a/ha/0-module.typ +++ b/ha/0-module.typ @@ -5,107 +5,112 @@ #definition[ - Let $R$ be a ring. A *left $R$-module* $M$ is an abelian group with a map $R times M -> M$ (called multiplication), denoted as $(r, m) |-> r dot m = r m$, which satisfies: - $ r(m_1 + m_2) &= r m_1 + r m_2, \ - (r_1 + r_2) m &= r_1 m + r_2 m, \ - (r_1 r_2) m &= r_1 (r_2 m), \ - 1_R dot m &= m. $ - - A *right $R$-module* is defined similarly, but with multiplication on the right, namely $m r$. - - If $R$ is a commutative ring, then left and right $R$-modules are the same, and we call them *$R$-modules*. + Let $R$ be a ring. A *left $R$-module* $M$ is an abelian group with a map $R times M -> M$ (called multiplication), denoted as $(r, m) |-> r dot m = r m$, which satisfies: + $ + r(m_1 + m_2) &= r m_1 + r m_2, \ + (r_1 + r_2) m &= r_1 m + r_2 m, \ + (r_1 r_2) m &= r_1 (r_2 m), \ + 1_R dot m &= m. + $ + + A *right $R$-module* is defined similarly, but with multiplication on the right, namely $m r$. + + If $R$ is a commutative ring, then left and right $R$-modules are the same, and we call them *$R$-modules*. ] -// Another way to understand the definition is to think of $R$ acting on an abelian group $M$, where for each $r in R$ we define a group homomorphism $M -> M$, denoted as $m |-> r dot m = r m$. +// Another way to understand the definition is to think of $R$ acting on an abelian group $M$, where for each $r in R$ we define a group homomorphism $M -> M$, denoted as $m |-> r dot m = r m$. -// Obviously a left $R$-module is the same as a right $R^op$-module. +// Obviously a left $R$-module is the same as a right $R^op$-module. #definition[ - Let $M$ be a #lrm. A *submodule* $N$ of $M$ satisfies: - - $N$ is a subgroup of $(M, +)$; - - $r n in N$ for all $r in R$ and $n in N$. + Let $M$ be a #lrm. A *submodule* $N$ of $M$ satisfies: + - $N$ is a subgroup of $(M, +)$; + - $r n in N$ for all $r in R$ and $n in N$. - In this case we denote $N subset M$. + In this case we denote $N subset M$. ] #definition[ - Let $R$ be a ring. Let $M_1, M_2$ be left $R$-modules. A map $phi : M_1 -> M_2$ is a *module homomorphism* if it satisfies: - $ - phi(x + y) &= phi(x) + phi(y), \ - phi(r x) &= r phi(x). - $ - for all $x, y in M_1$ and $r in R$. + Let $R$ be a ring. Let $M_1, M_2$ be left $R$-modules. A map $phi : M_1 -> M_2$ is a *module homomorphism* if it satisfies: + $ + phi(x + y) &= phi(x) + phi(y), \ + phi(r x) &= r phi(x). + $ + for all $x, y in M_1$ and $r in R$. ] // Compositions of module homomorphisms are still module homomorphisms, and hence we obtain the category of left $R$-modules, denoted as $RMod$. Similarly, we have the category of right $R$-modules, denoted as $ModR$. // For all $M, M' in RMod$, we see that $ homr(M, M')$ is an abelian group. -// [Remark 6.1.8 Li]. +// [Remark 6.1.8 Li]. // Also, $endr(M)$ is a ring, where the multiplication is defined as composition. Therefore any right $R$-module is also a left $D := endr(M)$-module. // [p. 205, Li]. #definition[ - The *kernel* of a module homomorphism $phi : M_1 -> M_2$ is defined as - $ Ker(phi) := {x in M_1 : phi(x) = 0}. $ - The *image* of $phi$ is defined as - $ IM(phi) := {phi(x) : x in M_1}. $ + The *kernel* of a module homomorphism $phi : M_1 -> M_2$ is defined as + $ Ker(phi) := {x in M_1 : phi(x) = 0}. $ + The *image* of $phi$ is defined as + $ IM(phi) := {phi(x) : x in M_1}. $ - It can be shown that $Ker(phi) subset M_1$ and $IM(phi) subset M_2$. + It can be shown that $Ker(phi) subset M_1$ and $IM(phi) subset M_2$. ] #definition[ - Let $N subset M$ be #lrms. Define a #lrm on the quotient group $M over N$ with - $ r(x + N) = r x + N $ - for all $r in R$ and $x in M$. - Then the *quotient map* $M -> M over N$ is a module homomorphism and $M over N$ is - a *quotient module*. + Let $N subset M$ be #lrms. Define a #lrm on the quotient group $M over N$ with + $ r(x + N) = r x + N $ + for all $r in R$ and $x in M$. + Then the *quotient map* $M -> M over N$ is a module homomorphism and $M over N$ is + a *quotient module*. ] #definition[ - Let $X$ be a set. The *free module* with basis $X$ is defined as $ R^(ds X) = plus.circle.big_(x in X) R x. $ + Let $X$ be a set. The *free module* with basis $X$ is defined as $ R^(ds X) = plus.circle.big_(x in X) R x. $ - We have the inclusion map $i: X -> R^(ds X)$ between sets: $ i(x) = 1_R dot x. $ + We have the inclusion map $i: X -> R^(ds X)$ between sets: $ i(x) = 1_R dot x. $ - An element $m in R^(ds X) $ can be written as - $ m = sum_(x in X) a_x x, $ - where only finitely many $a_x in R$ are non-zero. + An element $m in R^(ds X) $ can be written as + $ m = sum_(x in X) a_x x, $ + where only finitely many $a_x in R$ are non-zero. ] #proposition[ - For any $R$-module $M$ and map between sets $phi.alt: X -> M$, there exists a unique module homomorphism $phi : R^(ds X) -> M$ that make the following commute: - - // #align(center,image("../imgs/2023-10-28-21-16-04.png",width:30%)) - // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAA0QBfU9TXfIRQBGclVqMWbAEoA9ABQAPCACcABOwCU3XiAzY8BIqOHj6zVohABZbuJhQA5vCKgAZiogBbJGRA4IJGEed08fRD8ApAAmanMpKzQACywAOkYcHVDvIOooxFiQBiwwSxAoOjgkhxA4yTKYRSw4HDgAQjU1Oy4gA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$X$]), - node((0, 1), [$R^(xor X)$]), - node((1, 1), [$M$]), - arr((0, 0), (0, 1), []), - arr((0, 0), (1, 1), [$phi.alt$]), - arr((0, 1), (1, 1), [$exists! phi $], "dashed"), -)) + For any $R$-module $M$ and map between sets $phi.alt: X -> M$, there exists a unique module homomorphism $phi : R^(ds X) -> M$ that make the following commute: + + // #align(center,image("../imgs/2023-10-28-21-16-04.png",width:30%)) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAA0QBfU9TXfIRQBGclVqMWbAEoA9ABQAPCACcABOwCU3XiAzY8BIqOHj6zVohABZbuJhQA5vCKgAZiogBbJGRA4IJGEed08fRD8ApAAmanMpKzQACywAOkYcHVDvIOooxFiQBiwwSxAoOjgkhxA4yTKYRSw4HDgAQjU1Oy4gA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$X$]), + node((0, 1), [$R^(xor X)$]), + node((1, 1), [$M$]), + arr((0, 0), (0, 1), []), + arr((0, 0), (1, 1), [$phi.alt$]), + arr((0, 1), (1, 1), [$exists! phi$], "dashed"), + ), + ) ] #definition[ - Let $X$ be a subset of $R$-module $M$ and let $i: X->M$ be the inclusion map. We have the corresponding map $sigma: R^(ds X) -> M$. We say - - $X$ is *linear independent* or *free* if $sigma$ is injective and $X$ is *linear dependent* otherwise; - - $X$ spans or generates $M$ if $sigma$ is surjective, in which case $X$ is a *generating set* of $M$. A module with a finite generating subset is called a *finitely generated module*. + Let $X$ be a subset of $R$-module $M$ and let $i: X->M$ be the inclusion map. We have the corresponding map $sigma: R^(ds X) -> M$. We say + - $X$ is *linear independent* or *free* if $sigma$ is injective and $X$ is *linear dependent* otherwise; + - $X$ spans or generates $M$ if $sigma$ is surjective, in which case $X$ is a *generating set* of $M$. A module with a finite generating subset is called a *finitely generated module*. - A linear independent generating subset of $M$ is called a *basis* of $M$, and a module with a basis is called a *free module*. - // #align(center,image("imgs/2023-10-28-21-19-38.png",width:100%)) + A linear independent generating subset of $M$ is called a *basis* of $M$, and a module with a basis is called a *free module*. + // #align(center,image("imgs/2023-10-28-21-19-38.png",width:100%)) ] #corollary[ - Any $R$-module $M$ is isomorphic to a quotient of a free module. + Any $R$-module $M$ is isomorphic to a quotient of a free module. ] - + // #proof[ -// Take some subset $X$ of $M$ and inclusion map $i : X -> M$, we have the corresponding homomorphism $sigma: R^(ds X) -> M$ with $im(sigma) iso R^(ds X) over ker(sigma)$. If we take $X = M$ (or any generating set of $M$), then $im(sigma) = M$. +// Take some subset $X$ of $M$ and inclusion map $i : X -> M$, we have the corresponding homomorphism $sigma: R^(ds X) -> M$ with $im(sigma) iso R^(ds X) over ker(sigma)$. If we take $X = M$ (or any generating set of $M$), then $im(sigma) = M$. // ] // #remark[ @@ -114,9 +119,9 @@ // ] #proposition[ - Any submodule of a free module over a PID is free. + Any submodule of a free module over a PID is free. ] - + // #proof[ // TODO // ] @@ -170,11 +175,11 @@ // We have maps of $G$-sets that preserve the action of $G$. We also have homomorphism of modules (linear transformation). Notice that for a left module, a homomorphism $f: M-> N$ of modules should be written on the right: $m f in N$ so that $(r m) f = r (m f)$. -// We have subgroups. We also have subrings. Normal subgroups; ideals. But we have left, right and 2-sided ideals. A 2-sided ideal is a kernel of homomorphism of rings. +// We have subgroups. We also have subrings. Normal subgroups; ideals. But we have left, right and 2-sided ideals. A 2-sided ideal is a kernel of homomorphism of rings. // #definition[An ideal is closed under addition and for any $i in I, r in R$, we have $i r , r i in I$.] -// We also have left or right submodules. A left ideal is just a submodule of $R$ considered as a left module. +// We also have left or right submodules. A left ideal is just a submodule of $R$ considered as a left module. // We have symmteric groups $S_n$. We also have symmetric groups of free modules $R^n = R plus.circle R plus.circle ...$ and the set of linear transformations of $R^n$ which is $M_n (R)$, $n times n$ matrices. diff --git a/ha/1-cat.typ b/ha/1-cat.typ index a55c0d6..4de32d9 100644 --- a/ha/1-cat.typ +++ b/ha/1-cat.typ @@ -9,8 +9,8 @@ This section is a crash course in category theory. The reader is advised to take == Basic Definitions #definition[ - A *category* $cal(C)$ consists of - - A collection of *objects* $ob cC$ and + A *category* $cal(C)$ consists of + - A collection of *objects* $ob cC$ and - For every pair of objects $X, Y in ob cC$, a collection of *morphisms* $hom_cC (X, Y)$, where for $f in Hom(C)(X, Y)$ we denote $f: X->Y$ or $X ->^f Y$ and say $X$ is the *domain* of $f$ and $Y$ is the *codomain* of $f$; such that - For every object $X$, there exists an *identity morphism* $id_X in Hom(C) (X, X)$; @@ -18,7 +18,7 @@ This section is a crash course in category theory. The reader is advised to take subject to the axioms: - For every morphism $f : X -> Y$, we have $id_y oo f = f oo id_X = f$; - - For every triple of morphisms $f : X -> Y$, $g : Y -> Z$ and $h: Z -> W$, we have $(h oo g) oo f = h oo (g oo f)$, which we simply denote as $h oo g oo f$. + - For every triple of morphisms $f : X -> Y$, $g : Y -> Z$ and $h: Z -> W$, we have $(h oo g) oo f = h oo (g oo f)$, which we simply denote as $h oo g oo f$. ] #notation[ @@ -26,13 +26,13 @@ This section is a crash course in category theory. The reader is advised to take ] #definition[ - A category $cC$ *locally small* if for every $X, Y in cC$, $Hom(C) (X, Y)$ is a set. A category $cC$ is *small* if it is locally small and further $ob cC$ is a set. + A category $cC$ *locally small* if for every $X, Y in cC$, $Hom(C) (X, Y)$ is a set. A category $cC$ is *small* if it is locally small and further $ob cC$ is a set. ] // #remark[ - These definitions above are to avoid set-theoretic size issues, which we shall not delve into. They are employed when necessary to ensure that we do not run into paradoxes. +These definitions above are to avoid set-theoretic size issues, which we shall not delve into. They are employed when necessary to ensure that we do not run into paradoxes. // ] #example[ - A *discrete category* $cC$ is one where + A *discrete category* $cC$ is one where $ hom_cC (X, Y) = cases({id_X} quad &X = Y\,, nothing quad &X != Y.) $ @@ -43,7 +43,7 @@ This section is a crash course in category theory. The reader is advised to take ] // #remark[ - If you have never heard of monoids before, the above can be seen as the definition of a monoid. +If you have never heard of monoids before, the above can be seen as the definition of a monoid. In general, a category is a "generalised" monoid because in a category you can only compose two morphisms $f, g$ in certain situations (namely, when the codomain of $f$ and the domain of $g$ match), whereas composition is allowed for any two elements of a monoid. // ] @@ -51,12 +51,12 @@ In general, a category is a "generalised" monoid because in a category you can o - The category $Set$ has objects which are sets and morphisms which are functions between sets. Notice in category theory we avoid talking directly about elements of a set, because a set, which is an object of the category $Set$, is "atomic" or inseparable. - Let $k$ be a field. The category $veck$ has objects which are vector spaces over $k$ and morphisms which are linear transformations between vector spaces. We often denote $hom_veck$ as $homk$. In particular, for any $V, W in veck$, $homk (V, W)$ is also a vector space. - Let $R$ be a ring. The category $RMod$ has objects which are #lrms and morphisms which are module homomorphisms. Similarly, we have the category $ModR$ of #rrms. We often denote $hom_RMod$ or $hom_ModR$ as $homr$; it should be clear from the context which one we are referring to. - - The category $Grp$ has objects which are groups and morphisms which are group homomorphisms. Similarly, we have the category $Ab$ of abelian groups. + - The category $Grp$ has objects which are groups and morphisms which are group homomorphisms. Similarly, we have the category $Ab$ of abelian groups. // $veck, Set, $ left/right $R$-modules, bimodules, topological spaces, etc. ] #definition[ - Let $cC, cD$ be categories. The *product category* $cC times cD$ consists of objects $(C, D)$ for $C in cC$ and $D in cD$, and morphisms $(f, g) : (C_1 ,D_1 )-> (C_2, D_2)$ for $f : C_1 -> C_2$ and $g: D_1 -> D_2$. + Let $cC, cD$ be categories. The *product category* $cC times cD$ consists of objects $(C, D)$ for $C in cC$ and $D in cD$, and morphisms $(f, g) : (C_1 ,D_1 )-> (C_2, D_2)$ for $f : C_1 -> C_2$ and $g: D_1 -> D_2$. ] #definition[ @@ -65,24 +65,24 @@ In general, a category is a "generalised" monoid because in a category you can o ] #note[ - $f: B-> C$ is monic if and only if the induced map $(f oo -) : hom_cC (A, B) -> Hom(C) (A, C)$ is injective for any $A$, and $f : B-> C$ is epic if and only if the induced map $(- oo f) : Hom(C) (C, D) -> Hom(C) (B, D)$ is injective for any $D$. + $f: B-> C$ is monic if and only if the induced map $(f oo -) : hom_cC (A, B) -> Hom(C) (A, C)$ is injective for any $A$, and $f : B-> C$ is epic if and only if the induced map $(- oo f) : Hom(C) (C, D) -> Hom(C) (B, D)$ is injective for any $D$. ] #example[ In $Set$, a monomorphism is equivalent to a one-to-one map and an epimorphism is equivalent to an onto map. ] #example[ - In the category of commutative rings, $ZZ -> QQ$ is both monic and epic. Note that if two maps agree on $ZZ->R$, they must also agree on $QQ -> R$, since a ring homomorphism $f: QQ -> R$ is uniquely determined by $f(1)$. + In the category of commutative rings, $ZZ -> QQ$ is both monic and epic. Note that if two maps agree on $ZZ->R$, they must also agree on $QQ -> R$, since a ring homomorphism $f: QQ -> R$ is uniquely determined by $f(1)$. ] #example[ - In the category of commutative rings, for any ring $R$ and its ideal $I$, $R -> R\/I$ is epic. + In the category of commutative rings, for any ring $R$ and its ideal $I$, $R -> R\/I$ is epic. ] // [Any localisation in ring is epic? #TODO] == Categories with a Zero Object #definition[ - An *initial object* $I$ of category $cC$ is an object such that for any $A in ob cC$, there exists a unique morphism $I -> A$. - + An *initial object* $I$ of category $cC$ is an object such that for any $A in ob cC$, there exists a unique morphism $I -> A$. + A *final object* $T$ is an object such that for any $A in ob cC$ there exists a unique morphism $A -> T$. ] @@ -102,19 +102,22 @@ In general, a category is a "generalised" monoid because in a category you can o If there is a zero object in the category, then for any $B, C in cC$ we have a *zero morphism* $0 in hom_cC (B, C)$ which factors through the zero object. // https://tikzcd-typst-editor.pages.dev/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRACEQBfU9TXfIRQAmclVqMWbAMLdeIDNjwEiARlKrx9Zq0Qhi3cTCgBzeEVAAzAE4QAtkjIgcEJKp5XbDxE5dJRIAxYYLogUHRwABbGcp72-tR+iOqBwaHhUTFcFFxAA -// #image("imgs/4.png", width: 30%) + // #image("imgs/4.png", width: 30%) ] - + #proof[ - #align(center, commutative-diagram( - node-padding: (40pt, 40pt), - node((0, 0), [$B$]), - node((0, 2), [$C$]), - node((1, 1), [$0$]), - arr((0, 0), (0, 2), [$0$]), - arr((0, 0), (1, 1), [$exists!$], "dashed"), - arr((1, 1), (0, 2), [$exists!$], "dashed"), -)) + #align( + center, + commutative-diagram( + node-padding: (40pt, 40pt), + node((0, 0), [$B$]), + node((0, 2), [$C$]), + node((1, 1), [$0$]), + arr((0, 0), (0, 2), [$0$]), + arr((0, 0), (1, 1), [$exists!$], "dashed"), + arr((1, 1), (0, 2), [$exists!$], "dashed"), + ), + ) It is clear from the commutative diagram. ] #notation[ @@ -127,48 +130,51 @@ In general, a category is a "generalised" monoid because in a category you can o #definition[ In a category with a zero object, a *kernel* of $f: B->C$ is a morphism $i: A-> B$ such that $f compose i = 0$ in a universal way. That is, for any $i' : A'-> B$ such that $f compose i' = 0$, there exists a unique morphism $h : A' -> A$ such that $i' = i oo h$. We denote $i = ker(f)$. Diagrammatically, -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAEEQBfU9TXfIRQAmUsKq1GLNgCFuvEBmx4CRAMzkJ9Zq0QgAwvL7LBRAAybq26XvYByI4v4qhyUWa1TdIM9wkwoAHN4IlAAMwAnCABbJDIQHAgkUUkdNjDHSJikCwSkxHjrbyxMqNjEDTyc6gYsMG8oOjgACwCQKy82GAAPLDgcOAACAEJS7IrqRLiOtL0sBx5wsuqqxAAWRZAs8rXJ-OFN7aRKqfWuCi4gA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((1, 1), [$A$]), - node((2, 2), [$B$]), - node((1, 3), [$C$]), - node((1, 0), [$A'$]), - node((0, 2), [$0$]), - arr((2, 2), (1, 3), [$f$]), - arr((1, 1), (2, 2), [$i$]), - arr((1, 0), (1, 1), [$exists !$], "dashed"), - arr((1, 0), (2, 2), [$i'$], label-pos: -1em), - arr((1, 1), (0, 2), []), - arr((0, 2), (1, 3), []), - arr((1, 0), (0, 2), []), -)) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAEEQBfU9TXfIRQAmUsKq1GLNgCFuvEBmx4CRAMzkJ9Zq0QgAwvL7LBRAAybq26XvYByI4v4qhyUWa1TdIM9wkwoAHN4IlAAMwAnCABbJDIQHAgkUUkdNjDHSJikCwSkxHjrbyxMqNjEDTyc6gYsMG8oOjgACwCQKy82GAAPLDgcOAACAEJS7IrqRLiOtL0sBx5wsuqqxAAWRZAs8rXJ-OFN7aRKqfWuCi4gA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((1, 1), [$A$]), + node((2, 2), [$B$]), + node((1, 3), [$C$]), + node((1, 0), [$A'$]), + node((0, 2), [$0$]), + arr((2, 2), (1, 3), [$f$]), + arr((1, 1), (2, 2), [$i$]), + arr((1, 0), (1, 1), [$exists !$], "dashed"), + arr((1, 0), (2, 2), [$i'$], label-pos: -1em), + arr((1, 1), (0, 2), []), + arr((0, 2), (1, 3), []), + arr((1, 0), (0, 2), []), + ), + ) // #v(20pt) // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAEEQBfU9TXfIRQBGclVqMWbAELdeIDNjwEiAJjHV6zVohABhOXyWCiZYeK1Td7AOTdxMKAHN4RUADMAThAC2SUSA4EEjqEtps7oYgXr5IZIHBiAGWOiBYUTF+iPFBIdQARjBgUEgALACcmpKpxBneWQDM1LnZ1AxYYKlQdHAAFo4gVeG6MAAeWHA4cAAEAIR1sYhNCf5DVml2PB71SMstoSlstVwUXEA -// #align(center, commutative-diagram( -// node-padding: (40pt, 40pt), -// node((0, 0), [$A$]), -// node((0, 1), [$B$]), -// node((0, 2), [$C$]), -// node((1, 0), [$A'$]), -// arr((0, 1), (0, 2), [$f$]), -// arr((0, 0), (0, 1), [$i$]), -// arr((0, 0), (0, 2), [$0$], curve: 35deg), -// arr((1, 0), (0, 0), [$exists !$], label-pos: 1.5em, "dashed"), -// arr((1, 0), (0, 1), [$i'$]), -// arr((1, 0), (0, 2), [$0$], label-pos: -1em), -// )) + // #align(center, commutative-diagram( + // node-padding: (40pt, 40pt), + // node((0, 0), [$A$]), + // node((0, 1), [$B$]), + // node((0, 2), [$C$]), + // node((1, 0), [$A'$]), + // arr((0, 1), (0, 2), [$f$]), + // arr((0, 0), (0, 1), [$i$]), + // arr((0, 0), (0, 2), [$0$], curve: 35deg), + // arr((1, 0), (0, 0), [$exists !$], label-pos: 1.5em, "dashed"), + // arr((1, 0), (0, 1), [$i'$]), + // arr((1, 0), (0, 2), [$0$], label-pos: -1em), + // )) // #image("imgs/5.png", width: 30%) ] #notation[ - Sometimes, people might also say the object $A$ in the above definition is the kernel of $f$ when the morphism $i$ is clear, and write $A = ker(f)$. However, this easily leads to confusion later on, so this note adopts the following non-standard notation: we write $A = Ker(f)$ (with a capital K) when we mean the object and $i = ker(f)$ when we mean the morphism. Hence, we would have + Sometimes, people might also say the object $A$ in the above definition is the kernel of $f$ when the morphism $i$ is clear, and write $A = ker(f)$. However, this easily leads to confusion later on, so this note adopts the following non-standard notation: we write $A = Ker(f)$ (with a capital K) when we mean the object and $i = ker(f)$ when we mean the morphism. Hence, we would have $ Ker(f) -->^(ker(f)) B ->^f C $ such that $f oo ker(f) = 0$ in a universal way. - Similar notations will be used for concepts we define later. + Similar notations will be used for concepts we define later. ] - + // #example[ // In $Set$, a kernel of $f: X -> Y$ is the inclusion map @@ -182,7 +188,7 @@ In general, a category is a "generalised" monoid because in a category you can o In $veck$, kernels are kernels. ] #theorem[ - A kernel is a monomorphism. + A kernel is a monomorphism. ] // (This indicates that $A$ is the "biggest" subobject (to be defined!) of $B$ to be mapped to zero by $f$.) @@ -202,7 +208,7 @@ In general, a category is a "generalised" monoid because in a category you can o ] #definition[ - The *opposite category* of $cC$ is a category $cC^op$ where $ob cC^op = ob cC$ and $hom_(cC^op)(x, y) = hom_cC (y, x)$. + The *opposite category* of $cC$ is a category $cC^op$ where $ob cC^op = ob cC$ and $hom_(cC^op)(x, y) = hom_cC (y, x)$. ] #proposition[A morphism $f: B->C$ is monic in $cC$ if and only if $f^op : C -> B$ is epic in $cC^op$.] @@ -212,38 +218,46 @@ We say that "monic" and "epic" are *dual* concepts. Similarly, "initial objects" == Products and Coproducts #definition[ - Let ${C_i | i in I}$ be a family of objects, then their *product* $product_(i in I) C_i$ is an object such that there exist $pi_j : product_(i in I) C_i -> C_j$ for all $j in I$ in a universal way. That is, for any object $D$ with morphisms $g_j : D -> C_j$ for all $j in I$, there exists a unique morphism $D -> product_(i in I) C_i$. -// #image("imgs/6.png", width: 50%) -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRABEQBfU9TXfIRQBGclVqMWbNACdoTAMY4A+gAosAAixgNASQCUGgMLKs3XiAzY8BIqOHj6zVohAmAVt3EwoAc3hEoABmcgC2SGQgOBBIoiAM2i4gUHRwABY+5sFhEdTRSABM1E5Srr7KnjzZEOGIcfmIRRLO0lgVXlxAA -#align(center, commutative-diagram( - node((0, 0), [$D$]), - node((0, 1), [$product_(i in I) C_i$]), - node((1, 1), [$C_j$]), - arr((0, 0), (0, 1), [$exists !$], "dashed"), - arr((0, 0), (1, 1), [$g_j$]), - arr((0, 1), (1, 1), [$pi_j$]), -)) - - The *coproduct* of ${C_i | i in I}$ is defined as their product in the opposite category $C^op$. + Let ${C_i | i in I}$ be a family of objects, then their *product* $product_(i in I) C_i$ is an object such that there exist $pi_j : product_(i in I) C_i -> C_j$ for all $j in I$ in a universal way. That is, for any object $D$ with morphisms $g_j : D -> C_j$ for all $j in I$, there exists a unique morphism $D -> product_(i in I) C_i$. + // #image("imgs/6.png", width: 50%) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRABEQBfU9TXfIRQBGclVqMWbNACdoTAMY4A+gAosAAixgNASQCUGgMLKs3XiAzY8BIqOHj6zVohAmAVt3EwoAc3hEoABmcgC2SGQgOBBIoiAM2i4gUHRwABY+5sFhEdTRSABM1E5Srr7KnjzZEOGIcfmIRRLO0lgVXlxAA + #align( + center, + commutative-diagram( + node((0, 0), [$D$]), + node((0, 1), [$product_(i in I) C_i$]), + node((1, 1), [$C_j$]), + arr((0, 0), (0, 1), [$exists !$], "dashed"), + arr((0, 0), (1, 1), [$g_j$]), + arr((0, 1), (1, 1), [$pi_j$]), + ), + ) + + The *coproduct* of ${C_i | i in I}$ is defined as their product in the opposite category $C^op$. // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRABEQBfU9TXfIRQBGclVqMWbNACdoTAMY4A+gAosAAixgNASQCUGgMLKs3XiAzY8BIqOHj6zVohAmAVt3EwoAc3hEoABmcgC2SKIgOBBIZCAM2i4gUHRwABY+5sFhSABM1NGx1E5SrkHKnjzZEOGI+VExiJElSVgVXlxAA -#align(center, commutative-diagram( - node((0, 0), [$D$]), - node((0, 1), [$product.co_(i in I) C_i$]), - node((1, 1), [$C_j$]), - arr((0, 1), (0, 0), label-pos: -1em, [$exists !$], "dashed"), - arr((1, 1), (0, 0), label-pos: -1em, [$f_j$]), - arr((1, 1), (0, 1), label-pos: -1em, [$i_j$]), -)) + #align( + center, + commutative-diagram( + node((0, 0), [$D$]), + node((0, 1), [$product.co_(i in I) C_i$]), + node((1, 1), [$C_j$]), + arr((0, 1), (0, 0), label-pos: -1em, [$exists !$], "dashed"), + arr((1, 1), (0, 0), label-pos: -1em, [$f_j$]), + arr((1, 1), (0, 1), label-pos: -1em, [$i_j$]), + ), + ) -// Products in $cC^op$ are coproducts $product.co_(i in I) C_i$: + // Products in $cC^op$ are coproducts $product.co_(i in I) C_i$: -// #image("imgs/7.png", width: 50%) + // #image("imgs/7.png", width: 50%) ] #example[ In $Set$, let ${X_i | i in I}$ be a family of sets. -$ product_(i in I) X_i = {(x_i)_(i in I) | x_i in X_i} $ and $product.co_(i in I) X_i$ is the disjoint union. + $ + product_(i in I) X_i = {(x_i)_(i in I) | x_i in X_i} + $ and $product.co_(i in I) X_i$ is the disjoint union. ] #remark[ @@ -255,18 +269,21 @@ $ product_(i in I) X_i = {(x_i)_(i in I) | x_i in X_i} $ and $product.co_(i in I ] #proof[ - For any $C_i$, there exists $pi_i : product C_i -> C_i$ satisfying the universal property. Define $phi: Hom(C) (A, product C_i) -> product Hom(C) (A, C_i)$ as - - $ f |-> (pi_i compose f)_i = (pi_1 compose f, ..., pi_n compose f). $ - #align(center, commutative-diagram( - node((0, 0), [$A$]), - node((0, 1), [$product C_i$]), - node((1, 1), [$C_i$]), - arr((0, 0), (0, 1), [$f$]), - arr((0, 0), (1, 1), [$g_i$]), - arr((0, 1), (1, 1), [$pi_i$]), - )) -Any $(g_i)_i in product Hom(C) (A, C_i)$ can be factorised as $(pi_i compose f')_i$ for some unique $f': A -> product C_i$ due to the universal property of the product. The existence of $f'$ ensures that $phi$ is surjective and the uniqueness of $f$ ensures injectivity. Thus $phi$ is a bijection. + For any $C_i$, there exists $pi_i : product C_i -> C_i$ satisfying the universal property. Define $phi: Hom(C) (A, product C_i) -> product Hom(C) (A, C_i)$ as + + $ f |-> (pi_i compose f)_i = (pi_1 compose f, ..., pi_n compose f). $ + #align( + center, + commutative-diagram( + node((0, 0), [$A$]), + node((0, 1), [$product C_i$]), + node((1, 1), [$C_i$]), + arr((0, 0), (0, 1), [$f$]), + arr((0, 0), (1, 1), [$g_i$]), + arr((0, 1), (1, 1), [$pi_i$]), + ), + ) + Any $(g_i)_i in product Hom(C) (A, C_i)$ can be factorised as $(pi_i compose f')_i$ for some unique $f': A -> product C_i$ due to the universal property of the product. The existence of $f'$ ensures that $phi$ is surjective and the uniqueness of $f$ ensures injectivity. Thus $phi$ is a bijection. // #image("imgs/8.png", width: 50%) ] @@ -275,14 +292,17 @@ Any $(g_i)_i in product Hom(C) (A, C_i)$ can be factorised as $(pi_i compose f') ] #proof[ This is similar to the above case: we just reverse all the arrows. - #align(center, commutative-diagram( - node((0, 0), [$A$]), - node((0, 1), [$product.co C_i$]), - node((1, 1), [$C_i$]), - arr((0, 1), (0, 0), label-pos: -1em, [$f$]), - arr((1, 1), (0, 0), label-pos: -1em, [$g_i$]), - arr((1, 1), (0, 1), label-pos: -1em, [$i_i$]), - )) + #align( + center, + commutative-diagram( + node((0, 0), [$A$]), + node((0, 1), [$product.co C_i$]), + node((1, 1), [$C_i$]), + arr((0, 1), (0, 0), label-pos: -1em, [$f$]), + arr((1, 1), (0, 0), label-pos: -1em, [$g_i$]), + arr((1, 1), (0, 1), label-pos: -1em, [$i_i$]), + ), + ) Notice the asymmetry here. It is not coproduct on the right hand side because it is still a tuple of arrows. ] @@ -297,56 +317,62 @@ Any $(g_i)_i in product Hom(C) (A, C_i)$ can be factorised as $(pi_i compose f') - #fw[For every pair objects $C_1, C_2 in cC$, a map of morphisms $ Hom(C) (C_1, C_2) -> Hom(D) (F(C_1), F(C_2)), $ ] subject to preserving morphism composition and identity morphisms. ] #definition[ - Now we can define $bd("Cat")$, the category of all (small) categories, where $ob bd("Cat")$ are small categories and $hom_Cat (cC, cD)$ are functors between $cC$ and $cD$. + Now we can define $bd("Cat")$, the category of all (small) categories, where $ob bd("Cat")$ are small categories and $hom_Cat (cC, cD)$ are functors between $cC$ and $cD$. ] #definition[ Suppose $F, G: cC -> cD$, then a *natural transformation* $alpha: F => G$ is defined by a collection of morphisms in $cD$ indexed by $x in ob cC$: $ {alpha_x: F(x) -> G(x)}_(x in ob cC), $ where the diagram commutes: // https://tikzcd-typst-editor.pages.dev/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRADEAKADwEoQAvqXSZc+QigCM5KrUYs2AcR78hI7HgJEyk2fWatEHHgHJVwkBg3ii03dX0Kjy7mcGyYUAObwioAGYAThAAtkhkIDgQSJJqIEGhMdRRSADMDvKGIMr+5gHBYYgRKYgATBkGbFy5ghYJheWR0YipAhQCQA -#align(center, commutative-diagram( - node((0, 0), [$F(x)$]), - node((0, 1), [$G(x)$]), - node((1, 0), [$F(x')$]), - node((1, 1), [$G(x')$]), - arr((0, 0), (0, 1), [$alpha_x$]), - arr((0, 1), (1, 1), label-pos: 1.5em, [$G(f)$]), - arr((0, 0), (1, 0), label-pos: 1.5em, [$F(f)$]), - arr((1, 0), (1, 1), [$alpha_x'$]), -)) -// #image("imgs/9.png", width: 50%) + #align( + center, + commutative-diagram( + node((0, 0), [$F(x)$]), + node((0, 1), [$G(x)$]), + node((1, 0), [$F(x')$]), + node((1, 1), [$G(x')$]), + arr((0, 0), (0, 1), [$alpha_x$]), + arr((0, 1), (1, 1), label-pos: 1.5em, [$G(f)$]), + arr((0, 0), (1, 0), label-pos: 1.5em, [$F(f)$]), + arr((1, 0), (1, 1), [$alpha_x'$]), + ), + ) + // #image("imgs/9.png", width: 50%) ] #definition[ -The *functor category* $"Fun"(cC, cD)$ is a category where the objects are functors $cC -> cD$ and the morphisms are natural transformations. + The *functor category* $"Fun"(cC, cD)$ is a category where the objects are functors $cC -> cD$ and the morphisms are natural transformations. ] #remark[ -In $Cat$, the hom-sets are not only sets but also categories, which means that $Cat$ is a *2-category*. + In $Cat$, the hom-sets are not only sets but also categories, which means that $Cat$ is a *2-category*. ] #endlec(2) -== Adjoint Functors +== Adjoint Functors #definition[ Functors $L : cA arrows.rl cB : R$ are *adjoint* if for all $A in cA, B in cB$, there exists a bijection $ tau_(A B) : Hom(B)(L(A), B) bij Hom(A) (A, R(B)) $ such that for any $f: A-> A'$ and $g: B-> B'$, the diagram commutes: -// #image("imgs/10.png") -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAAkIBbACgCEAlAAIeAGR4BBAOQDSQwQJABfUuky58hFAEZyVWoxZtOvQSPETZ8xSrXY8BIgCY91es1aIO3fsLGSrPhllVRAMe00iMm19dyMvEwCRaTkAJV8bUPCNRx1SGLdDT29eS2S0jJC7HK1kFwKDD2MfMskKoIEbfRgoAHN4IlAAMwAnbiQyEBwIJG1bEFHxxF0pmcQnecWuCepppABmQqavHDomAH1JKUEqhbHt5d21gBYj+Kmzy4lrW62kF1WSAArG9iqcLpJ5MFNvcDk8kM8YUtXoDEEClBQlEA -#align(center, commutative-diagram( - node-padding: (40pt, 40pt), - node((0, 0), [$Hom(B) (L(A'), B))$]), - node((0, 1), [$Hom(B) (L(A), B)$]), - node((0, 2), [$Hom(B) (L(A), B')$]), - node((1, 0), [$Hom(A) (A', R(B))$]), - node((1, 1), [$Hom(A) (A, R(B))$]), - node((1, 2), [$Hom(A) (A, R(B'))$]), - arr((0, 0), (0, 1), []), - arr((0, 1), (0, 2), []), - arr((0, 0), (1, 0), [$tau_(A'B)$]), - arr((0, 1), (1, 1), [$tau_(A B)$]), - arr((0, 2), (1, 2), [$tau_(A B')$]), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), []), -)) + // #image("imgs/10.png") + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAAkIBbACgCEAlAAIeAGR4BBAOQDSQwQJABfUuky58hFAEZyVWoxZtOvQSPETZ8xSrXY8BIgCY91es1aIO3fsLGSrPhllVRAMe00iMm19dyMvEwCRaTkAJV8bUPCNRx1SGLdDT29eS2S0jJC7HK1kFwKDD2MfMskKoIEbfRgoAHN4IlAAMwAnbiQyEBwIJG1bEFHxxF0pmcQnecWuCepppABmQqavHDomAH1JKUEqhbHt5d21gBYj+Kmzy4lrW62kF1WSAArG9iqcLpJ5MFNvcDk8kM8YUtXoDEEClBQlEA + #align( + center, + commutative-diagram( + node-padding: (40pt, 40pt), + node((0, 0), [$Hom(B) (L(A'), B))$]), + node((0, 1), [$Hom(B) (L(A), B)$]), + node((0, 2), [$Hom(B) (L(A), B')$]), + node((1, 0), [$Hom(A) (A', R(B))$]), + node((1, 1), [$Hom(A) (A, R(B))$]), + node((1, 2), [$Hom(A) (A, R(B'))$]), + arr((0, 0), (0, 1), []), + arr((0, 1), (0, 2), []), + arr((0, 0), (1, 0), [$tau_(A'B)$]), + arr((0, 1), (1, 1), [$tau_(A B)$]), + arr((0, 2), (1, 2), [$tau_(A B')$]), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), []), + ), + ) ] #remark[ @@ -356,129 +382,144 @@ In $Cat$, the hom-sets are not only sets but also categories, which means that $ #remark[ -Equivalently, $tau$ is a natural isomorphism between $Hom(B) (L(-), -)$ and $Hom(A) (-, R(-))$, both of which are functors $cA^op times cB -> Set$. Note that $A^op$ is used here because $Hom(A)(-, B)$ is a contravariant functor. + Equivalently, $tau$ is a natural isomorphism between $Hom(B) (L(-), -)$ and $Hom(A) (-, R(-))$, both of which are functors $cA^op times cB -> Set$. Note that $A^op$ is used here because $Hom(A)(-, B)$ is a contravariant functor. ] -// What's a product category? It's just pairs of objects and pairs of morphisms. +// What's a product category? It's just pairs of objects and pairs of morphisms. #example[ - $"Free"$ is the left adjoint of $"Forget"$. For example, we define the functors between $veck$ and $Set$: $ "Forget": veck &-> Set, \ (V, +, dot) &|-> V; $ $ "Free" : Set &-> veck, \ X &|-> k[X]. $ + $"Free"$ is the left adjoint of $"Forget"$. For example, we define the functors between $veck$ and $Set$: $ "Forget": veck &-> Set, \ (V, +, dot) &|-> V; $ $ + "Free" : Set &-> veck, \ X &|-> k[X]. + $ -Then we have: -$ hom_(veck)(k[X], W) &iso hom_(Set) (X, "Forget"(W)),\ -T &|-> T|_X, \ -"linearly extended" f &arrow.l.bar f. -$ + Then we have: + $ + hom_(veck)(k[X], W) &iso hom_(Set) (X, "Forget"(W)),\ + T &|-> T|_X, \ + "linearly extended" f &arrow.l.bar f. + $ -// Forget: $Grp -> Set$. Free: $Set -> Grp$. Also happens. + // Forget: $Grp -> Set$. Free: $Set -> Grp$. Also happens. ] == Equivalence of Categories #definition[ - In a category $cC$, objects $X, Y$ are *isomorphic* if there exists $f: X-> Y$ and $g: Y -> X$ such that $f compose g = id_Y$ and $g compose f = id_X$. We say that $f$ and $g$ are *isomorphisms*. + In a category $cC$, objects $X, Y$ are *isomorphic* if there exists $f: X-> Y$ and $g: Y -> X$ such that $f compose g = id_Y$ and $g compose f = id_X$. We say that $f$ and $g$ are *isomorphisms*. ] - In the functor category, an isomorphism (which is a natural transformation between functors) is often called a *natural isomorphism*. +In the functor category, an isomorphism (which is a natural transformation between functors) is often called a *natural isomorphism*. Consider $Cat$, then two small categories $cC$ and $cD$ are isomorphic if there are functors $F: cC-> cD$ and $G: cD-> cC$ such that $F compose G = Id$ and $G compose F = Id$. However, this rarely happens. We hence introduce the following weaker condition. #definition[ Two categories $cC$ and $cD$ are *equivalent* if there are functors $F: cC-> cD$ and $G: cD-> cC$ such that there exist natural isomorphisms $epsilon: F G => Id$ and $eta: Id => G F$. In this way $F(G(X)) iso X$ instead of $F(G(X))=X$. ] - It does not really matter here if we write $F G => Id$ or $Id => F G$ (the same for $G F$) because it is a natural isomorphism, but the above way of writing is to ensure consistency with an alternative definition of adjoint functors. +It does not really matter here if we write $F G => Id$ or $Id => F G$ (the same for $G F$) because it is a natural isomorphism, but the above way of writing is to ensure consistency with an alternative definition of adjoint functors. #remark[ Let $X, Y in Top$ and $f: X arrows.lr Y : g$ be continuous maps. If $f compose g tilde id $ and $g compose f tilde id$ then $X, Y$ are homotopy equivalent. Natural transformations are similar to the notion of homotopy. -] +] == Limits and Colimits #definition[ -Let $I$ be a small category and $F: I -> cA$ be a functor. Then $F$ is called a *diagram*. Denote $F(i) = F_i$ for all $i in I$. -A *cone* of $F$ is an object $C$ of $cA$ with morphisms ${f_i : C -> F_i}_(i in I)$, such that for any $alpha : j -> i $ in $I$, - -// #image("imgs/11.png", width: 30%) -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRABkQBfU9TXfIRRkAjFVqMWbAGIB9AFbdeIDNjwEiI0mOr1mrRCDlZu4mFADm8IqABmAJwgBbJGRA4ISLRP1s0WBSU7RxdENw8kACZdSQMVAJMeYOcvagjEaJ8pQ2kACkY0AAs6AEpTLiA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$C$]), - node((1, 0), [$F_j$]), - node((1, 1), [$F_i$]), - arr((0, 0), (1, 0), [$f_j$]), - arr((0, 0), (1, 1), [$f_i$]), - arr((1, 0), (1, 1), [$F(alpha)$]), -)) - -commutes. - -A limit is a universal cone; namely, $L$ is a *limit* of $F$ if it is a cone of $F$ with ${pi_i : L -> F_i}_(i in I)$ and there exists a unique morphism $h : C -> L$ for any cone $C$ of $F$ with ${f_i : C-> F_i}_(i in I)$ such that $f_i = pi_i oo h$ for all $i in I$. We denote $L = lim_I F$. - - -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBGAXVJADcBDAGwFcYkQAZEAX1PU1z5CKMgCZqdJq3YAxAPoArHnxAZseAkXKlxNBizaIQ8rMv7qhRMsQn7pRgMI8JMKAHN4RUADMAThABbJDIQHAgkbUkDdjQsRTMQP0DgmjCkUT0pQ1U4014ffyDESLTEDKj7YwAKJjQAC3oASgSkooBmVPDimgAjGDAoJABaNpC7bO94mkZ6PsYABQENYRBfLDc6nBbCpA7QrvK+gd2xrPZJvJVW3c6UkEYsMGyoejg61xBM6KMYAA8sOA4OAAAgAhM5uEA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((1, 0), [$L$]), - node((2, 0), [$F_j$]), - node((2, 1), [$F_i$]), - node((0, 0), [$C$]), - arr((1, 0), (2, 0), [$pi_j$]), - arr((1, 0), (2, 1), [$pi_i$]), - arr((2, 0), (2, 1), [$F(alpha)$]), - arr((0, 0), (2, 0), [$f_j$], curve: -30deg, label-pos: right), - arr((0, 0), (2, 1), [$f_i$], curve: 30deg), - arr((0, 0), (1, 0), [$exists !$], "dashed"), -)) - - -// (Any $L$ that makes the diagram commute is called a cone and being universal means that it's a final object in the category of cones.) - -// #image("imgs/12.png", width: 30%) - -// If such $L$ exists then we call it the limit of $F$ or $lim_cal(I) F$. + Let $I$ be a small category and $F: I -> cA$ be a functor. Then $F$ is called a *diagram*. Denote $F(i) = F_i$ for all $i in I$. + A *cone* of $F$ is an object $C$ of $cA$ with morphisms ${f_i : C -> F_i}_(i in I)$, such that for any $alpha : j -> i $ in $I$, + + // #image("imgs/11.png", width: 30%) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRABkQBfU9TXfIRRkAjFVqMWbAGIB9AFbdeIDNjwEiI0mOr1mrRCDlZu4mFADm8IqABmAJwgBbJGRA4ISLRP1s0WBSU7RxdENw8kACZdSQMVAJMeYOcvagjEaJ8pQ2kACkY0AAs6AEpTLiA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$C$]), + node((1, 0), [$F_j$]), + node((1, 1), [$F_i$]), + arr((0, 0), (1, 0), [$f_j$]), + arr((0, 0), (1, 1), [$f_i$]), + arr((1, 0), (1, 1), [$F(alpha)$]), + ), + ) + + commutes. + + A limit is a universal cone; namely, $L$ is a *limit* of $F$ if it is a cone of $F$ with ${pi_i : L -> F_i}_(i in I)$ and there exists a unique morphism $h : C -> L$ for any cone $C$ of $F$ with ${f_i : C-> F_i}_(i in I)$ such that $f_i = pi_i oo h$ for all $i in I$. We denote $L = lim_I F$. + + + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBGAXVJADcBDAGwFcYkQAZEAX1PU1z5CKMgCZqdJq3YAxAPoArHnxAZseAkXKlxNBizaIQ8rMv7qhRMsQn7pRgMI8JMKAHN4RUADMAThABbJDIQHAgkbUkDdjQsRTMQP0DgmjCkUT0pQ1U4014ffyDESLTEDKj7YwAKJjQAC3oASgSkooBmVPDimgAjGDAoJABaNpC7bO94mkZ6PsYABQENYRBfLDc6nBbCpA7QrvK+gd2xrPZJvJVW3c6UkEYsMGyoejg61xBM6KMYAA8sOA4OAAAgAhM5uEA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((1, 0), [$L$]), + node((2, 0), [$F_j$]), + node((2, 1), [$F_i$]), + node((0, 0), [$C$]), + arr((1, 0), (2, 0), [$pi_j$]), + arr((1, 0), (2, 1), [$pi_i$]), + arr((2, 0), (2, 1), [$F(alpha)$]), + arr((0, 0), (2, 0), [$f_j$], curve: -30deg, label-pos: right), + arr((0, 0), (2, 1), [$f_i$], curve: 30deg), + arr((0, 0), (1, 0), [$exists !$], "dashed"), + ), + ) + + + // (Any $L$ that makes the diagram commute is called a cone and being universal means that it's a final object in the category of cones.) + + // #image("imgs/12.png", width: 30%) + + // If such $L$ exists then we call it the limit of $F$ or $lim_cal(I) F$. ] #notation[ Sometimes we write $L = lim F_i$ when $I$ is clear from the context or is not important. ] -Dually, we define the colimit of $F$. This concept is important enough to be restated as follows. +Dually, we define the colimit of $F$. This concept is important enough to be restated as follows. #definition[ -Let $I$ be a small category and $F: I -> cA$ be a diagram. Denote $F(i) = F_i$ for all $i in I$. -A *cocone* of $F$ is an object $C$ of $cA$ with morphisms ${f_i : F_i -> C}_(i in I)$, such that for any $alpha : j -> i $ in $I$, -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRABkQBfU9TXfIRRkAjFVqMWbAGIB9AFbdeIDNjwEiI0mOr1mrRCDlZu4mFADm8IqABmAJwgBbJFpA4ISMhP1s0WBSU7RxdEACZqDy9dSQMVAJNqBjoAIxgGAAV+dSEQeywLAAscIJAHZ1dIz3CY30NpAApGNEK6AEpTLiA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$C$]), - node((1, 0), [$F_j$]), - node((1, 1), [$F_i$]), - arr((1, 0), (0, 0), [$f_j$], label-pos: 1.5em), - arr((1, 1), (0, 0), [$f_i$], label-pos: -1em), - arr((1, 0), (1, 1), [$F(alpha)$]), -)) -commutes. - -A colimit is a universal cocone; namely, $L$ is a *colimit* of $F$ if it is a cocone of $F$ with ${pi_i : F_i -> L}_(i in I)$ and there exists a unique morphism $h : L -> C$ for any cocone $C$ of $F$ with ${f_i : F_i -> C}_(i in I)$ such that $f_i = h oo pi_i $ for all $i in I$. We denote $L = colim_I F$. -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBGAXVJADcBDAGwFcYkQAZEAX1PU1z5CKMgCZqdJq3YAxAPoArHnxAZseAkXKlxNBizaIQ8rMv7qhRMsQn7pRgMI8JMKAHN4RUADMAThABbJG0QHAgkMkkDdjQsRTMQP0CkURowiL0pQ1U4014ffyDEEPTEVKj7YwAKJjQAC3oASgSkopLwxABmGgAjGDAoJE7Iu2zveJpGej7GAAUBDWEQRhhvHBbClLSO7pA+gaQAWmHM6KNxvJVWjNCdyawwbKh6ODrXEFPKmAAPLDgcOAAAgAhM5uEA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((1, 0), [$L$]), - node((2, 0), [$F_j$]), - node((2, 1), [$F_i$]), - node((0, 0), [$C$]), - arr((2, 0), (1, 0), [$pi_j$], label-pos: -1em), - arr((2, 1), (1, 0), [$pi_i$], label-pos: -1em), - arr((2, 0), (2, 1), [$F(alpha)$]), - arr((2, 0), (0, 0), [$f_j$], curve: 30deg, label-pos: 1em), - arr((2, 1), (0, 0), [$f_i$], label-pos: 1em, curve: -30deg), - arr((1, 0), (0, 0), [$exists !$], label-pos: -1em, "dashed"), -)) + Let $I$ be a small category and $F: I -> cA$ be a diagram. Denote $F(i) = F_i$ for all $i in I$. + A *cocone* of $F$ is an object $C$ of $cA$ with morphisms ${f_i : F_i -> C}_(i in I)$, such that for any $alpha : j -> i $ in $I$, + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRABkQBfU9TXfIRRkAjFVqMWbAGIB9AFbdeIDNjwEiI0mOr1mrRCDlZu4mFADm8IqABmAJwgBbJFpA4ISMhP1s0WBSU7RxdEACZqDy9dSQMVAJNqBjoAIxgGAAV+dSEQeywLAAscIJAHZ1dIz3CY30NpAApGNEK6AEpTLiA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$C$]), + node((1, 0), [$F_j$]), + node((1, 1), [$F_i$]), + arr((1, 0), (0, 0), [$f_j$], label-pos: 1.5em), + arr((1, 1), (0, 0), [$f_i$], label-pos: -1em), + arr((1, 0), (1, 1), [$F(alpha)$]), + ), + ) + commutes. + + A colimit is a universal cocone; namely, $L$ is a *colimit* of $F$ if it is a cocone of $F$ with ${pi_i : F_i -> L}_(i in I)$ and there exists a unique morphism $h : L -> C$ for any cocone $C$ of $F$ with ${f_i : F_i -> C}_(i in I)$ such that $f_i = h oo pi_i $ for all $i in I$. We denote $L = colim_I F$. + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBGAXVJADcBDAGwFcYkQAZEAX1PU1z5CKMgCZqdJq3YAxAPoArHnxAZseAkXKlxNBizaIQ8rMv7qhRMsQn7pRgMI8JMKAHN4RUADMAThABbJG0QHAgkMkkDdjQsRTMQP0CkURowiL0pQ1U4014ffyDEEPTEVKj7YwAKJjQAC3oASgSkopLwxABmGgAjGDAoJE7Iu2zveJpGej7GAAUBDWEQRhhvHBbClLSO7pA+gaQAWmHM6KNxvJVWjNCdyawwbKh6ODrXEFPKmAAPLDgcOAAAgAhM5uEA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((1, 0), [$L$]), + node((2, 0), [$F_j$]), + node((2, 1), [$F_i$]), + node((0, 0), [$C$]), + arr((2, 0), (1, 0), [$pi_j$], label-pos: -1em), + arr((2, 1), (1, 0), [$pi_i$], label-pos: -1em), + arr((2, 0), (2, 1), [$F(alpha)$]), + arr((2, 0), (0, 0), [$f_j$], curve: 30deg, label-pos: 1em), + arr((2, 1), (0, 0), [$f_i$], label-pos: 1em, curve: -30deg), + arr((1, 0), (0, 0), [$exists !$], label-pos: -1em, "dashed"), + ), + ) ] #proposition[ - If any limit or colimit exists, then it is unique up to a unique isomorphism. + If any limit or colimit exists, then it is unique up to a unique isomorphism. ] #notation[ @@ -488,50 +529,52 @@ A colimit is a universal cocone; namely, $L$ is a *colimit* of $F$ if it is a co #example[ If $I$ is a discrete category, then $lim_I F = product_(i in I) F_i$ is the product and $colim_I F = product.co_(i in I) F_i$ is the coproduct. ] -#example[Let $I = circle.filled arrows.rr circle.filled$ be the category with two objects and two parallel morphisms between them. Let $F : I-> cC$ be a functor which maps $I$ to -$ - A arrows.rr^f_g B -$ -in $cC$. Then when $lim_I F$ exists, we have two associated morphisms $h: lim_I F -> A$ and $h' : lim_I F -> B$, such that $f oo h = h' = g oo h$. We define the *equaliser* of $f$ and $g$ as this $h : lim_I F -> A$, denoted as $Eq(f, g)$. -We also dually define the *coequaliser* of $f$ and $g$ using $colim_I F$, denoted as $Coeq(f, g)$, such that $Coeq(f, g) oo f = Coeq(f, g) oo g$. +#example[Let $I = circle.filled arrows.rr circle.filled$ be the category with two objects and two parallel morphisms between them. Let $F : I-> cC$ be a functor which maps $I$ to + $ + A arrows.rr^f_g B + $ + in $cC$. Then when $lim_I F$ exists, we have two associated morphisms $h: lim_I F -> A$ and $h' : lim_I F -> B$, such that $f oo h = h' = g oo h$. We define the *equaliser* of $f$ and $g$ as this $h : lim_I F -> A$, denoted as $Eq(f, g)$. + We also dually define the *coequaliser* of $f$ and $g$ using $colim_I F$, denoted as $Coeq(f, g)$, such that $Coeq(f, g) oo f = Coeq(f, g) oo g$. Continuing with @ker-notation, we have $ - EQ(f, g) -->^(Eq(f, g)) A arrows.rr^f_g B -->^(Coeq(f, g)) COeq(f, g). -$ + EQ(f, g) -->^(Eq(f, g)) A arrows.rr^f_g B -->^(Coeq(f, g)) COeq(f, g). + $ ] #proposition[ In a category with a zero object, -$Eq(f, 0) = ker f $ and $Coeq (f, 0) = coker f$. + $Eq(f, 0) = ker f $ and $Coeq (f, 0) = coker f$. ] #proposition[ - An equaliser is a monomorphism. A coequaliser is an epimorphism. + An equaliser is a monomorphism. A coequaliser is an epimorphism. ] // #image("imgs/15.png") -// Coequaliser is just another direction. +// Coequaliser is just another direction. -#proposition[ - Let $L : cA arrows.lr cB : R$ be an adjunction. Then $ L(colim A_i) iso colim L (A_i), \ R(lim B_i) iso lim R(B_i). $ +#proposition[ + Let $L : cA arrows.lr cB : R$ be an adjunction. Then $ L(colim A_i) iso colim L (A_i), \ R(lim B_i) iso lim R(B_i). $ ] #proof[ Take $X in cB$. - $ hom_cB (L(colim A_i), X) iso hom_cA (colim A_i, R(X)) iso lim hom_cA (A_i, R(X)) \ iso lim hom_cB (L (A_i), X) iso hom_cB (colim L (A_i), X). $ + $ + hom_cB (L(colim A_i), X) iso hom_cA (colim A_i, R(X)) iso lim hom_cA (A_i, R(X)) \ iso lim hom_cB ( L (A_i), X ) iso hom_cB (colim L (A_i), X). + $ -If we move colimit out of $hom$, it becomes limit. (This has been seen for products and coproducts.) -We then apply Yoneda Lemma to show $L(colim A_i) $ and $colim L(A_i)$ are isomorphic. + If we move colimit out of $hom$, it becomes limit. (This has been seen for products and coproducts.) + We then apply Yoneda Lemma to show $L(colim A_i) $ and $colim L(A_i)$ are isomorphic. ] #remark[ -Left adjunction preserves colimits and right adjunction preserves limits. -In particular, left adjunction preserves cokernels and are right exact; right adjunction preserves kernels and are left exact (to be defined later). + Left adjunction preserves colimits and right adjunction preserves limits. + In particular, left adjunction preserves cokernels and are right exact; right adjunction preserves kernels and are left exact (to be defined later). ] #proposition[ @@ -542,27 +585,27 @@ In particular, left adjunction preserves cokernels and are right exact; right ad == Subobjects and Quotient Objects -@awodey[Section 5.1]. +@awodey[Section 5.1]. This section offers some new vocabulary to describe things we have already seen. #definition[ - Let $A$ be an object of category $cC$. A *subobject* of $A$ is a monomorphism $u : S -> A$. - + Let $A$ be an object of category $cC$. A *subobject* of $A$ is a monomorphism $u : S -> A$. + Give two subobjects $u : S-> A$ and $v : T->A$ of $A$, we define the relation of *inclusion* of subobjects by $u subset.eq v$ if and only if there exists $f : S -> T$ such that $u = v oo f$. Such $f$ is unique if it exists, since $v$ is a monomorphism. We say two subobjects $u : S-> A$ and $v : T->A$ of $A$ are *equivalent* if $u subset.eq v$ and $v subset.eq u$. ] #proposition[ - Let $u : S-> A$ and $v : T->A$ be two equivalent subobjects of $A$, then $S$ and $V$ are isomorphic objects. + Let $u : S-> A$ and $v : T->A$ be two equivalent subobjects of $A$, then $S$ and $V$ are isomorphic objects. ] #notation[ - Sometimes instead of saying $u: S-> A$ is a subobject of $A$, we may say $S$ is a subobject of $A$ when the monomorphism $u$ is clear from the context. + Sometimes instead of saying $u: S-> A$ is a subobject of $A$, we may say $S$ is a subobject of $A$ when the monomorphism $u$ is clear from the context. ] #proposition[ - In category $cC$, $i: A->B$ is the equaliser of $f, g: B-> C$ if and only if $i$ is the largest subobject of $B$ such that $f oo i = g oo i$. In particular, $i: A->B$ is the kernel of $f: B-> C$ if and only if $i$ is the largest subobject of $B$ such that $f oo i = 0$. + In category $cC$, $i: A->B$ is the equaliser of $f, g: B-> C$ if and only if $i$ is the largest subobject of $B$ such that $f oo i = g oo i$. In particular, $i: A->B$ is the kernel of $f: B-> C$ if and only if $i$ is the largest subobject of $B$ such that $f oo i = 0$. ] The dual concept of subobjects is *quotient objects*. diff --git a/ha/2-ab.typ b/ha/2-ab.typ index d019c54..a06d916 100644 --- a/ha/2-ab.typ +++ b/ha/2-ab.typ @@ -1,7 +1,7 @@ #import "../libs/template.typ": * -= Abelian Categories += Abelian Categories == $Ab$-enriched Categories @@ -10,25 +10,25 @@ We have seen, for example, that in $veck$ every hom-set not only is a collection #definition[ We call a category $cC$ *$Ab$-enriched* if every $Hom(C)(X, Y)$ is a abelian group, subject to bilinear morphism composition, namely $ (f + g) compose h = f compose h + g compose h quad "and" quad f compose (k + h) = f compose k + f compose h $ - for all $f, g : Y-> Z$ and $h, k : X->Y$. + for all $f, g : Y-> Z$ and $h, k : X->Y$. ] #remark[ -An equivalent way to put the bilinearity is the following: the composition mappings $ c_(X Y Z): Hom(C)(X, Y) times Hom(C)(Y, Z) -> Hom(C)(X, Z), quad (f, g) mapsto g oo f $ -are group homomorphisms in each variable @borceux[Definition 1.2.1]. + An equivalent way to put the bilinearity is the following: the composition mappings $ c_(X Y Z): Hom(C)(X, Y) times Hom(C)(Y, Z) -> Hom(C)(X, Z), quad (f, g) mapsto g oo f $ + are group homomorphisms in each variable @borceux[Definition 1.2.1]. ] -// The abelian group structure on hom-sets means that we are allowed to add two morphisms (as above) in $Hom(C)(X, Y)$. +// The abelian group structure on hom-sets means that we are allowed to add two morphisms (as above) in $Hom(C)(X, Y)$. #definition[ -Let $cC$ be an $Ab$-enriched category and $X, Y in cC$. The *zero morphism* $0 in Hom(C)(X, Y)$ is defined as the identity of the abelian group $Hom(C) (X, Y)$. + Let $cC$ be an $Ab$-enriched category and $X, Y in cC$. The *zero morphism* $0 in Hom(C)(X, Y)$ is defined as the identity of the abelian group $Hom(C) (X, Y)$. ] However, note that an $Ab$-enriched category needs not have a zero object, so this is actually a redefinition of a zero morphism from @zero-factor. We will see later that the two definitions match when the zero object is present. Since group homomorphisms map identity to identity, we have the following: #proposition[ - In an *Ab*-enriched category, let $X->^g Y->^f Z->^h W$. If $f$ is a zero morphism, then $f oo g$ and $h oo f$ are zero morphisms. + In an *Ab*-enriched category, let $X->^g Y->^f Z->^h W$. If $f$ is a zero morphism, then $f oo g$ and $h oo f$ are zero morphisms. ] - + #endlec(3) @@ -43,88 +43,96 @@ We can also define functors between $Ab$-enriched categories which respect the a If $cC$ is an *Ab*-enriched category, then so is $cC^op$. ] #proof[ - The definition is self-dual. Namely, reversing all the arrows in $cC$ breaks neither the group structure on hom-sets nor the bilinear morphism composition. + The definition is self-dual. Namely, reversing all the arrows in $cC$ breaks neither the group structure on hom-sets nor the bilinear morphism composition. ] - An $Ab$-enriched category needs not have a zero object. Nevertheless, once it has an initial or final object, it has a zero object, as shown below. +An $Ab$-enriched category needs not have a zero object. Nevertheless, once it has an initial or final object, it has a zero object, as shown below. #proposition[Let $*$ be an object in an *Ab*-enriched category, then the following are equivalent: -+ $*$ is a final object; -+ $*$ is an initial object; -+ $*$ is a zero object. + + $*$ is a final object; + + $*$ is an initial object; + + $*$ is a zero object. ] #proof[ (3) $=>$ (1) and (3) $=>$ (2) are obvious. We only prove (1) $=>$ (3), and (2) $=>$ (3) follows from duality. - Suppose $*$ is a terminal object and let $id_* : * -> *$ be the unique morphism in the abelian group of $Hom(C)(*, *)$, and so $id_* = 0$. -For any object $A$ and $f : * -> A$ (because $Hom(C)(*, A) $ contains at least the zero morphism), we have $ f = f compose id_* = f compose 0 = 0 in Hom(C)(*, A). $ -So there is a unique morphism from $*$ to $A$ and therefore $*$ is also initial. + Suppose $*$ is a terminal object and let $id_* : * -> *$ be the unique morphism in the abelian group of $Hom(C)(*, *)$, and so $id_* = 0$. + For any object $A$ and $f : * -> A$ (because $Hom(C)(*, A) $ contains at least the zero morphism), we have $ f = f compose id_* = f compose 0 = 0 in Hom(C)(*, A). $ + So there is a unique morphism from $*$ to $A$ and therefore $*$ is also initial. ] -// This also includes the case of the empty product and coprodut, namely any final object is initial and thus zero. +// This also includes the case of the empty product and coprodut, namely any final object is initial and thus zero. -In fact, a final object is an empty product and an initial object an empty coproduct, and the previous result can be generalised. +In fact, a final object is an empty product and an initial object an empty coproduct, and the previous result can be generalised. #proposition[ In an *Ab*-enriched category $cC$, let $X_1, X_2$ be two objects. Then + If the product $X_1 times X_2$ exists, then the coproduct $X_1 union.sq X_2$ also exists and is isomorphic to $X_1 times X_2$; + If the coproduct $X_1 union.sq X_2$ exists, then the product $X_1 times X_2$ also exists and is isomorphic to $X_1 union.sq X_2$. ] - + #proof[@notes[Proposition 3.7] -// , @li[Theorem 3.4.9] -and @borceux[Proposition 1.2.4]. We prove statement (1) and leave (2) to duality. - + // , @li[Theorem 3.4.9] + and @borceux[Proposition 1.2.4]. We prove statement (1) and leave (2) to duality. + Suppose the product $X_1 times X_2$ exists with projections $p_k colon X_1 times X_2 arrow.r X_k$. By definition of products, there are unique morphisms $i_k colon X_k arrow.r X_1 times X_2$ such that the following diagrams commute. -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAA0B9YgAjwFt4PLgCYQAX1LpMufIRQAGclVqMWbLsQlSQGbHgJERy6vWatEHTmMnT9cokoUqz6y5u13ZhlMZEu1CysbFRgoAHN4IlAAMwAnCH4kJRAcCCRiWxB4xOTqNKQRLJykxABmfPTEMlVzNiwoTgAKTQBKT2yE0orUquMQACMYMCgkMpTXIIUOkrHKvJAGLDAgqDo4AAswkFNAthgADyw4HDgAQhmupAAWecR+yfrGlut24qvEW96M6iGRsYme0s03euU+dxSSxWbDWm22uzqlkOx1OPAu4go4iAA -#align(center, commutative-diagram( - node-padding: (80pt, 50pt), - node((1, 1), [$X_1 times X_2$]), - node((1, 0), [$X_1$]), - node((1, 2), [$X_2$]), - node((0, 0), [$X_1$]), - node((2, 2), [$X_2$]), - arr((1, 1), (1, 0), [$p_1$], label-pos: -1em), - arr((1, 1), (1, 2), [$p_2$]), - arr((0, 0), (1, 0), [$id_(X_1)$]), - arr((0, 0), (1, 2), [$0$], curve: 30deg), - arr((0, 0), (1, 1), [$exists ! i_1$], label-pos: 1em, "dashed"), - arr((2, 2), (1, 2), [$id_(X_2)$], label-pos: -1.5em), - arr((2, 2), (1, 0), [$0$], label-pos: -1em, curve: 30deg), - arr((2, 2), (1, 1), [$exists ! i_2$], label-pos: -1em, "dashed"), -)) - -Explicitly, we have for $j, k in {1, 2}$, $ p_j oo i_k = cases(id_(X_j) quad &"if " j = k, 0 quad &"otherwise") $ -// #image("imgs/16.png") - -Then we have $ p_1 compose lr((i_1 p_1 plus i_2 p_2)) eq p_1 comma quad p_2 compose lr((i_1 p_1 plus i_2 p_2)) eq p_2. $ - -By definition of products, $id_(X_1 times X_2) $ is the unique morphism $h : X_1 times X_2 -> X_1 times X_2$ with $p_k compose h eq p_k$ for each $k$, so $i_1 p_1 plus i_2 p_2 eq id_(X_1 times X_2)$. We claim that -$ X_1 rgt(i_1) X_1 times X_2 lft(i_2) X_2 $ is a universal cocone and thus a coproduct. Suppose -$X_1 rgt(f_1) A lft(f_2) X_2 $ -is another cocone. Then we have a map -$ phi eq f_1 compose p_1 plus f_2 compose p_2 colon X_1 times X_2 arrow.r A $ -such that for $k = 1, 2$, $phi oo i_k = f_k $. -This gives a commutative diagram -// #align(center,image("../imgs/2023-10-29-11-34-35.png",width:30%)) -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAA0B9ARhAF9S6TLnyEUAJnJVajFmy7j+gkBmx4CRblOr1mrRBx4ACPAFt4RhUqFrRm0t2m65BgIL9pMKAHN4RUABmAE4QpkhkIDgQSJIyemxYPNYgwaFIWpHRiLHO+iCJigKBIWGIEVFIAMw6snkBSUUpJenUFYjVcS4pnIXKqaWxbR0MWGB5UHRwABZeIDXxBmhTWB58QA -#align(center, commutative-diagram( - node-padding: (60pt, 50pt), - node((0, 0), [$X_1$]), - node((0, 2), [$X_2$]), - node((0, 1), [$X_1 times X_2$]), - node((1, 1), [$A$]), - arr((0, 0), (0, 1), [$i_1$]), - arr((0, 2), (0, 1), [$i_2$], label-pos: right), - arr((0, 0), (1, 1), [$f_1$], label-pos: right), - arr((0, 2), (1, 1), [$f_2$]), - arr((0, 1), (1, 1), [$phi$], "dashed"), -)) -It remains to show that $phi$ is unique. To see this, note that for any -such $phi$ we have $ phi & eq phi compose id_(X_1 times X_2)\ + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAA0B9YgAjwFt4PLgCYQAX1LpMufIRQAGclVqMWbLsQlSQGbHgJERy6vWatEHTmMnT9cokoUqz6y5u13ZhlMZEu1CysbFRgoAHN4IlAAMwAnCH4kJRAcCCRiWxB4xOTqNKQRLJykxABmfPTEMlVzNiwoTgAKTQBKT2yE0orUquMQACMYMCgkMpTXIIUOkrHKvJAGLDAgqDo4AAswkFNAthgADyw4HDgAQhmupAAWecR+yfrGlut24qvEW96M6iGRsYme0s03euU+dxSSxWbDWm22uzqlkOx1OPAu4go4iAA + #align( + center, + commutative-diagram( + node-padding: (80pt, 50pt), + node((1, 1), [$X_1 times X_2$]), + node((1, 0), [$X_1$]), + node((1, 2), [$X_2$]), + node((0, 0), [$X_1$]), + node((2, 2), [$X_2$]), + arr((1, 1), (1, 0), [$p_1$], label-pos: -1em), + arr((1, 1), (1, 2), [$p_2$]), + arr((0, 0), (1, 0), [$id_(X_1)$]), + arr((0, 0), (1, 2), [$0$], curve: 30deg), + arr((0, 0), (1, 1), [$exists ! i_1$], label-pos: 1em, "dashed"), + arr((2, 2), (1, 2), [$id_(X_2)$], label-pos: -1.5em), + arr((2, 2), (1, 0), [$0$], label-pos: -1em, curve: 30deg), + arr((2, 2), (1, 1), [$exists ! i_2$], label-pos: -1em, "dashed"), + ), + ) + + Explicitly, we have for $j, k in {1, 2}$, $ p_j oo i_k = cases(id_(X_j) quad &"if " j = k, 0 quad &"otherwise") $ + // #image("imgs/16.png") + + Then we have $ p_1 compose lr((i_1 p_1 plus i_2 p_2)) eq p_1 comma quad p_2 compose lr((i_1 p_1 plus i_2 p_2)) eq p_2. $ + + By definition of products, $id_(X_1 times X_2) $ is the unique morphism $h : X_1 times X_2 -> X_1 times X_2$ with $p_k compose h eq p_k$ for each $k$, so $i_1 p_1 plus i_2 p_2 eq id_(X_1 times X_2)$. We claim that + $ + X_1 rgt(i_1) X_1 times X_2 lft(i_2) X_2 + $ is a universal cocone and thus a coproduct. Suppose + $X_1 rgt(f_1) A lft(f_2) X_2$ + is another cocone. Then we have a map + $ phi eq f_1 compose p_1 plus f_2 compose p_2 colon X_1 times X_2 arrow.r A $ + such that for $k = 1, 2$, $phi oo i_k = f_k $. + This gives a commutative diagram + // #align(center,image("../imgs/2023-10-29-11-34-35.png",width:30%)) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAA0B9ARhAF9S6TLnyEUAJnJVajFmy7j+gkBmx4CRblOr1mrRBx4ACPAFt4RhUqFrRm0t2m65BgIL9pMKAHN4RUABmAE4QpkhkIDgQSJIyemxYPNYgwaFIWpHRiLHO+iCJigKBIWGIEVFIAMw6snkBSUUpJenUFYjVcS4pnIXKqaWxbR0MWGB5UHRwABZeIDXxBmhTWB58QA + #align( + center, + commutative-diagram( + node-padding: (60pt, 50pt), + node((0, 0), [$X_1$]), + node((0, 2), [$X_2$]), + node((0, 1), [$X_1 times X_2$]), + node((1, 1), [$A$]), + arr((0, 0), (0, 1), [$i_1$]), + arr((0, 2), (0, 1), [$i_2$], label-pos: right), + arr((0, 0), (1, 1), [$f_1$], label-pos: right), + arr((0, 2), (1, 1), [$f_2$]), + arr((0, 1), (1, 1), [$phi$], "dashed"), + ), + ) + It remains to show that $phi$ is unique. To see this, note that for any + such $phi$ we have $ phi & eq phi compose id_(X_1 times X_2)\ & eq phi compose lr((i_1 p_1 plus i_2 p_2))\ & eq phi i_1 compose p_1 plus phi i_2 compose p_2\ & eq f_1 compose p_1 plus f_2 compose p_2 dot.basic $ @@ -132,9 +140,9 @@ such $phi$ we have $ phi & eq phi compose id_(X_1 times X_2)\ #definition[ - Let $cC$ be an $Ab$-enriched category and let $X_1, X_2 in cC$. The *biproduct* of $X_1$ and $X_2$ is an object $X_1 xor X_2$ with morphisms $p_k : X_1 xor X_2 -> X_k$ and $i_k : X_k -> X_1 xor X_2 $ for $k = 1, 2$, such that + Let $cC$ be an $Ab$-enriched category and let $X_1, X_2 in cC$. The *biproduct* of $X_1$ and $X_2$ is an object $X_1 xor X_2$ with morphisms $p_k : X_1 xor X_2 -> X_k$ and $i_k : X_k -> X_1 xor X_2 $ for $k = 1, 2$, such that - $p_k oo i_k = 1_(X_k)$; - - $p_j oo i_k = 0 $ for $k != j$; + - $p_j oo i_k = 0 $ for $k != j$; - $i_1 oo p_1 + i_2 oo p_2 = 1_(X_1 xor X_2)$. // - $X_1 xor X_2$ with $(p_1, p_2)$ is a product of $X_1$ and $X_2$; // - $X_1 xor X_2$ with $(i_1, i_2)$ is a coproduct of $X_1$ and $X_2$. @@ -142,20 +150,20 @@ such $phi$ we have $ phi & eq phi compose id_(X_1 times X_2)\ ] #corollary[ -In an $Ab$-enriched category, a binary biproduct is both a product and a coproduct, and a binary product (or a binary coproduct) is a biproduct. + In an $Ab$-enriched category, a binary biproduct is both a product and a coproduct, and a binary product (or a binary coproduct) is a biproduct. ] #proof[ This follows from the proof of @ab-product. ] -// We can show that $x union.sq y iso x times y$ and we use the notation of a biproduct $x ds y$ to denote both. +// We can show that $x union.sq y iso x times y$ and we use the notation of a biproduct $x ds y$ to denote both. #remark[This extends to all _finite_ products and coproducts but - does not extend to _infinite_ products or coproducts. + does not extend to _infinite_ products or coproducts. ] #lemma[ - In an $Ab$-enriched category, an additive functor preserves biproducts. + In an $Ab$-enriched category, an additive functor preserves biproducts. ] #proof[ @@ -165,12 +173,12 @@ In an $Ab$-enriched category, a binary biproduct is both a product and a coprodu Being able to add and subtract parallel morphisms means we can rephrase the definitions for a monomorphism and epimorphism. #proposition[ - In an $Ab$-enriched category $cC$, $f : B-> C$ is a monomorphism if and only if $f oo u = 0$ implies $u = 0$ for all $u : A -> B$. - Dually, $f : B -> C$ is an epimorphism if and only if $v oo f = 0$ implies $v = 0$ for all $v : C -> D$. + In an $Ab$-enriched category $cC$, $f : B-> C$ is a monomorphism if and only if $f oo u = 0$ implies $u = 0$ for all $u : A -> B$. + Dually, $f : B -> C$ is an epimorphism if and only if $v oo f = 0$ implies $v = 0$ for all $v : C -> D$. ] - + #proof[ - $f : B -> C$ is a monomorphism, if and only if $(f oo -) : hom_cC (A, B) -> Hom(C) (A, C)$ is injective for any $A$, if and only if $(f oo -)$ (as a $ZZ$-homomorphism) has kernel $0$. + $f : B -> C$ is a monomorphism, if and only if $(f oo -) : hom_cC (A, B) -> Hom(C) (A, C)$ is injective for any $A$, if and only if $(f oo -)$ (as a $ZZ$-homomorphism) has kernel $0$. ] == Additive Categories @@ -181,7 +189,7 @@ Inspired by @ab-zero and @ab-product, we naturally define the following: An $Ab$-enriched category $cC$ is *additive* if it has all finite biproducts, including the zero object. ] - Now we can reconcile the two definitions we have had for zero morphisms. +Now we can reconcile the two definitions we have had for zero morphisms. #proposition[ In an additive category $cC$, let $f: A->B$. Then $f$ is the identity of $Hom(C) (A, B)$ if and only if it can be factored as $A -> 0 -> B$. @@ -193,10 +201,10 @@ Inspired by @ab-zero and @ab-product, we naturally define the following: #proposition[ - In an additive category, if a monomorphism $i : A-> B$ is a zero morphism, then $A$ is the zero object. + In an additive category, if a monomorphism $i : A-> B$ is a zero morphism, then $A$ is the zero object. Dually, if an epimorphism $p : C -> D$ is a zero morphism, then $D$ is the zero object. ] - + #proof[ Take any $X$ and $u : X -> A$, we have $ @@ -206,38 +214,41 @@ Inspired by @ab-zero and @ab-product, we naturally define the following: Therefore there is a unique (zero) morphism from any $X$ to $A$, so $A$ is final and thus zero. ] -#proposition[@rotman[Proposition 5.89]. -Let $f colon A arrow.r B$ be a morphism in an additive -category $cal(C)$. If $ker f$ exists, then $f$ is monic if and only if $ker f eq 0$. -Dually, if $coker f$ exists, then $f$ is epic if and only $coker f eq 0$. +#proposition[@rotman[Proposition 5.89]. + Let $f colon A arrow.r B$ be a morphism in an additive + category $cal(C)$. If $ker f$ exists, then $f$ is monic if and only if $ker f eq 0$. + Dually, if $coker f$ exists, then $f$ is epic if and only $coker f eq 0$. ] #proof[ -Let $ker f$ be $i : K -> A$. Suppose $i = 0$. Since we know a kernel is a monomorphism, by @additive-mono-zero, $K = 0$. To show that $f$ is monic, take any $u : X -> A$ such that $f oo u = 0$. Then by the universal property of the kernel, there exists a unique morphism $h : X -> K$ such that $u = i oo h$. Thus $u$ factors through $K = 0$, so $u = 0$, proving $f$ is monic by @ab-mono. -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAGkQBfU9TXfIRQBGclVqMWbAILdeIDNjwEiAJjHV6zVohAAhOXyWCiZYeK1TdADW7iYUAObwioAGYAnCAFskAZmocCCQyEAYsMB0QKDo4AAsHEE1JKLjDEE8ff0DgxFEJbTYmdMzfPJykdQKrDJKvMtCgpHzLKKw7LiA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$K$]), - node((0, 1), [$A$]), - node((0, 2), [$B$]), - node((1, 0), [$X$]), - arr((1, 0), (0, 0), [$h$], label-pos: 1em, "dashed"), - arr((1, 0), (0, 1), [$u$], label-pos: -1em), - arr((0, 1), (0, 2), [$f$]), - arr((0, 0), (0, 1), [$i$]), -)) - -On the other hand, suppose $f$ is monic. Then $ker f = 0$ directly follows from @ab-mono. -// We refer to the diagrams in the definitions of kernel and -// cokernel. Let ker $u$ be $iota colon K arrow.r A$, and assume that -// $iota eq 0$. If $g colon X arrow.r A$ satisfies $u g eq 0$, then the -// universal property of kernel provides a morphism -// $theta colon X arrow.r K$ with $g eq iota theta eq 0$ \(because -// $iota eq 0$). Hence, $u$ is monic. Conversely, if $u$ is monic, -// consider $ K arrows.rr^iota_0 A arrow.r^u B dot.basic $ -// Since $u iota eq 0 eq u 0$, we have $iota eq 0$. The proof for -// epimorphisms and cokers is dual. -// #TODO modify + Let $ker f$ be $i : K -> A$. Suppose $i = 0$. Since we know a kernel is a monomorphism, by @additive-mono-zero, $K = 0$. To show that $f$ is monic, take any $u : X -> A$ such that $f oo u = 0$. Then by the universal property of the kernel, there exists a unique morphism $h : X -> K$ such that $u = i oo h$. Thus $u$ factors through $K = 0$, so $u = 0$, proving $f$ is monic by @ab-mono. + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAGkQBfU9TXfIRQBGclVqMWbAILdeIDNjwEiAJjHV6zVohAAhOXyWCiZYeK1TdADW7iYUAObwioAGYAnCAFskAZmocCCQyEAYsMB0QKDo4AAsHEE1JKLjDEE8ff0DgxFEJbTYmdMzfPJykdQKrDJKvMtCgpHzLKKw7LiA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$K$]), + node((0, 1), [$A$]), + node((0, 2), [$B$]), + node((1, 0), [$X$]), + arr((1, 0), (0, 0), [$h$], label-pos: 1em, "dashed"), + arr((1, 0), (0, 1), [$u$], label-pos: -1em), + arr((0, 1), (0, 2), [$f$]), + arr((0, 0), (0, 1), [$i$]), + ), + ) + + On the other hand, suppose $f$ is monic. Then $ker f = 0$ directly follows from @ab-mono. + // We refer to the diagrams in the definitions of kernel and + // cokernel. Let ker $u$ be $iota colon K arrow.r A$, and assume that + // $iota eq 0$. If $g colon X arrow.r A$ satisfies $u g eq 0$, then the + // universal property of kernel provides a morphism + // $theta colon X arrow.r K$ with $g eq iota theta eq 0$ \(because + // $iota eq 0$). Hence, $u$ is monic. Conversely, if $u$ is monic, + // consider $ K arrows.rr^iota_0 A arrow.r^u B dot.basic $ + // Since $u iota eq 0 eq u 0$, we have $iota eq 0$. The proof for + // epimorphisms and cokers is dual. + // #TODO modify ] == Pre-abelian Categories @@ -245,13 +256,13 @@ On the other hand, suppose $f$ is monic. Then $ker f = 0$ directly follows from Now inspired by @additive-ker, we define the following: #definition[ - An additive category $cC$ is *pre-abelian* if any morphism has a kernel and a cokernel. + An additive category $cC$ is *pre-abelian* if any morphism has a kernel and a cokernel. ] #corollary[ - Let $f$ be a morphism in a pre-abelian category. $f$ is monic if and only if $ker f$ = 0. Dually, $f$ is epic if and only if $coker f = 0$. + Let $f$ be a morphism in a pre-abelian category. $f$ is monic if and only if $ker f$ = 0. Dually, $f$ is epic if and only if $coker f = 0$. ] - + In fact, we get more than just kernels and cokernels: @@ -260,89 +271,95 @@ In fact, we get more than just kernels and cokernels: ] #proof[ Let $cC$ be a pre-abelian category. Since -$Eq(f, g) = ker(f - g)$, $cC$ has all equalisers and coequalisers. We also know that $cC$ has all finite products and coproducts as an additive category. Thus it has all finite limits and colimits by @all-finite-limits. + $Eq(f, g) = ker(f - g)$, $cC$ has all equalisers and coequalisers. We also know that $cC$ has all finite products and coproducts as an additive category. Thus it has all finite limits and colimits by @all-finite-limits. ] #proposition[ - If $cC$ is pre-abelian, for every morphism $f : X-> Y$, there exists a unique morphism $G -> D$ as shown below. - -// // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAGsYAnAAgAoAZgEoQAX1LpMufIRQBGclVqMWbABpiJIDNjwEiAJkXV6zVohABNTZN0yiAZmPKzbAMYROXQSPG3p+vKkckqmqhYeXnxRwr5aOgGyyEYhJirmHNx8kVmxYkowUADm8ESgAlwQALZIZCA4EEhyfiAV1U3UDUhGLuGtNq2VNYg9XYgOLW3DCvWNiAAsk0NIAKydcwZL7Qvrq9QMWGAZUHRwABaFIGmuFjAAHlhwOHA8AIT5okA -// #align(center, commutative-diagram( -// node-padding: (50pt, 50pt), -// node((0, 0), [$ker (f)$]), -// node((0, 1), [$X$]), -// node((0, 2), [$Y$]), -// node((0, 3), [$coker(f)$]), -// node((1, 1), [$coker(ker(f))$]), -// node((1, 2), [$ker(coker(f))$]), -// arr((0, 0), (0, 1), []), -// arr((0, 1), (0, 2), [$f$]), -// arr((0, 2), (0, 3), []), -// arr((0, 1), (1, 1), []), -// arr((1, 2), (0, 2), []), -// arr((1, 1), (1, 2), [$exists !$], "dashed"), -// )) -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAGkQBfU9TXfIRQBGclVqMWbABrdeIDNjwEiAJjHV6zVohABNOXyWCiAZg0TtbAMKGF-ZUOSjh4rVN0BxO4oEqU6q6akjogACLc4jBQAObwRKAAZgBOEAC2SGQgOBBIopYeIADWMMkAFIkAlHYp6XnUOUjqBaGJNakZiM2NiOYtbADGECXlVe11iPk9ACzBVrpDIwAEZcsVldU8SR1IAKwNuV1zhSNli6Xrm-K1nbPZh-sgDFhgoVB0cAAW0SDHoTAADywcBwcCWAEJIlwgA -#align(center, commutative-diagram( - node((0, 0), [$K$]), - node((0, 1), [$X$]), - node((0, 2), [$Y$]), - node((0, 3), [$C$]), - node((1, 1), [$G$]), - node((1, 2), [$D$]), - arr((0, 0), (0, 1), [$ker(f)$]), - arr((0, 1), (0, 2), [$f$]), - arr((0, 2), (0, 3), [$coker(f)$]), - arr((0, 1), (1, 1), [$coker (ker (f))$], label-pos: -3.5em), - arr((1, 2), (0, 2), [$ker(coker(f))$], label-pos: -3.5em), - arr((1, 1), (1, 2), [$exists !$], "dashed"), -)) + If $cC$ is pre-abelian, for every morphism $f : X-> Y$, there exists a unique morphism $G -> D$ as shown below. + + // // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAGsYAnAAgAoAZgEoQAX1LpMufIRQBGclVqMWbABpiJIDNjwEiAJkXV6zVohABNTZN0yiAZmPKzbAMYROXQSPG3p+vKkckqmqhYeXnxRwr5aOgGyyEYhJirmHNx8kVmxYkowUADm8ESgAlwQALZIZCA4EEhyfiAV1U3UDUhGLuGtNq2VNYg9XYgOLW3DCvWNiAAsk0NIAKydcwZL7Qvrq9QMWGAZUHRwABaFIGmuFjAAHlhwOHA8AIT5okA + // #align(center, commutative-diagram( + // node-padding: (50pt, 50pt), + // node((0, 0), [$ker (f)$]), + // node((0, 1), [$X$]), + // node((0, 2), [$Y$]), + // node((0, 3), [$coker(f)$]), + // node((1, 1), [$coker(ker(f))$]), + // node((1, 2), [$ker(coker(f))$]), + // arr((0, 0), (0, 1), []), + // arr((0, 1), (0, 2), [$f$]), + // arr((0, 2), (0, 3), []), + // arr((0, 1), (1, 1), []), + // arr((1, 2), (0, 2), []), + // arr((1, 1), (1, 2), [$exists !$], "dashed"), + // )) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAGkQBfU9TXfIRQBGclVqMWbABrdeIDNjwEiAJjHV6zVohABNOXyWCiAZg0TtbAMKGF-ZUOSjh4rVN0BxO4oEqU6q6akjogACLc4jBQAObwRKAAZgBOEAC2SGQgOBBIopYeIADWMMkAFIkAlHYp6XnUOUjqBaGJNakZiM2NiOYtbADGECXlVe11iPk9ACzBVrpDIwAEZcsVldU8SR1IAKwNuV1zhSNli6Xrm-K1nbPZh-sgDFhgoVB0cAAW0SDHoTAADywcBwcCWAEJIlwgA + #align( + center, + commutative-diagram( + node((0, 0), [$K$]), + node((0, 1), [$X$]), + node((0, 2), [$Y$]), + node((0, 3), [$C$]), + node((1, 1), [$G$]), + node((1, 2), [$D$]), + arr((0, 0), (0, 1), [$ker(f)$]), + arr((0, 1), (0, 2), [$f$]), + arr((0, 2), (0, 3), [$coker(f)$]), + arr((0, 1), (1, 1), [$coker (ker (f))$], label-pos: -3.5em), + arr((1, 2), (0, 2), [$ker(coker(f))$], label-pos: -3.5em), + arr((1, 1), (1, 2), [$exists !$], "dashed"), + ), + ) ] #proof[ - Since $coker(f) oo f = 0$, by the universal property of the kernel, there exists $c : X -> D$ such that $f = ker(coker(f)) oo c$. Since $f oo ker(f) = 0$, we have $ker(coker(f)) oo c oo ker(f) = 0$. Now notice $ker(coker(f))$ is monic, and hence by @pre-add-mono, $ker(ker(coker(f))) = 0$. By the universal property of the kernel again, there exists $d : K -> 0$ such that $c oo ker(f) = ker(ker(coker(f))) oo d$. Thus $c oo ker(f)$ factors through the zero object and thus is $0$. The desired morphism is obtained from the universal property of the cokernel. - #align(center, commutative-diagram( - node((0, 0), [$K$]), - node((0, 1), [$X$]), - node((0, 2), [$Y$]), - node((0, 3), [$C$]), - node((1, 1), [$G$]), - node((1, 2), [$D$]), - node((2, 2), [$0$]), - arr((0, 0), (0, 1), [$ker(f)$]), - arr((0, 1), (0, 2), [$f$]), - arr((0, 2), (0, 3), [$coker(f)$]), - arr((0, 1), (1, 1), [$coker (ker (f))$], label-pos: 0), - arr((1, 2), (0, 2), [$ker(coker(f))$], label-pos: -3.5em), - arr((1, 1), (1, 2), [$exists !$], "dashed"), - arr((0, 1), (1, 2), [$c$]), - arr((2, 2), (1, 2), [$ker(ker(coker(f)))$], label-pos: -4.5em), - arr((0, 0), (2, 2), [$d$], curve: -40deg) -)) + Since $coker(f) oo f = 0$, by the universal property of the kernel, there exists $c : X -> D$ such that $f = ker(coker(f)) oo c$. Since $f oo ker(f) = 0$, we have $ker(coker(f)) oo c oo ker(f) = 0$. Now notice $ker(coker(f))$ is monic, and hence by @pre-add-mono, $ker(ker(coker(f))) = 0$. By the universal property of the kernel again, there exists $d : K -> 0$ such that $c oo ker(f) = ker(ker(coker(f))) oo d$. Thus $c oo ker(f)$ factors through the zero object and thus is $0$. The desired morphism is obtained from the universal property of the cokernel. + #align( + center, + commutative-diagram( + node((0, 0), [$K$]), + node((0, 1), [$X$]), + node((0, 2), [$Y$]), + node((0, 3), [$C$]), + node((1, 1), [$G$]), + node((1, 2), [$D$]), + node((2, 2), [$0$]), + arr((0, 0), (0, 1), [$ker(f)$]), + arr((0, 1), (0, 2), [$f$]), + arr((0, 2), (0, 3), [$coker(f)$]), + arr((0, 1), (1, 1), [$coker (ker (f))$], label-pos: 0), + arr((1, 2), (0, 2), [$ker(coker(f))$], label-pos: -3.5em), + arr((1, 1), (1, 2), [$exists !$], "dashed"), + arr((0, 1), (1, 2), [$c$]), + arr((2, 2), (1, 2), [$ker(ker(coker(f)))$], label-pos: -4.5em), + arr((0, 0), (2, 2), [$d$], curve: -40deg), + ), + ) ] #definition[In a pre-abelian category, we define the *coimage* of a morphism $f$ as $ coim (f) = coker(ker(f)) $ and *image* of $f$ as $ im(f) = ker(coker(f)). $ Continuing with @ker-notation, we have $G = Coim(f)$ and $D = IM(f)$ in the above diagram. -We call $f$ *strict* if the map $Coim (f) -> IM f$ is an isomorphism. + We call $f$ *strict* if the map $Coim (f) -> IM f$ is an isomorphism. ] == Abelian Categories #definition[ - A pre-ablian category is *abelian* if all morphisms are strict. + A pre-ablian category is *abelian* if all morphisms are strict. ] #corollary[ -In an abelian category, every morphism $f : X-> Y$ has a factorisation -$ - X ->^g IM (f) ->^h Y, -$ -where $g$ is an epimorphism and $h$ is a monomorphism. + In an abelian category, every morphism $f : X-> Y$ has a factorisation + $ + X ->^g IM (f) ->^h Y, + $ + where $g$ is an epimorphism and $h$ is a monomorphism. ] #proof[ Notice $g = coker(ker(f)) = coim(f)$ and $h = ker(coker(f)) = im(f)$. ] -We can always write $f = im(f) oo coim(f)$ and consider $im(f)$ as a subobject of $Y$. +We can always write $f = im(f) oo coim(f)$ and consider $im(f)$ as a subobject of $Y$. #remark[ @@ -362,17 +379,17 @@ We prove part of the equivalence: #remark[ -Now it is time to give a list of properties that abelian categories have, packing everything we have picked up along the way: -- Every hom-set is an abelian group subject to bilinear morphism composition; -- It has a zero object and has a zero morphism between any two objects, which is the identity of the abelian group and factors through $0$; -- It has all finite limits and colimits; -- Any finite product and coproduct coincide as the biproduct; -- $f$ is monic if and only if $f oo u = 0$ implies $u = 0$, if and only if $ker f = 0$, if and only if $f = im(f)$; -- $g$ is epic if and only if $v oo g = 0$ implies $v = 0$, if and only if $coker g = 0$, #iff $g = coim(g)$; -- $f$ is monic and $f = 0$ implies the domain of $f$ is $0$; -- $g$ is epic and $g = 0$ implies the codomain of $g$ is $0$; -- $Coim(f) -> IM(f)$ is an isomorphism; -- Any $f$ can be factorised as $f = ker(coker(f)) oo coker(ker(f)) = im(f) oo coim(f)$. + Now it is time to give a list of properties that abelian categories have, packing everything we have picked up along the way: + - Every hom-set is an abelian group subject to bilinear morphism composition; + - It has a zero object and has a zero morphism between any two objects, which is the identity of the abelian group and factors through $0$; + - It has all finite limits and colimits; + - Any finite product and coproduct coincide as the biproduct; + - $f$ is monic if and only if $f oo u = 0$ implies $u = 0$, if and only if $ker f = 0$, if and only if $f = im(f)$; + - $g$ is epic if and only if $v oo g = 0$ implies $v = 0$, if and only if $coker g = 0$, #iff $g = coim(g)$; + - $f$ is monic and $f = 0$ implies the domain of $f$ is $0$; + - $g$ is epic and $g = 0$ implies the codomain of $g$ is $0$; + - $Coim(f) -> IM(f)$ is an isomorphism; + - Any $f$ can be factorised as $f = ker(coker(f)) oo coker(ker(f)) = im(f) oo coim(f)$. ] // Remark. This is equivalent to: (The converses are always true in any category.) This is equivalent to every mono is the kernel of its cokernel and every epi is the cokernel of its kernel. (? TODO) @@ -388,7 +405,7 @@ We now introduce the most important member in the family of abelian categories. ($RMod$ is additive.) We know that the direct sum exists as a coproduct for any finite family of modules $(M_i)_(i in I)$ in $RMod$. - ($RMod$ is pre-abelian.) Let $f : A -> B$ be a morphism in $RMod$. Then + ($RMod$ is pre-abelian.) Let $f : A -> B$ be a morphism in $RMod$. Then $ Ker(f) = {a in A : f(a) = 0} $ @@ -396,13 +413,13 @@ We now introduce the most important member in the family of abelian categories. $ Coker(f) = B over IM(f) $ - where $IM(f) = {f(a) in B : a in A}$, with $coker(f) : B -> Coker(f)$ being the quotient map, is a categorical cokernel. + where $IM(f) = {f(a) in B : a in A}$, with $coker(f) : B -> Coker(f)$ being the quotient map, is a categorical cokernel. - ($RMod$ is abelian.) We find + ($RMod$ is abelian.) We find $ Coker(ker(f)) = A over Ker(f) iso IM(f) $ - by the First Isomorphism Theorem and + by the First Isomorphism Theorem and $ Ker(coker(f)) = IM(f) $ @@ -411,8 +428,10 @@ We now introduce the most important member in the family of abelian categories. #remark[ Note that the product and coproduct of a family $(M_i)_(i in I)$ coincide when $I$ is finite but differ when $I$ is infinite: -$ union.sq.big _(i in I) M_i = plus.circle.big_(i in I) M_i = {(m_i) _(i in I) | m_i in M_i, m_i = 0 "for all but finitely many" i}, $ - $ product _( i in I) M_i = {(m_i) _(i in I) | m_i in M_i}. $ + $ + union.sq.big_(i in I) M_i = plus.circle.big_(i in I) M_i = {(m_i)_(i in I) | m_i in M_i, m_i = 0 "for all but finitely many" i}, + $ + $ product_( i in I) M_i = {(m_i)_(i in I) | m_i in M_i}. $ ] #proposition[ @@ -424,9 +443,9 @@ $ union.sq.big _(i in I) M_i = plus.circle.big_(i in I) M_i = {(m_i) _(i in I) | #example[ - The category of Banach spaces over $RR$ is not an abelian category, but a *quasi-abelian category*. -// We have $V attach(arrow.r.hook, t: i) W$ which are open. Then $coker i = W \/ overline(V)$. Then $ker coker i = overline(V) != V$. (The closure of $V$.) -// This is an example of quasi-abelian categories. + The category of Banach spaces over $RR$ is not an abelian category, but a *quasi-abelian category*. + // We have $V attach(arrow.r.hook, t: i) W$ which are open. Then $coker i = W \/ overline(V)$. Then $ker coker i = overline(V) != V$. (The closure of $V$.) + // This is an example of quasi-abelian categories. ] @@ -444,7 +463,7 @@ The key element that we seek from an abelian category is the notion of exactness ] #definition[ - In an abelian category, a *short exact sequence* $0 -> A attach(->, t: f) B attach(->, t: g) C -> 0$ is exact at $A$, $B$ and $C$, or "exact everywhere". + In an abelian category, a *short exact sequence* $0 -> A attach(->, t: f) B attach(->, t: g) C -> 0$ is exact at $A$, $B$ and $C$, or "exact everywhere". ] #lemma[ @@ -452,7 +471,7 @@ The key element that we seek from an abelian category is the notion of exactness ] #proposition[ - $0 -> A attach(->, t: f) B attach(->, t: g) C -> 0$ is a #sest if and only if $f$ is monic, $g$ is epic, and $ker g = im f$. + $0 -> A attach(->, t: f) B attach(->, t: g) C -> 0$ is a #sest if and only if $f$ is monic, $g$ is epic, and $ker g = im f$. ] #proof[ - Exactness at $A$ $<=>$ $ker f = im (0 -> A) = 0$ $<=>$ $f$ is monic. @@ -461,24 +480,24 @@ The key element that we seek from an abelian category is the notion of exactness ] #proposition[ - If $ses(A, B, C, f:f, g:g)$ is a #sest, then $f = ker g$ and $g = coker f$. + If $ses(A, B, C, f:f, g:g)$ is a #sest, then $f = ker g$ and $g = coker f$. ] #proof[ $f$ is monic, so $f = im(f) = ker(g)$. $g$ is epic, so $g = coim(g) = coker(ker(g)) = coker(f)$. ] #corollary[ - $ses(A, B, C, f:f, g:g)$ can be rewritten as + $ses(A, B, C, f:f, g:g)$ can be rewritten as $ ses(IM(f), B, Coker(f), f:"", g:coker(f)) - $ or + $ or $ ses(Ker(g), B, Coim(g), f:ker(g), g:""). $ ] #proposition[ - If $A->^f B->C->D->^g E$ is an exact sequence, then + If $A->^f B->C->D->^g E$ is an exact sequence, then $ ses(Coker(f), C, Ker(g)) $ @@ -487,7 +506,7 @@ The key element that we seek from an abelian category is the notion of exactness #definition[ - A #sest $ses(A, B, C)$ is *split* if $B$ is isomorphic to $A ds C$. + A #sest $ses(A, B, C)$ is *split* if $B$ is isomorphic to $A ds C$. // #image("imgs/19.png") ] // #lemma[ @@ -504,28 +523,28 @@ The key element that we seek from an abelian category is the notion of exactness + There exists a *retraction*#footnote[The terms "retraction" and "section" come from algebraic topology, but for our purpose they are nothing more than certain morphisms.] $r: B->A$ such that $r oo f = id_A$; + There exists a *section* $s : C -> B$ such that $g oo s = id_C$. ] - + #proof[ // #TODO https://math.stackexchange.com/questions/748699/abstract-nonsense-proof-of-the-splitting-lemma Although it is possible to give a purely category-theoretic proof, as can be seen @splitting-lemma-doc, we give a proof in $RMod$, which is in fact sufficient in view of @metatheorem. - (1) $=>$ (2) and (1) $=>$ (3) are trivial by the definition of biproducts. + (1) $=>$ (2) and (1) $=>$ (3) are trivial by the definition of biproducts. (2) $=>$ (1). We first claim that $B = IM f + Ker r$. Take any $b in B$, then plainly $b = f r(b) + (b - f r(b)) $. Since $r (b - f r(b)) = r (b) - r f r (b) = 0$, we have $b - f r(b) in Ker r$. Also obviously $f r (b) in IM f$. - We further claim that $B = IM f ds Ker r$. Suppose $b in IM f sect Ker r$, then there exists $a in A$ such that $b = f(a)$; also $r (b) = 0$. Then $0 = r f (a) =a$, so $b = f(a) = 0$. + We further claim that $B = IM f ds Ker r$. Suppose $b in IM f sect Ker r$, then there exists $a in A$ such that $b = f(a)$; also $r (b) = 0$. Then $0 = r f (a) =a$, so $b = f(a) = 0$. - Now we claim that $Ker r iso C$; in particular, the restriction $g|_(Ker r) : Ker r -> C$ is an isomorphism. Take any $c in C$, then since $g$ is a surjection, there exists some $f(a) + k in B$, where $a in A$ and $k in Ker r$, such that $g (f(a) + k) = c$. Note that $g f(a) = 0$, because $f(a) in IM f = Ker g$ by exactness at $B$, so for any $c in C$, there exists $k in Ker r$ such that $g(k) = c$. Thus $g|_(Ker r)$ is surjective. On the other hand, if $g(k) = 0$ for $k in Ker r$, then $k in Ker g = IM f$, but $IM f sect Ker r = {0}$, so $k = 0$. Thus $g|_(Ker r)$ is injective. + Now we claim that $Ker r iso C$; in particular, the restriction $g|_(Ker r) : Ker r -> C$ is an isomorphism. Take any $c in C$, then since $g$ is a surjection, there exists some $f(a) + k in B$, where $a in A$ and $k in Ker r$, such that $g (f(a) + k) = c$. Note that $g f(a) = 0$, because $f(a) in IM f = Ker g$ by exactness at $B$, so for any $c in C$, there exists $k in Ker r$ such that $g(k) = c$. Thus $g|_(Ker r)$ is surjective. On the other hand, if $g(k) = 0$ for $k in Ker r$, then $k in Ker g = IM f$, but $IM f sect Ker r = {0}$, so $k = 0$. Thus $g|_(Ker r)$ is injective. - Finally, observe that $f$ is an injection, so $IM(f) iso A$. + Finally, observe that $f$ is an injection, so $IM(f) iso A$. (3) $=>$ (1). The proof is similar as above and thus omitted. -] +] -#corollary[Let $M, S, T$ be $R$-modules. - - If $M = S ds T$ and $S subset.eq N subset.eq M$, then $N = S ds (N sect T)$. +#corollary[Let $M, S, T$ be $R$-modules. + - If $M = S ds T$ and $S subset.eq N subset.eq M$, then $N = S ds (N sect T)$. - If $M = S ds T$ and $S' subset.eq S$, then $M over S' = S over S' ds (T + S') over S'$. ] @@ -533,44 +552,44 @@ The key element that we seek from an abelian category is the notion of exactness @rotman[Corollary 2.24]. ] #definition[ - An additive functor $F: cC -> cD$ is called - - *right exact* if the exactness of $A-> B-> C-> 0$ implies the exactness of $F(A) -> F(B) -> F(C) -> 0 $; - - *left exact* if the exactness of $0-> A-> B-> C$ implies the exactness of $0 -> F(A) -> F(B) -> F(C) $; + An additive functor $F: cC -> cD$ is called + - *right exact* if the exactness of $A-> B-> C-> 0$ implies the exactness of $F(A) -> F(B) -> F(C) -> 0 $; + - *left exact* if the exactness of $0-> A-> B-> C$ implies the exactness of $0 -> F(A) -> F(B) -> F(C) $; - *exact* if the exactness of $0->A->B->C->0$ implies the exactness of $ses(F(A), F(B), F(C))$, for any $A, B, C in cC$. ] #remark[ - By definition, _right exactness preserves cokernels_, since $C$ is the cokernel of the map $A -> B$ and $F(C)$ is the cokernel of the map $F(A) -> F(B)$. Similarly, _left exactness preserves kernels_. + By definition, _right exactness preserves cokernels_, since $C$ is the cokernel of the map $A -> B$ and $F(C)$ is the cokernel of the map $F(A) -> F(B)$. Similarly, _left exactness preserves kernels_. ] #lemma[ - Let $cA$ be an abelian category. Let $M in cA$. The functor $ Hom(A)(M, -): cA -> Ab $ is left exact. + Let $cA$ be an abelian category. Let $M in cA$. The functor $ Hom(A)(M, -): cA -> Ab $ is left exact. ] - + #proof[ - Let $0->A->^f B->^g C$ be exact in $cA$, then we want to prove -$ 0 -> Hom(A)(M, A) ->^(f oo -) Hom(A)(M, B) ->^(g oo -) Hom(A)(M, C) $ -is exact in $Ab$. + Let $0->A->^f B->^g C$ be exact in $cA$, then we want to prove + $ 0 -> Hom(A)(M, A) ->^(f oo -) Hom(A)(M, B) ->^(g oo -) Hom(A)(M, C) $ + is exact in $Ab$. Exactness at $Hom(A) (M, A)$ is equivalent to $(f oo -) $ being monic, so let us calculate $Ker(f oo -)$. Let $u in Hom(A)(M, A)$ such that $(f oo -) (u) = 0$, i.e., $f oo u = 0$. But $f$ is monic, so $u = 0$, and thus $Ker(f oo -) = 0$ and $(f oo -)$ is monic. - Exactness at $Hom(A) (M, B)$ is equivalent to $Ker(g oo -) = IM(f oo -)$. To show that $Ker(g oo -) subset.eq IM(f oo -)$, let $ v in Ker(g oo -)$. Then $v : M -> B$ such that $g oo v = 0$. Note that $A = Ker(g)$ and $f = ker(g)$, so by the universal property of the kernel, there exists $h : M -> A$ such that $v = f oo h$, hence $v in IM(f oo -)$. On the other hand, to show that $IM(f oo -) subset.eq Ker(g oo -)$, notice that if $v in IM (f oo -)$, then $v = f oo h$ for some $h$ and then $g oo v = g oo f oo h = 0$ since $g oo f = 0$. + Exactness at $Hom(A) (M, B)$ is equivalent to $Ker(g oo -) = IM(f oo -)$. To show that $Ker(g oo -) subset.eq IM(f oo -)$, let $ v in Ker(g oo -)$. Then $v : M -> B$ such that $g oo v = 0$. Note that $A = Ker(g)$ and $f = ker(g)$, so by the universal property of the kernel, there exists $h : M -> A$ such that $v = f oo h$, hence $v in IM(f oo -)$. On the other hand, to show that $IM(f oo -) subset.eq Ker(g oo -)$, notice that if $v in IM (f oo -)$, then $v = f oo h$ for some $h$ and then $g oo v = g oo f oo h = 0$ since $g oo f = 0$. ] // #TODO how to understand $f oo -$ #remark[ - The functor $Hom(A) (M, -)$ fails to be exact in general because it does not necessarily send an epimorphism to an epimorphism. For a counterexample, let $cA = Ab$ (where an epimorphism is equivalent to a surjective homomorphism) and $M = ZZ over 2 ZZ$. The quotient map $h: ZZ -> ZZ over 4 ZZ $ is an surjective homomorphism. On the other hand, for any abelian group $A$, an element in $hom_Ab (ZZ over 2 ZZ, A)$ (i.e., a group homomorphism $ZZ over 2ZZ -> A$) is uniquely determined by an element $a$ in $A$ such that $2a = 0$. Hence $hom_Ab ( ZZ over 2 ZZ, ZZ) = 0$ and $hom_Ab ( ZZ over 2 ZZ, ZZ over 4ZZ) = ZZ over 2ZZ$, and we see the induced map $ (h oo -) : hom_Ab ( ZZ over 2 ZZ, ZZ) -> hom_Ab ( ZZ over 2 ZZ, ZZ over 4ZZ) $ cannot be surjective. + The functor $Hom(A) (M, -)$ fails to be exact in general because it does not necessarily send an epimorphism to an epimorphism. For a counterexample, let $cA = Ab$ (where an epimorphism is equivalent to a surjective homomorphism) and $M = ZZ over 2 ZZ$. The quotient map $h: ZZ -> ZZ over 4 ZZ $ is an surjective homomorphism. On the other hand, for any abelian group $A$, an element in $hom_Ab (ZZ over 2 ZZ, A)$ (i.e., a group homomorphism $ZZ over 2ZZ -> A$) is uniquely determined by an element $a$ in $A$ such that $2a = 0$. Hence $hom_Ab ( ZZ over 2 ZZ, ZZ) = 0$ and $hom_Ab ( ZZ over 2 ZZ, ZZ over 4ZZ) = ZZ over 2ZZ$, and we see the induced map $ (h oo -) : hom_Ab ( ZZ over 2 ZZ, ZZ) -> hom_Ab ( ZZ over 2 ZZ, ZZ over 4ZZ) $ cannot be surjective. ] -#corollary[Dually, $Hom(A) (-, M): cA^op -> Ab$ is also left exact. ] +#corollary[Dually, $Hom(A) (-, M): cA^op -> Ab$ is also left exact. ] #note[ - What does left exactness mean for a contravariant functor? If $X -> Y -> Z -> 0$ is exact in $cA$, then $0 -> Z -> Y -> X$ is exact in $cA^op$, and $0 -> Hom(A)(Z, M) -> Hom(A)(Y, M) -> Hom(A)(X, M)$ is exact in $Ab$. + What does left exactness mean for a contravariant functor? If $X -> Y -> Z -> 0$ is exact in $cA$, then $0 -> Z -> Y -> X$ is exact in $cA^op$, and $0 -> Hom(A)(Z, M) -> Hom(A)(Y, M) -> Hom(A)(X, M)$ is exact in $Ab$. ] #endlec(4) @@ -578,8 +597,8 @@ is exact in $Ab$. #definition[ - Let $cA$ be an abelian category. An object $P$ is called *projective* if $Hom(A) (P, -)$ is exact. - Dually, an object $I$ is called *injective* if $Hom(A) (-, I)$ is exact. + Let $cA$ be an abelian category. An object $P$ is called *projective* if $Hom(A) (P, -)$ is exact. + Dually, an object $I$ is called *injective* if $Hom(A) (-, I)$ is exact. ] In other words, $P$ is projective if for any #sest $ses(X, Y, Z)$ in $cA$, $ ses(Hom(A)(P, X), Hom(A)(P, Y), Hom(A)(P, Z)) $ is a #sest. @@ -589,65 +608,74 @@ In other words, $P$ is projective if for any #sest $ses(X, Y, Z)$ in $cA$, $ ses 1. $P$ is a projective object; 2. For any epimorphism $h : Y -> Z$, the induced map $(h oo -) : Hom(A) (P, Y) -> Hom(A) (P, Z)$ is surjective; 3. For any epimorphism $h : Y-> Z$ and any morphism $f : P -> Z$, there exists (not necessarily unique) $g : P -> Y$ such that $f = h oo g$, i.e. the following commutes (which we refer to as the *lifting property*): - // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQAFEAX1PU1z5CKAEyli1Ok1btyPPiAzY8BImQk0GLNohAAtef2VCi5cZK0zdATR6SYUAObwioAGYAnCAFskZkDgQSGJS2uxuhiCePsE0gUjEvO5evogAzHFBiCGWOiAAFpHRqf7x6TSMWGB5UPRw+Q4gmtJ5MAAeWHA4CNyU3EA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 1), [$P$]), - node((1, 2), [$0$]), - node((1, 1), [$Z$]), - node((1, 0), [$Y$]), - arr((0, 1), (1, 1), [$f$]), - arr((1, 1), (1, 2), []), - arr((1, 0), (1, 1), [$h$]), - arr((0, 1), (1, 0), [$exists g$], label-pos: right, "dashed"), -)) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQAFEAX1PU1z5CKAEyli1Ok1btyPPiAzY8BImQk0GLNohAAtef2VCi5cZK0zdATR6SYUAObwioAGYAnCAFskZkDgQSGJS2uxuhiCePsE0gUjEvO5evogAzHFBiCGWOiAAFpHRqf7x6TSMWGB5UPRw+Q4gmtJ5MAAeWHA4CNyU3EA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 1), [$P$]), + node((1, 2), [$0$]), + node((1, 1), [$Z$]), + node((1, 0), [$Y$]), + arr((0, 1), (1, 1), [$f$]), + arr((1, 1), (1, 2), []), + arr((1, 0), (1, 1), [$h$]), + arr((0, 1), (1, 0), [$exists g$], label-pos: right, "dashed"), + ), + ) 4. Any #sest $ses(A, B, P)$ splits. ] #proof[ (1) $=>$ (2) is obvious; (2) $=>$ (1) by @hom-left-exact. - (2) $<=>$ (3) is also obvious. + (2) $<=>$ (3) is also obvious. (3) $=>$ (4). // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAEEQBfU9TXfIRQAmclVqMWbAELdeIDNjwEiAZjHV6zVohAAFOXyWCiAFg0TtbAAyGF-ZUOTWLWqbts8jAlSnXXxNx19bnEYKABzeCJQADMAJwgAWyQAVmocCCRRS3cQLCgAfQMvEATkpDIQTOzNSWCIu3KUxHTqrMQqhiwwYKg6OAALcJA6q10EUuakc3akaynElpc5zsWKxByaxFUuCi4gA -#align(center, commutative-diagram( - node-padding: (50pt, 40pt), - node((1, 1), [$A$]), - node((1, 2), [$B$]), - node((1, 3), [$P$]), - node((1, 4), [$0$]), - node((1, 0), [$0$]), - node((0, 3), [$P$]), - arr((0, 3), (1, 3), [$id_P$]), - arr((1, 2), (1, 3), [$g$]), - arr((0, 3), (1, 2), [$s$], label-pos: -1em, "dashed"), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), []), - arr((1, 3), (1, 4), []), -)) - Since $g : B-> P$ is an epimorphism, we can always find $s : P -> B$ such that $g oo s= id_P$ by the lifting property. Then (4) holds by @splitting-lemma[Splitting Lemma]. - + #align( + center, + commutative-diagram( + node-padding: (50pt, 40pt), + node((1, 1), [$A$]), + node((1, 2), [$B$]), + node((1, 3), [$P$]), + node((1, 4), [$0$]), + node((1, 0), [$0$]), + node((0, 3), [$P$]), + arr((0, 3), (1, 3), [$id_P$]), + arr((1, 2), (1, 3), [$g$]), + arr((0, 3), (1, 2), [$s$], label-pos: -1em, "dashed"), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), []), + arr((1, 3), (1, 4), []), + ), + ) + Since $g : B-> P$ is an epimorphism, we can always find $s : P -> B$ such that $g oo s= id_P$ by the lifting property. Then (4) holds by @splitting-lemma[Splitting Lemma]. + (4) $=>$ (3). See @ses-split-projective. ] -#corollary[Dually, the following are equivalent: -1. $I$ is injective; -2. For any monomorphism $h: X->Y$, the induced map $(- oo h) : Hom(A) (Y, I) -> Hom(A) (X, I)$ is surjective; -3. For any monomorphism $h: X->Y$ and any $f: X->I$, there exists $g: Y->I$ such that $f = g oo h$, i.e., the following commutes (which we refer to as the *extension property*): -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAEkQBfU9TXfIRQAGUsKq1GLNsO68QGbHgJEy46vWatEIABpy+SwUQBMYiZuk6AmtwkwoAc3hFQAMwBOEALZIzIHAgkUUktNjcDEE8fJDIAoMQTHncvX0TqQKQAZg0pbRAAC0jotJz44OoGLDB8qDo4AocQXLCdGAAPLDgcOAACRzsuIA -#align(center, commutative-diagram( +#corollary[Dually, the following are equivalent: + 1. $I$ is injective; + 2. For any monomorphism $h: X->Y$, the induced map $(- oo h) : Hom(A) (Y, I) -> Hom(A) (X, I)$ is surjective; + 3. For any monomorphism $h: X->Y$ and any $f: X->I$, there exists $g: Y->I$ such that $f = g oo h$, i.e., the following commutes (which we refer to as the *extension property*): + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAEkQBfU9TXfIRQAGUsKq1GLNsO68QGbHgJEy46vWatEIABpy+SwUQBMYiZuk6AmtwkwoAc3hFQAMwBOEALZIzIHAgkUUktNjcDEE8fJDIAoMQTHncvX0TqQKQAZg0pbRAAC0jotJz44OoGLDB8qDo4AocQXLCdGAAPLDgcOAACRzsuIA + #align( + center, + commutative-diagram( node-padding: (50pt, 50pt), - node((1, 1), [$I$]), - node((0, 0), [$0$]), - node((0, 1), [$X$]), - node((0, 2), [$Y$]), - arr((0, 1), (1, 1), [$f$]), - arr((0, 0), (0, 1), []), - arr((0, 1), (0, 2), [$h$]), - arr((0, 2), (1, 1), [$exists g$], "dashed"), -)) -4. Any #sest $ses(I, A, B)$ splits. + node((1, 1), [$I$]), + node((0, 0), [$0$]), + node((0, 1), [$X$]), + node((0, 2), [$Y$]), + arr((0, 1), (1, 1), [$f$]), + arr((0, 0), (0, 1), []), + arr((0, 1), (0, 2), [$h$]), + arr((0, 2), (1, 1), [$exists g$], "dashed"), + ), + ) + 4. Any #sest $ses(I, A, B)$ splits. ] @@ -656,37 +684,39 @@ In other words, $P$ is projective if for any #sest $ses(X, Y, Z)$ in $cA$, $ ses #proposition[ - Ring $R$ viewed as an object in $RMod$ is projective. + Ring $R$ viewed as an object in $RMod$ is projective. ] -#proof[ It is equivalent to say the functor $ homr (R, -)$ is exact. In fact, - $homr (R, M) iso M $ because any module morphism $phi : R -> M $ is entirely determined by $phi(1_R)$. Given any #sest $ses(M, M', M'') $, if we apply $homr (R, -)$, we get the same #sest, which is exact. +#proof[ It is equivalent to say the functor $ homr (R, -)$ is exact. In fact, + $homr (R, M) iso M $ because any module morphism $phi : R -> M $ is entirely determined by $phi(1_R)$. Given any #sest $ses(M, M', M'') $, if we apply $homr (R, -)$, we get the same #sest, which is exact. ] // #corollary[ -// Any free module $R^(ds I)$ is projective. +// Any free module $R^(ds I)$ is projective. // ] // #proof[ // The proof is similar as above. #TODO // ] #note[In $RMod$, we have -$ homr (R, plus.circle.big_(i in I) M_i) = plus.circle.big_(i in I) M_i = plus.circle.big_(i in I) homr (R, M_i). $ -This does not follow from the universal property of the direct sum; this is because $R$ is special. + $ + homr (R, plus.circle.big_(i in I) M_i) = plus.circle.big_(i in I) M_i = plus.circle.big_(i in I) homr (R, M_i). + $ + This does not follow from the universal property of the direct sum; this is because $R$ is special. ] #definition[ Let $cA$ be an additive category. We call an object $C$ *compact* if the canonical morphism $ product.co_(i in I) Hom(A) (C, G_i) -> Hom(A)(C, product.co_(i in I) G_i) $ - is an isomorphism for any family ${G_i}_(i in I)$ of objects in $cA$ such that $product.co_(i in I) G_i$ exists. + is an isomorphism for any family ${G_i}_(i in I)$ of objects in $cA$ such that $product.co_(i in I) G_i$ exists. ] #remark[ -You might find different definitions for an arbitrary category (not necessarily additive), but they are equivalent under the additive context. + You might find different definitions for an arbitrary category (not necessarily additive), but they are equivalent under the additive context. ] #definition[ - In a category $cC$ with coproducts, an object $G$ is called a *generator* if for any $X in cC$, there is an epimorphism + In a category $cC$ with coproducts, an object $G$ is called a *generator* if for any $X in cC$, there is an epimorphism $product.co_I G -> X -> 0$. ] @@ -694,13 +724,13 @@ You might find different definitions for an arbitrary category (not necessarily $R$ is a generator of $RMod$. ] #proof[ -Recall @module-generator. + Recall @module-generator. ] #lemma[ - In an abelian category $cA$, any hom-set + In an abelian category $cA$, any hom-set $hom_cA (X, Y)$ can be seen as a right module over ring $End(A)(X)$, or equivalently a left module over $End(A)(X)^op$. ] #proof[ @@ -710,13 +740,13 @@ Recall @module-generator. ] #theorem("Morita's Theorem")[ - Let $cA$ be an abelian category. Assume $cA$ has (small) coproducts. Assume that $P in cA$ is a compact, projective generator. Let ring $R = End(A) (P)$, then the functor $ Hom(A)(P, -) : cA -> ModR $ is an equivalence of categories. + Let $cA$ be an abelian category. Assume $cA$ has (small) coproducts. Assume that $P in cA$ is a compact, projective generator. Let ring $R = End(A) (P)$, then the functor $ Hom(A)(P, -) : cA -> ModR $ is an equivalence of categories. ] #note[ -If $cA = SMod$ for some ring $S$, we have observed that $S$ (as an object of $SMod$) is a compact, projective generator. In this case, $R = end_S (S)$. We observe that any module homomorphism $phi: S -> S$ is uniquely determined by $phi(1) in S$ with $phi(s) = s phi(1)$, and the composition of two homomorphisms $phi_1 , phi_2 : S-> S$ is in the opposite direction of multiplication in $S$: $ phi_1 (phi_2(s)) = s phi_2(1) phi_1(1) $ -Therefore, $R = end_S (S) = S^op$. Thus, indeed, we have $SMod$ is equivalent to $ModR$, which is $Mod$-$S^op$. + If $cA = SMod$ for some ring $S$, we have observed that $S$ (as an object of $SMod$) is a compact, projective generator. In this case, $R = end_S (S)$. We observe that any module homomorphism $phi: S -> S$ is uniquely determined by $phi(1) in S$ with $phi(s) = s phi(1)$, and the composition of two homomorphisms $phi_1 , phi_2 : S-> S$ is in the opposite direction of multiplication in $S$: $ phi_1 (phi_2(s)) = s phi_2(1) phi_1(1) $ + Therefore, $R = end_S (S) = S^op$. Thus, indeed, we have $SMod$ is equivalent to $ModR$, which is $Mod$-$S^op$. ] // #remark[ @@ -724,67 +754,70 @@ Therefore, $R = end_S (S) = S^op$. Thus, indeed, we have $SMod$ is equivalent to // ] #proof[ -@rotman[Theorem 5.55] and @pareigis[p. 211]. -// https://cornellmath.wordpress.com/2008/04/10/abelian-categories-and-module-categories/ -Denote $ F:=Hom(A)(P, -) : cA -> ModR$. -Using the definition of categorical equivalence, we want to construct another functor $G : ModR -> cA$ and show $F G$ and $G F$ are naturally isomorphic to identity functors. We see that in this way $G$ should be left adjoint to $F$, so $G$ must preserve colimits and in particular be right exact. - -Inspired by the discussion above, we define $G$ in the following way. We first set $G(R) = P$ and $G(R^(ds I)) = P^(ds I)$. Any morphism $f: R^(ds J) -> R^(ds I)$ can be represented by a (possibly infinite) matrix with entries $a_(i j) in R$ for all $i in I$ and $j in J$. However, notice that $R = End(A) (P)$ by definition and thus the same matrix $(a_(i j))_(i in I, j in J)$ can also be seen as a morphism $P^(ds J) -> P^(ds I)$, which is defined to be $G(f)$. -Now, for any $R$-module $M$, we can find a presentation -$ - R^(ds J) ->^f R^(ds I) -> M -> 0 -$ -Under $G$, this becomes -$ - P^(ds J) ->^(G(f)) P^(ds I) -> G(M) -> 0 -$ -where we define $G(M) = Coker(G(f))$. It can be verified that $G$ is a functor. -// TODO ? - -Since $P$ is a projective object, $F$ is exact and preserves cokernels; since $P$ is compact, $F$ preserves direct sums. On the other hand, $G$ is right exact and preserves direct sums by construction. Hence the composites $F G$ and $G F$ are right exact and preserve direct sums. -Now we check $F G$ and $G F$ are naturally isomorphic to identity functors. - -For $F G : ModR -> ModR$, we have $ F G (R) = F (P) = hom_cA (P, P) = R $ -and hence $F G(R^(ds I)) = R^(ds I)$. Now for any $M in ModR$, there is a commutative diagram -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRACUA9ACijgAIAUgEoQAX1LpMufIRQBGclVqMWbLrwEBJURKnY8BIgCYl1es1aIQAWXGSQGA7KJl5yi2usAxfgHF+bn4NPiFhfl0HJxkjBVJ3c1UrEF8A7hDtYUj9GLlkUwSVSzZUwJtsx2lDPIBmMyKvEGJ7HOqiOsLPZOaxZRgoAHN4IlAAMwAnCABbJDIQHAgkGr0QCemkRXnFxAAWFbWZxFMtpABWfcnDuYWNi-XETZuju8Pjp4A2F6XqJ72HA6QOx+23O-0uZ2BSAA7L0xEA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$R^(ds J)$]), - node((0, 1), [$R^(ds I)$]), - node((0, 2), [$M$]), - node((1, 0), [$F G ( R^(ds J) )$]), - node((1, 1), [$F G (R^(ds I))$]), - node((1, 2), [$F G (M)$]), - node((0, 3), [$0$]), - node((1, 3), [$0$]), - arr((0, 0), (1, 0), []), - arr((0, 1), (1, 1), []), - arr((0, 2), (1, 2), []), - arr((0, 0), (0, 1), []), - arr((0, 1), (0, 2), []), - arr((0, 2), (0, 3), []), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), []), - arr((1, 2), (1, 3), []), -)) -Since $F G$ preserves cokernels, we see that $F G(M) iso M$. Hence $F G$ is naturally isomorphic to the identity functor of $ModR$. - -For $G F: cA -> cA$, we have -$G F (P) = G( R) = P + @rotman[Theorem 5.55] and @pareigis[p. 211]. + // https://cornellmath.wordpress.com/2008/04/10/abelian-categories-and-module-categories/ + Denote $ F:=Hom(A)(P, -) : cA -> ModR$. + Using the definition of categorical equivalence, we want to construct another functor $G : ModR -> cA$ and show $F G$ and $G F$ are naturally isomorphic to identity functors. We see that in this way $G$ should be left adjoint to $F$, so $G$ must preserve colimits and in particular be right exact. + + Inspired by the discussion above, we define $G$ in the following way. We first set $G(R) = P$ and $G(R^(ds I)) = P^(ds I)$. Any morphism $f: R^(ds J) -> R^(ds I)$ can be represented by a (possibly infinite) matrix with entries $a_(i j) in R$ for all $i in I$ and $j in J$. However, notice that $R = End(A) (P)$ by definition and thus the same matrix $(a_(i j))_(i in I, j in J)$ can also be seen as a morphism $P^(ds J) -> P^(ds I)$, which is defined to be $G(f)$. + Now, for any $R$-module $M$, we can find a presentation + $ + R^(ds J) ->^f R^(ds I) -> M -> 0 + $ + Under $G$, this becomes + $ + P^(ds J) ->^(G(f)) P^(ds I) -> G(M) -> 0 + $ + where we define $G(M) = Coker(G(f))$. It can be verified that $G$ is a functor. + // TODO ? + + Since $P$ is a projective object, $F$ is exact and preserves cokernels; since $P$ is compact, $F$ preserves direct sums. On the other hand, $G$ is right exact and preserves direct sums by construction. Hence the composites $F G$ and $G F$ are right exact and preserve direct sums. + Now we check $F G$ and $G F$ are naturally isomorphic to identity functors. + + For $F G : ModR -> ModR$, we have $ F G (R) = F (P) = hom_cA (P, P) = R $ + and hence $F G(R^(ds I)) = R^(ds I)$. Now for any $M in ModR$, there is a commutative diagram + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRACUA9ACijgAIAUgEoQAX1LpMufIRQBGclVqMWbLrwEBJURKnY8BIgCYl1es1aIQAWXGSQGA7KJl5yi2usAxfgHF+bn4NPiFhfl0HJxkjBVJ3c1UrEF8A7hDtYUj9GLlkUwSVSzZUwJtsx2lDPIBmMyKvEGJ7HOqiOsLPZOaxZRgoAHN4IlAAMwAnCABbJDIQHAgkGr0QCemkRXnFxAAWFbWZxFMtpABWfcnDuYWNi-XETZuju8Pjp4A2F6XqJ72HA6QOx+23O-0uZ2BSAA7L0xEA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$R^(ds J)$]), + node((0, 1), [$R^(ds I)$]), + node((0, 2), [$M$]), + node((1, 0), [$F G ( R^(ds J) )$]), + node((1, 1), [$F G (R^(ds I))$]), + node((1, 2), [$F G (M)$]), + node((0, 3), [$0$]), + node((1, 3), [$0$]), + arr((0, 0), (1, 0), []), + arr((0, 1), (1, 1), []), + arr((0, 2), (1, 2), []), + arr((0, 0), (0, 1), []), + arr((0, 1), (0, 2), []), + arr((0, 2), (0, 3), []), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), []), + arr((1, 2), (1, 3), []), + ), + ) + Since $F G$ preserves cokernels, we see that $F G(M) iso M$. Hence $F G$ is naturally isomorphic to the identity functor of $ModR$. + + For $G F: cA -> cA$, we have + $G F (P) = G( R) = P $, -so $ G F (P^(ds I)) =P^( ds I)$. Now take any $X in cA$, since $P$ is a generator, we can find -$ - P^(ds J) -> P^(ds I) -> X -> 0 -$ -A similar argument as before gives the result. -// #TODO review + so $ G F (P^(ds I)) =P^( ds I)$. Now take any $X in cA$, since $P$ is a generator, we can find + $ + P^(ds J) -> P^(ds I) -> X -> 0 + $ + A similar argument as before gives the result. + // #TODO review ] #remark[ -$cA$ can have more than one compact, projective generator, say $P_1$ and $P_2$. Then $A = End(A) (P_1)^op hyph Mod = End(A) (P_2)^op hyph Mod$, where rings $End(A) (P_1)$ and $End(A) (P_2)$ are not necessarily isomorphic. This is *Morita equivalence* of rings. + $cA$ can have more than one compact, projective generator, say $P_1$ and $P_2$. Then $A = End(A) (P_1)^op hyph Mod = End(A) (P_2)^op hyph Mod$, where rings $End(A) (P_1)$ and $End(A) (P_2)$ are not necessarily isomorphic. This is *Morita equivalence* of rings. -For example, consider $veck$ for some field $k$. Then $k$ and $k^n$ are both compact, projective generators of $veck$. Then $k$ and $M_n (k)$ ($n times n$ matrices over $k$) both are equivalent to $veck$ as categories. -// #TODO + For example, consider $veck$ for some field $k$. Then $k$ and $k^n$ are both compact, projective generators of $veck$. Then $k$ and $M_n (k)$ ($n times n$ matrices over $k$) both are equivalent to $veck$ as categories. + // #TODO ] @@ -795,108 +828,114 @@ For example, consider $veck$ for some field $k$. Then $k$ and $k^n$ are both com #proof[ -// Using Yoneda embeddings. $cA -> Fun(cA^op, Ab)$. (?) -@weibel[p. 25]. + // Using Yoneda embeddings. $cA -> Fun(cA^op, Ab)$. (?) + @weibel[p. 25]. ] This theorem indicates that we can embed an abstract category into a concrete one. From a practical perspective, we can prove any reasonable statements for $RMod$ and they will also hold for abelian categories. An example is the following. #lemma("Snake Lemma")[ - Suppose we have a commutative diagram of objects in an abelian category or $RMod$ - - // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAEEQBfU9TXfIRQAmclVqMWbAELdeIDNjwEiAZjHV6zVohABhOXyWCiZAAzitU3ewDkhhf2VDkoi5sk6Q0+zyMCVFHV3CW02PV95RQCXABZSEKsvMwdo5yIzDVDrEBSucRgoAHN4IlAAMwAnCABbJHUQHAgkTOyvcocq2qR4xubEMja2Is7qusQAVmompFEh3QALUe7EBpnEXqS2LEiKsZ7p-qn5hV2QLvHj9YA2P3P9xAB2Q5a7i5aXgY8w3Sxl8cG6zmW10aBA1AYWDAXjgEEhUG4FC4QA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((1, 1), [$A$]), - node((1, 2), [$B$]), - node((1, 3), [$C$]), - node((0, 1), [$A'$]), - node((0, 2), [$B'$]), - node((0, 3), [$C'$]), - node((0, 4), [$0$]), - node((1, 0), [$0$]), - arr((0, 1), (1, 1), [$f$]), - arr((0, 2), (1, 2), [$g$]), - arr((0, 3), (1, 3), [$h$]), - arr((0, 1), (0, 2), [$i'$]), - arr((0, 2), (0, 3), [$p'$]), - arr((0, 3), (0, 4), []), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), [$i$]), - arr((1, 2), (1, 3), [$p$]), -)) -// #image("imgs/23.png") - -such that the rows are exact, then there is an exact sequence -$ Ker f -> Ker g -> Ker h attach(->, t: diff) Coker f -> Coker g -> Coker h $ -where the *connecting (homo)morphism* $diff$ is given by a well-defined formula $ diff(c') = i^(-1) g p'^(-1) (c') + IM(f) $ where $p'^(-1)$ means finding some element $b' in B'$ such that $p'(b') = c'$ and so on. -Further, if $A' -> B'$ is monic, so is $Ker f -> Ker g$. -If $B -> C$ is epic, so is $Coker g -> Coker h$. + Suppose we have a commutative diagram of objects in an abelian category or $RMod$ + + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAEEQBfU9TXfIRQAmclVqMWbAELdeIDNjwEiAZjHV6zVohABhOXyWCiZAAzitU3ewDkhhf2VDkoi5sk6Q0+zyMCVFHV3CW02PV95RQCXABZSEKsvMwdo5yIzDVDrEBSucRgoAHN4IlAAMwAnCABbJHUQHAgkTOyvcocq2qR4xubEMja2Is7qusQAVmompFEh3QALUe7EBpnEXqS2LEiKsZ7p-qn5hV2QLvHj9YA2P3P9xAB2Q5a7i5aXgY8w3Sxl8cG6zmW10aBA1AYWDAXjgEEhUG4FC4QA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((1, 1), [$A$]), + node((1, 2), [$B$]), + node((1, 3), [$C$]), + node((0, 1), [$A'$]), + node((0, 2), [$B'$]), + node((0, 3), [$C'$]), + node((0, 4), [$0$]), + node((1, 0), [$0$]), + arr((0, 1), (1, 1), [$f$]), + arr((0, 2), (1, 2), [$g$]), + arr((0, 3), (1, 3), [$h$]), + arr((0, 1), (0, 2), [$i'$]), + arr((0, 2), (0, 3), [$p'$]), + arr((0, 3), (0, 4), []), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), [$i$]), + arr((1, 2), (1, 3), [$p$]), + ), + ) + // #image("imgs/23.png") + + such that the rows are exact, then there is an exact sequence + $ Ker f -> Ker g -> Ker h attach(->, t: diff) Coker f -> Coker g -> Coker h $ + where the *connecting (homo)morphism* $diff$ is given by a well-defined formula $ diff(c') = i^(-1) g p'^(-1) (c') + IM(f) $ where $p'^(-1)$ means finding some element $b' in B'$ such that $p'(b') = c'$ and so on. + Further, if $A' -> B'$ is monic, so is $Ker f -> Ker g$. + If $B -> C$ is epic, so is $Coker g -> Coker h$. ] #proof[See @snake-lemma-doc for a detailed proof. -We have the following commutative diagram: -#v(20pt) -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAmAXVJADcBDAGwFcYkQBBEAX1PU1z5CKchWp0mrdgCEefEBmx4CRAMxiaDFm0QgAwnP5KhRMsXFapujgHJDCgcuHJR5zZJ0hpd3kcEqUdTcJbXY9H3lFf2cyAAYLD3YAaxgAJwACADN7KKciUXj3UN0UjIBzHMcTQNJCkKsQUvSAC0rjAJJSVQTikABjCCbs3wd251FuooaBpoqR3OrkdUn6zxm0lrboogAWUmDLT1itvJRYjVX2Y+5xGCgy+CJQTNSIAFskADYaHAgkVRGL3e-x+f0Q50uumG8iBH3BoKQAE5Aa84QB2BGIHYo4FYzFkSEgOYw1FIAm-MmxHFwgAcmIArNSkPTMaJCa0mYg2RTEMRiJz1CAeXtCVgIs9SXihWCWYS0OKQLDmfjyJziIKeVSSbiITyCYd2Fh7Ereaypp40CAaIwsGBPFB6HBmndjZK6dKkdbbfbHc6oFaQAAjGBgf2IAC0aP52rhiPxWoluOIurBfM53w9iDRnIxmZpN24QA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((2, 1), [$A$]), - node((2, 2), [$B$]), - node((2, 3), [$C$]), - node((1, 1), [$A'$]), - node((1, 2), [$B'$]), - node((1, 3), [$C'$]), - node((0, 1), [$Ker f$]), - node((0, 2), [$Ker g$]), - node((0, 3), [$Ker h$]), - node((3, 1), [$Coker f$]), - node((3, 2), [$Coker g$]), - node((3, 3), [$Coker h$]), - node((1, 4), [$0$]), - node((2, 0), [$0$]), - arr((0, 1), (1, 1), []), - arr((1, 1), (2, 1), [$f$]), - arr((2, 1), (3, 1), []), - arr((0, 2), (1, 2), []), - arr((1, 2), (2, 2), [$g$]), - arr((2, 2), (3, 2), []), - arr((0, 3), (1, 3), []), - arr((1, 3), (2, 3), [$h$]), - arr((2, 3), (3, 3), []), - arr((1, 1), (1, 2), [$i'$]), - arr((1, 2), (1, 3), [$p'$]), - arr((1, 3), (1, 4), []), - arr((2, 0), (2, 1), []), - arr((2, 1), (2, 2), [$i$]), - arr((2, 2), (2, 3), [$p$]), - arr((0, 3), (3, 1), [$diff$], curve: -68deg, "dashed"), - arr((3, 1), (3, 2), [$j$]), - arr((3, 2), (3, 3), [$q$]), - arr((0, 1), (0, 2), [$j'$]), - arr((0, 2), (0, 3), [$q'$]), -)) - - In the first row, consider the map $j' := i'|_(Ker f) : Ker f -> B'$. We claim that $j' : Ker f -> Ker g$. Indeed, take any $a' in Ker f subset.eq A'$, we have + We have the following commutative diagram: + #v(20pt) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAmAXVJADcBDAGwFcYkQBBEAX1PU1z5CKchWp0mrdgCEefEBmx4CRAMxiaDFm0QgAwnP5KhRMsXFapujgHJDCgcuHJR5zZJ0hpd3kcEqUdTcJbXY9H3lFf2cyAAYLD3YAaxgAJwACADN7KKciUXj3UN0UjIBzHMcTQNJCkKsQUvSAC0rjAJJSVQTikABjCCbs3wd251FuooaBpoqR3OrkdUn6zxm0lrboogAWUmDLT1itvJRYjVX2Y+5xGCgy+CJQTNSIAFskADYaHAgkVRGL3e-x+f0Q50uumG8iBH3BoKQAE5Aa84QB2BGIHYo4FYzFkSEgOYw1FIAm-MmxHFwgAcmIArNSkPTMaJCa0mYg2RTEMRiJz1CAeXtCVgIs9SXihWCWYS0OKQLDmfjyJziIKeVSSbiITyCYd2Fh7Ereaypp40CAaIwsGBPFB6HBmndjZK6dKkdbbfbHc6oFaQAAjGBgf2IAC0aP52rhiPxWoluOIurBfM53w9iDRnIxmZpN24QA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((2, 1), [$A$]), + node((2, 2), [$B$]), + node((2, 3), [$C$]), + node((1, 1), [$A'$]), + node((1, 2), [$B'$]), + node((1, 3), [$C'$]), + node((0, 1), [$Ker f$]), + node((0, 2), [$Ker g$]), + node((0, 3), [$Ker h$]), + node((3, 1), [$Coker f$]), + node((3, 2), [$Coker g$]), + node((3, 3), [$Coker h$]), + node((1, 4), [$0$]), + node((2, 0), [$0$]), + arr((0, 1), (1, 1), []), + arr((1, 1), (2, 1), [$f$]), + arr((2, 1), (3, 1), []), + arr((0, 2), (1, 2), []), + arr((1, 2), (2, 2), [$g$]), + arr((2, 2), (3, 2), []), + arr((0, 3), (1, 3), []), + arr((1, 3), (2, 3), [$h$]), + arr((2, 3), (3, 3), []), + arr((1, 1), (1, 2), [$i'$]), + arr((1, 2), (1, 3), [$p'$]), + arr((1, 3), (1, 4), []), + arr((2, 0), (2, 1), []), + arr((2, 1), (2, 2), [$i$]), + arr((2, 2), (2, 3), [$p$]), + arr((0, 3), (3, 1), [$diff$], curve: -68deg, "dashed"), + arr((3, 1), (3, 2), [$j$]), + arr((3, 2), (3, 3), [$q$]), + arr((0, 1), (0, 2), [$j'$]), + arr((0, 2), (0, 3), [$q'$]), + ), + ) + + In the first row, consider the map $j' := i'|_(Ker f) : Ker f -> B'$. We claim that $j' : Ker f -> Ker g$. Indeed, take any $a' in Ker f subset.eq A'$, we have $ g(j'(a')) = g(i'(a')) = i(f(a')) = i(0) = 0. $ Then $j'(a') in Ker g$ and thus $j' : Ker f -> Ker g$. Similarly, $q' := p'|_(Ker g) : Ker g -> Ker h$. We then see the first row is exact because of the exactness of $A' -> B' -> C'$. Also, if $i'$ is an injection, i.e., $Ker(i') = 0$, then obviously $Ker(j') = 0$. - In the last row, define $j : Coker(f) -> Coker(g)$ as $a + IM(f) |-> i(a) + IM(g)$ for any $a in A$. We claim that this map is well-defined. If $a_1, a_2 in A$ such that $a_1 + IM(f) = a_2 + IM(f)$, then $a_1 - a_2 in IM(f)$, thus there exists $a' in A'$ so that $a_1 - a_2 = f(a')$. Then - $i(a_1 - a_2) = i(f(a')) = g(i'(a')) in IM(g). $ - Then + In the last row, define $j : Coker(f) -> Coker(g)$ as $a + IM(f) |-> i(a) + IM(g)$ for any $a in A$. We claim that this map is well-defined. If $a_1, a_2 in A$ such that $a_1 + IM(f) = a_2 + IM(f)$, then $a_1 - a_2 in IM(f)$, thus there exists $a' in A'$ so that $a_1 - a_2 = f(a')$. Then + $i(a_1 - a_2) = i(f(a')) = g(i'(a')) in IM(g).$ + Then $ j(a_1 + IM(f)) = i(a_1) + IM(g) = i(a_2) + IM(g) = j(a_2 + IM(f)). $ So $j$ is well-defined. Similarly, we can define $q : Coker g -> Coker h$ and show the exactness of the last row. We can also see that the surjection of $p$ implies the surjection of $q$. - Now all arrows except $diff$ are clear. - Pick any $c' in Ker h subset.eq C'$. - Since $p'$ is surjective, there exists $b' in B'$ so that $p'(b') = c'$. - Now $0 = h(c') = h(p'(b')) = p(g(b')), $ so $g(b') in Ker p = IM i$, and there exists unique $a in A$ such that $i(a) = g(b')$. - We thus define $diff: Ker h -> Coker f$ as $diff(c') = a + IM(f). $ - We claim this is a well-defined function. - Then it suffices to show for any two choices $b'_1, b'_2$ of $b'$ and corresponding choices $a_1, a_2$ of $a$, $diff (c')$ gives the same value. Since $p'(b'_1) = p'(b'_2) = c'$, we have $b'_1 - b'_2 in Ker(p') = IM(i')$. Thus we can write $b'_1 - b'_2 = i'(a')$ for some $a' in A'$. Then - $i(a_1 - a_2) = g(b'_1 - b'_2) = g(i'(a')) = i (f (a')), $ - but $i$ is injective, and hence $a_1 - a_2 = f(a') in IM f$. + Now all arrows except $diff$ are clear. + Pick any $c' in Ker h subset.eq C'$. + Since $p'$ is surjective, there exists $b' in B'$ so that $p'(b') = c'$. + Now $0 = h(c') = h(p'(b')) = p(g(b')), $ so $g(b') in Ker p = IM i$, and there exists unique $a in A$ such that $i(a) = g(b')$. + We thus define $diff: Ker h -> Coker f$ as $diff(c') = a + IM(f). $ + We claim this is a well-defined function. + Then it suffices to show for any two choices $b'_1, b'_2$ of $b'$ and corresponding choices $a_1, a_2$ of $a$, $diff (c')$ gives the same value. Since $p'(b'_1) = p'(b'_2) = c'$, we have $b'_1 - b'_2 in Ker(p') = IM(i')$. Thus we can write $b'_1 - b'_2 = i'(a')$ for some $a' in A'$. Then + $i(a_1 - a_2) = g(b'_1 - b'_2) = g(i'(a')) = i (f (a')),$ + but $i$ is injective, and hence $a_1 - a_2 = f(a') in IM f$. We omit the proof of the exactness at $Ker h$ and $Coker f$. // See @li[Theorem 6.8.6]. diff --git a/ha/3-tp.typ b/ha/3-tp.typ index 9adc6f4..ecec51b 100644 --- a/ha/3-tp.typ +++ b/ha/3-tp.typ @@ -8,83 +8,88 @@ #let Bil = [$"Bil"$] #definition[ - Let $R$ be a ring. Consider a #rrm $M$, a #lrm $N$ and an abelian group $A$. A map $f: M times N -> A$ is called a *balanced product* (or we say it is *$R$-biadditive*) if it satisfies: - $ f(x + x', y) = f(x, y) + f(x', y), \ - f(x, y + y') = f(x, y) + f(x, y'), \ - f(x r , y) = f(x, r y). $ - for all $x, x' in M$, $y, y' in N$ and $r in R$. - - // Denote the set of all balanced products $B : M times N -> A$ as $Bil\(M, N; A)$, which is an abelian group under addition. + Let $R$ be a ring. Consider a #rrm $M$, a #lrm $N$ and an abelian group $A$. A map $f: M times N -> A$ is called a *balanced product* (or we say it is *$R$-biadditive*) if it satisfies: + $ + f(x + x', y) = f(x, y) + f(x', y), \ + f(x, y + y') = f(x, y) + f(x, y'), \ + f(x r , y) = f(x, r y). + $ + for all $x, x' in M$, $y, y' in N$ and $r in R$. + + // Denote the set of all balanced products $B : M times N -> A$ as $Bil\(M, N; A)$, which is an abelian group under addition. ] #definition[ - The *tensor product* of a #rrm $M$ and a #lrm $N$ is an abelian group $M tpr N$ with a balanced product $M times N -> M tpr N$ such that for any balanced product $f: M times N -> A$, there exists a unique group homomorphism $M tpr N -> A$ that makes the diagram commute: - - // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAFkACPAW3k4ByIAL6l0mXPkIoAjOSq1GLNlxxoAToJFiQGbHgJE5MhfWatEIAIIiFMKAHN4RUADN1EHkjIgcEJABM1GbKlgBC2m4eXohyvv6IQSAMWGAWIFB0cAAW9iDBSukwAB5YcDhwnACEkSDunt7UfkgywhTCQA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$M times N$]), - node((0, 1), [$M tpr N$]), - node((1, 1), [$A$]), - arr((0, 0), (1, 1), [$f$]), - arr((0, 1), (1, 1), [$exists !$], "dashed"), - arr((0, 0), (0, 1), []), -)) - - We might simply say $M tpr N$ is the tensor product of $M$ and $N$. + The *tensor product* of a #rrm $M$ and a #lrm $N$ is an abelian group $M tpr N$ with a balanced product $M times N -> M tpr N$ such that for any balanced product $f: M times N -> A$, there exists a unique group homomorphism $M tpr N -> A$ that makes the diagram commute: + + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAFkACPAW3k4ByIAL6l0mXPkIoAjOSq1GLNlxxoAToJFiQGbHgJE5MhfWatEIAIIiFMKAHN4RUADN1EHkjIgcEJABM1GbKlgBC2m4eXohyvv6IQSAMWGAWIFB0cAAW9iDBSukwAB5YcDhwnACEkSDunt7UfkgywhTCQA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$M times N$]), + node((0, 1), [$M tpr N$]), + node((1, 1), [$A$]), + arr((0, 0), (1, 1), [$f$]), + arr((0, 1), (1, 1), [$exists !$], "dashed"), + arr((0, 0), (0, 1), []), + ), + ) + + We might simply say $M tpr N$ is the tensor product of $M$ and $N$. ] #remark[ - In other words, $M tpr N$ is an initial object of the category of all balanced products $M times N -> A$ (where a morphism is a group homomorphism $A -> A'$). + In other words, $M tpr N$ is an initial object of the category of all balanced products $M times N -> A$ (where a morphism is a group homomorphism $A -> A'$). ] #lemma[The tensor product $M times N -> M tpr N$ exists, up to a unique isomorphism, for any #rrm $M$ and #lrm $N$.] #proof[ -// #definition[ -// For any set $X$, let $k[X]$ denote the vector space spanned by $X$: $ sum_(x in X) a_x x $ where $a_x = 0$ for almost all $x in X$. -// ] -Consider the free abelian group $F$ with basis $M times N$, and let $i : M times N -> F$ be the inclusion map. $F$ has a subgroup $I$ generated by all elements of the following forms -$ - (x+x', y) - (x, y) - (x', y), \ - (x, y+y') - (x, y) - (x, y'), \ - (x r , y) - (x, r y), -$ -for $x, x' in M$, $y , y' in N$ and $r in R$. Define $M tpr N$ as $F over I$, and denote the coset $(x, y) + I$ by $x tp y$. Then, define the map $ - h : M times N &-> M tpr N, \ (x, y) &|-> x tp y. $ It is clear that $h$ is biadditive. + // #definition[ + // For any set $X$, let $k[X]$ denote the vector space spanned by $X$: $ sum_(x in X) a_x x $ where $a_x = 0$ for almost all $x in X$. + // ] + Consider the free abelian group $F$ with basis $M times N$, and let $i : M times N -> F$ be the inclusion map. $F$ has a subgroup $I$ generated by all elements of the following forms + $ + (x+x', y) - (x, y) - (x', y), \ + (x, y+y') - (x, y) - (x, y'), \ + (x r , y) - (x, r y), + $ + for $x, x' in M$, $y , y' in N$ and $r in R$. Define $M tpr N$ as $F over I$, and denote the coset $(x, y) + I$ by $x tp y$. Then, define the map $ + h : M times N &-> M tpr N, \ (x, y) &|-> x tp y. $ It is clear that $h$ is biadditive. -Let $f : M times N -> A$ be a balanced product, then there exists a homomorphism $f': F -> A$ which linearly extends $f$ such that $f = f' oo i$. Now we see that $I subset.eq Ker f'$ and thus $f'$ induces a map $ - hat(f) : F over I &-> A, \ + Let $f : M times N -> A$ be a balanced product, then there exists a homomorphism $f': F -> A$ which linearly extends $f$ such that $f = f' oo i$. Now we see that $I subset.eq Ker f'$ and thus $f'$ induces a map $ + hat(f) : F over I &-> A, \ (x, y) + I &|-> f'(x, y) = f(x, y), -$ -which is the same as saying -$ - hat(f) : M tpr N &-> A, \ - x tp y &|-> f(x, y). $ -Thus we see that $hat(f) oo h = f$, and we can conclude that $M tpr N$ is a tensor product of $M$ and $N$. The uniqueness follows from the universal property. -// Now we look at $k[V times W]$ (a free vector space). This is large: even if $V$ and $W$ have finite dimensions this vector space has infinite. We look at the subspace spanned by the relations $ M = "span"{(v + v', w) - (v, w) - (v', w) \ (v, w + w') - (v, w) - (v, w') \ c(v, w) - (c v, w) \ c(v, w) - (c w, v)} $ TODO -// for all $v, v' in V$ and $w, w' in W$ and $c in k$. Then we have -// $ -// homk (k[V times W] \/ M, L) tilde.eq "Bilin"(V, W; L) -// $ -// due to the first isomorphism theorem. We see that if $T in homk (k[V times W] \/ M, L)$ then $T$ is a linear transformation $k[V times W] -> L$ such that $T(M) = 0$. For any $(v, w) in V times W$: -// $ V times W -> k[V times W] -> k[V times W] \/ M \ -// (v, w) |-> (v, w) |-> (v, w) + M $ -// We can thus define $V tpk W := k[V times W] \/ M$. + which is the same as saying + $ + hat(f) : M tpr N &-> A, \ + x tp y &|-> f(x, y). + $ + Thus we see that $hat(f) oo h = f$, and we can conclude that $M tpr N$ is a tensor product of $M$ and $N$. The uniqueness follows from the universal property. + // Now we look at $k[V times W]$ (a free vector space). This is large: even if $V$ and $W$ have finite dimensions this vector space has infinite. We look at the subspace spanned by the relations $ M = "span"{(v + v', w) - (v, w) - (v', w) \ (v, w + w') - (v, w) - (v, w') \ c(v, w) - (c v, w) \ c(v, w) - (c w, v)} $ TODO + // for all $v, v' in V$ and $w, w' in W$ and $c in k$. Then we have + // $ + // homk (k[V times W] \/ M, L) tilde.eq "Bilin"(V, W; L) + // $ + // due to the first isomorphism theorem. We see that if $T in homk (k[V times W] \/ M, L)$ then $T$ is a linear transformation $k[V times W] -> L$ such that $T(M) = 0$. For any $(v, w) in V times W$: + // $ V times W -> k[V times W] -> k[V times W] \/ M \ + // (v, w) |-> (v, w) |-> (v, w) + M $ + // We can thus define $V tpk W := k[V times W] \/ M$. ] #lemma[ - Let $phi : M -> M'$ and $psi : N -> N'$ be module homomorphisms, then there exists a unique group homomorphism $phi tp psi : M tpr N -> M' tpr N'$, such that $ phi tp psi : m tp n mapsto phi(m) tp psi(n) $ + Let $phi : M -> M'$ and $psi : N -> N'$ be module homomorphisms, then there exists a unique group homomorphism $phi tp psi : M tpr N -> M' tpr N'$, such that $ phi tp psi : m tp n mapsto phi(m) tp psi(n) $ ] #proof[ - The function $ f : M times N &-> M' tpr N' \ (m, n) &|-> phi(m) tp psi(n) $ - is $R$-biadditive. Therefore, $f$ induces a unique homomorphism - $ - hat(f): M tpr N &-> M' tpr N' \ - m tp n &|-> phi(m) tp psi(n) - $ - which we write as $phi tp psi$. + The function $ f : M times N &-> M' tpr N' \ (m, n) &|-> phi(m) tp psi(n) $ + is $R$-biadditive. Therefore, $f$ induces a unique homomorphism + $ + hat(f): M tpr N &-> M' tpr N' \ + m tp n &|-> phi(m) tp psi(n) + $ + which we write as $phi tp psi$. ] #corollary[ @@ -94,11 +99,11 @@ Thus we see that $hat(f) oo h = f$, and we can conclude that $M tpr N$ is a tens #proof[Both send $m tp n$ to $phi'(phi(m)) tp psi'(psi(n))$, but such a homomorphism should be unique. ] #corollary[ - Let $M$ be a #rrm and $N$ be a #lrm, then we have functors + Let $M$ be a #rrm and $N$ be a #lrm, then we have functors $ M tpr - : RMod &-> Ab \ - B &|-> M tpr B \ - (g:B-> B') &mapsto id_M tp g + B &|-> M tpr B \ + (g:B-> B') &mapsto id_M tp g $ $ - tpr N : ModR &-> Ab \ @@ -110,13 +115,13 @@ Thus we see that $hat(f) oo h = f$, and we can conclude that $M tpr N$ is a tens == Bimodules and Bilinearity #definition[ - Let $R, S$ be rings. An *$R$-$S$-bimodule* is an abelian group $M$ being both a left $R$-module and a right $S$-module, satisfying: - $ r(m s) = (r m) s $ - for all $m in M, r in R, s in S$. + Let $R, S$ be rings. An *$R$-$S$-bimodule* is an abelian group $M$ being both a left $R$-module and a right $S$-module, satisfying: + $ r(m s) = (r m) s $ + for all $m in M, r in R, s in S$. ] #example[ - Any #lrm is an $R$-$ZZ$-bimodule, and any #rrm is a $ZZ$-$R$-bimodule. + Any #lrm is an $R$-$ZZ$-bimodule, and any #rrm is a $ZZ$-$R$-bimodule. ] #example[ When $R$ is commutative, any $R$-module can be seen as an $R$-$R$-bimodule. @@ -124,42 +129,42 @@ Thus we see that $hat(f) oo h = f$, and we can conclude that $M tpr N$ is a tens #proposition[ - Let $Q, R, S$ be rings, $M$ be a $Q$-$R$-bimodule, and $N$ be an $R$-$S$-bimodule. Then $M tpr N$ is a $Q$-$S$-bimodule. + Let $Q, R, S$ be rings, $M$ be a $Q$-$R$-bimodule, and $N$ be an $R$-$S$-bimodule. Then $M tpr N$ is a $Q$-$S$-bimodule. ] #proof[ - // See @li[Proposition 6.5.9]. - Let $q in Q$ and $s in S$. Then $f: m |-> q m$ is a homomorphism $M -> M$ and $g: n |-> n s$ is a homomorphism $N -> N$. Then $f tp id_N$ gives a left multiplication on $M tpr N$ and $id_M tp g$ gives a right multiplication on $M tpr N$, which satisfies $(f tp id_N) oo (id_M tp g) = f tp g = (id_M tp g) oo (f tp id_N)$. - ] + // See @li[Proposition 6.5.9]. + Let $q in Q$ and $s in S$. Then $f: m |-> q m$ is a homomorphism $M -> M$ and $g: n |-> n s$ is a homomorphism $N -> N$. Then $f tp id_N$ gives a left multiplication on $M tpr N$ and $id_M tp g$ gives a right multiplication on $M tpr N$, which satisfies $(f tp id_N) oo (id_M tp g) = f tp g = (id_M tp g) oo (f tp id_N)$. +] // In this case we know $M tpr N$ is not merely an abelian group. #definition[ - If $R$ is a commutative ring and $M, N, A$ are $R$-modules, a map $f : M times N -> A$ is called *$R$-bilinear* if it is $R$-biadditive and also - $ f(r x , y) = f(x, r y) = r f(x, y) $ - for all $x in M$, $y in N$ and $ r in R$. + If $R$ is a commutative ring and $M, N, A$ are $R$-modules, a map $f : M times N -> A$ is called *$R$-bilinear* if it is $R$-biadditive and also + $ f(r x , y) = f(x, r y) = r f(x, y) $ + for all $x in M$, $y in N$ and $ r in R$. ] #proposition[ - Let $R$ be a commutative ring and $A, B$ be $R$-modules. Then $A tpr B$ is an $R$-module and $h: A times B -> A tpr B$ is $R$-bilinear. - - Further, for any $R$-bilinear map $g : A times B -> C$, there exists an $R$-homomorphism $hat(g) : A tpr B -> C$ such that $g = hat(g) oo h$. + Let $R$ be a commutative ring and $A, B$ be $R$-modules. Then $A tpr B$ is an $R$-module and $h: A times B -> A tpr B$ is $R$-bilinear. + + Further, for any $R$-bilinear map $g : A times B -> C$, there exists an $R$-homomorphism $hat(g) : A tpr B -> C$ such that $g = hat(g) oo h$. ] #proof[ - // See @rotman[Proposition 2.55]. - Viewing $A$, $B$ as $R$-$R$-bimodules, we easily see that $A tpr B$ is also an $R$-$R$-bimodule (i.e., an $R$-module) with (left) multiplication given by $(a |-> r a) tp id_B$, hence $r(a tp b) = (r a) tp b = a tp (r b)$ and $h$ is $R$-bilinear. + // See @rotman[Proposition 2.55]. + Viewing $A$, $B$ as $R$-$R$-bimodules, we easily see that $A tpr B$ is also an $R$-$R$-bimodule (i.e., an $R$-module) with (left) multiplication given by $(a |-> r a) tp id_B$, hence $r(a tp b) = (r a) tp b = a tp (r b)$ and $h$ is $R$-bilinear. - Suppose $g : A times B -> C$ is an $R$-bilinear map. Then $g$ is $R$-biadditive and $g$ induces a $ZZ$-homomorphism $hat(g) : A tpr B -> C$ such that $g = hat(g) oo h$. We only need to show that $hat(g)$ is also an $R$-homomorphism. Let $r in R$. Then $hat(g) (r (a tp b)) = hat(g) ((r a) tp b) = g(r a, b) = r g(a, b) = r hat(g) (a tp b)$. + Suppose $g : A times B -> C$ is an $R$-bilinear map. Then $g$ is $R$-biadditive and $g$ induces a $ZZ$-homomorphism $hat(g) : A tpr B -> C$ such that $g = hat(g) oo h$. We only need to show that $hat(g)$ is also an $R$-homomorphism. Let $r in R$. Then $hat(g) (r (a tp b)) = hat(g) ((r a) tp b) = g(r a, b) = r g(a, b) = r hat(g) (a tp b)$. ] // In this section, let $R$ be a commutative ring unless stated otherwise. // #definition[ // Let $M, N, P$ be $R$-modules. A map $f : M times N -> P$ is called *bilinear* if the following identities are satisfied: - + // $ // f(m + m', n) = f(m, n) + f(m', n) \ // f(m, n + n') = f(m, n) + f(m, n') \ // f(r m, n) = r f(m, n) = f(m, r n) // $ - + // ] @@ -167,7 +172,7 @@ Thus we see that $hat(f) oo h = f$, and we can conclude that $M tpr N$ is a tens // Denote // $ "Hom"_k (V, W) := "Hom"_veck (V, W) $ as the set of linear transformations $V -> W$, and it is a $k$-vector space (in a natural way). -// // We denote the same set by $#underline("Hom") (V, W)$ to emphasise the vector space structure. +// // We denote the same set by $#underline("Hom") (V, W)$ to emphasise the vector space structure. // We see that @@ -204,7 +209,7 @@ Thus we see that $hat(f) oo h = f$, and we can conclude that $M tpr N$ is a tens // $ -// Note: $V tpk W$ is defined up to a unique isomorphism. This follows from the universal property (ref. category theory). +// Note: $V tpk W$ is defined up to a unique isomorphism. This follows from the universal property (ref. category theory). // // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBGAXVJADcBDAGwFcYkQA1AAjwFt4uAdRABfUuky58hFOVLFqdJq3bccaANZDR4kBmx4CROQCZFDFm0ScemgOTaRimFADm8IqABmAJwi8kMhAcCCRyMW8-AMQgkKQTCJBff3iaOMQ5EEYsMCsQKHo4AAsXEBoAIxgwKCQAZiCLFWsYAA8sOBw4LgBCHUiUjLTQxBMKqprEepps3PYC4tKaRrzW9s6e0UoRIA // #align(center, commutative-diagram( @@ -222,14 +227,14 @@ Thus we see that $hat(f) oo h = f$, and we can conclude that $M tpr N$ is a tens == Further Properties #proposition[ - If $R$ is a ring, $M$ is a #rrm and $N$ is a #lrm, then there is a natural $ZZ$-isomorphism + If $R$ is a ring, $M$ is a #rrm and $N$ is a #lrm, then there is a natural $ZZ$-isomorphism $ tau : M tpr N &-> N tp_(R^op) M \ - m tp n &|-> n tp m + m tp n &|-> n tp m $ ] #proof[ - This follows from the fact that a map $f: M times N -> A$ is $R$-biadditive if and only if the map $g: N times M -> A$ defined by $g(n, m) = f(m, n)$ is $R^op$-biadditive. + This follows from the fact that a map $f: M times N -> A$ is $R$-biadditive if and only if the map $g: N times M -> A$ defined by $g(n, m) = f(m, n)$ is $R^op$-biadditive. ] // #proof[ // Consider map @@ -242,18 +247,18 @@ Thus we see that $hat(f) oo h = f$, and we can conclude that $M tpr N$ is a tens // ] #corollary[ - If $R$ is a commutative ring and $M$, $N$ are $R$-modules, then there is a natural $R$-isomorphism + If $R$ is a commutative ring and $M$, $N$ are $R$-modules, then there is a natural $R$-isomorphism $ tau: M tpr N &-> N tpr M \ - m tp n &mapsto n tp m + m tp n &mapsto n tp m $ ] #proposition[ - Given a #rrm $A$, an $R$-$S$-bimodule $B$, and a left $S$-module $C$, there is an isomorphism + Given a #rrm $A$, an $R$-$S$-bimodule $B$, and a left $S$-module $C$, there is an isomorphism $ - theta : A tpr (B tp_S C) iso (A tpr B) tp_S C, + theta : A tpr (B tp_S C) iso (A tpr B) tp_S C, $ given by $a tp (b tp c) |-> (a tp b) tp c$. ] @@ -263,15 +268,17 @@ Thus we see that $hat(f) oo h = f$, and we can conclude that $M tpr N$ is a tens ] #corollary[ - Let $R$ be a commutative ring, and let $M_1, M_2, ..., M_n$ be $R$-modules. Let $sigma in S_n$ (where $S_n$ is the symmetric group of degree $n$), then - $ ( ... (M_1 tpr M_2) tpr ... tpr M_n) iso ( ... (M_sigma(1) tpr M_sigma(2)) tpr ... tpr M_sigma(n)) $ + Let $R$ be a commutative ring, and let $M_1, M_2, ..., M_n$ be $R$-modules. Let $sigma in S_n$ (where $S_n$ is the symmetric group of degree $n$), then + $ + ( ... (M_1 tpr M_2) tpr ... tpr M_n) iso ( ... (M_sigma(1) tpr M_sigma(2)) tpr ... tpr M_sigma(n)) + $ ] #proof[ Notice that both solve the universal mapping problem of $R$-$n$-linear functions. ] #proposition[ - Given ring $R$ and #lrm $M$, there is a natural $R$-isomorphism + Given ring $R$ and #lrm $M$, there is a natural $R$-isomorphism $ phi_M : R tpr M &-> M \ r tp m &|-> r m @@ -279,7 +286,7 @@ Thus we see that $hat(f) oo h = f$, and we can conclude that $M tpr N$ is a tens ] #proof[ - $f : R times M -> M$ defined by $(r, m) mapsto r m$ is $R$-biadditive and thus induces an $R$-homomorphism $phi: R tpr M -> M$ with $r tp m |-> r m$. Now $g : M -> R tpr M$ defined by $g : m mapsto 1 tp m$ satisfies that $phi g$ and $g phi$ are identity maps, so $phi$ is an $R$-isomorphism. + $f : R times M -> M$ defined by $(r, m) mapsto r m$ is $R$-biadditive and thus induces an $R$-homomorphism $phi: R tpr M -> M$ with $r tp m |-> r m$. Now $g : M -> R tpr M$ defined by $g : m mapsto 1 tp m$ satisfies that $phi g$ and $g phi$ are identity maps, so $phi$ is an $R$-isomorphism. ] // $"Bilin"(V, W; -) tilde.eq "Bilin"(W, V; -)$ in a canonical way and hence $V tpk W tilde.eq W tpk V$. Also $k tpk W tilde.eq W$. @@ -306,7 +313,7 @@ Thus we see that $hat(f) oo h = f$, and we can conclude that $M tpr N$ is a tens Let $R$ be a commutative ring, then the category $(RMod, tpr)$ is a monoidal category. In particular, for a field $k$, the category $(veck, tpk)$ is a monoidal category. ] #proof[ - The identity for $tpr$ in $RMod$ is clearly given by $R$. + The identity for $tpr$ in $RMod$ is clearly given by $R$. ] #definition[ A *monoid object* in a monoidal category $(cC, tp, I)$ is an object $M$ with two morphisms: @@ -315,46 +322,52 @@ Thus we see that $hat(f) oo h = f$, and we can conclude that $M tpr N$ is a tens such that the following diagrams commute: // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAAoBZAAhzW84BKXv04gAvqXSZc+QigCM5KrUYs2PPty4iBgiVJAZseAkQBMy6vWatEITaIPSTci6QUqb6+2MkvZMxQyT2s1OwddPxUYKABzeCJQADMAJwgAWyQAFmocCCQAZjDbNgymZxA0zKRLEHyikp8QcsrqrMQyeoLEXNVS+3LdLCgAfT9DdqQuhsQlfubGNAALOjb0jvnZuu8IkfHuXVbxCnEgA -#align(center, commutative-diagram( - node-padding: (70pt, 50pt), - node((0, 0), [$(M tp M) tp M$]), - node((0, 1), [$M tp (M tp M)$]), - node((0, 2), [$M tp M$]), - node((1, 2), [$M$]), - node((1, 0), [$M tp M$]), - arr((1, 0), (1, 2), [$mu$]), - arr((0, 2), (1, 2), [$mu$]), - arr((0, 0), (1, 0), [$mu tp id_M$]), - arr((0, 0), (0, 1), [$alpha$]), - arr((0, 1), (0, 2), [$id_M tp mu$]), -)) -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAEkACHNTgWRABfUuky58hFAEZyVWoxZs+3XgOGjseAkQBMs6vWatEIZT07shIkBk0SiMqXMOKTauTCgBzeEVAAzACcIAFskMhAcCCQZeSM2GBw6FU4sKAB9NWsg0KQ9SOjEWJdjEDTMlMS6KwDgsKLqKKQAZgMFUpCmGpAc+oimxFa41xAGOhCAIyhq9R66vMbCoZK2QIALaMEKQSA -#align(center, commutative-diagram( - node-padding: (70pt, 50pt), - node((0, 0), [$I tp M$]), - node((0, 1), [$M tp M$]), - node((0, 2), [$M tp I$]), - node((1, 1), [$M$]), - arr((0, 0), (0, 1), [$eta tp id_M$]), - arr((0, 2), (0, 1), label-pos:-.8em, [$id_M tp eta$]), - arr((0, 1), (1, 1), [$mu$]), - arr((0, 0), (1, 1), [$lambda$], label-pos: right), - arr((0, 2), (1, 1), label-pos: left, [$rho$]), -)) - where $alpha$, $lambda$, $rho$ are natural isomorphisms for the associativity, the left identity and the right identity, respectively. + #align( + center, + commutative-diagram( + node-padding: (70pt, 50pt), + node((0, 0), [$(M tp M) tp M$]), + node((0, 1), [$M tp (M tp M)$]), + node((0, 2), [$M tp M$]), + node((1, 2), [$M$]), + node((1, 0), [$M tp M$]), + arr((1, 0), (1, 2), [$mu$]), + arr((0, 2), (1, 2), [$mu$]), + arr((0, 0), (1, 0), [$mu tp id_M$]), + arr((0, 0), (0, 1), [$alpha$]), + arr((0, 1), (0, 2), [$id_M tp mu$]), + ), + ) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAEkACHNTgWRABfUuky58hFAEZyVWoxZs+3XgOGjseAkQBMs6vWatEIZT07shIkBk0SiMqXMOKTauTCgBzeEVAAzACcIAFskMhAcCCQZeSM2GBw6FU4sKAB9NWsg0KQ9SOjEWJdjEDTMlMS6KwDgsKLqKKQAZgMFUpCmGpAc+oimxFa41xAGOhCAIyhq9R66vMbCoZK2QIALaMEKQSA + #align( + center, + commutative-diagram( + node-padding: (70pt, 50pt), + node((0, 0), [$I tp M$]), + node((0, 1), [$M tp M$]), + node((0, 2), [$M tp I$]), + node((1, 1), [$M$]), + arr((0, 0), (0, 1), [$eta tp id_M$]), + arr((0, 2), (0, 1), label-pos: -.8em, [$id_M tp eta$]), + arr((0, 1), (1, 1), [$mu$]), + arr((0, 0), (1, 1), [$lambda$], label-pos: right), + arr((0, 2), (1, 1), label-pos: left, [$rho$]), + ), + ) + where $alpha$, $lambda$, $rho$ are natural isomorphisms for the associativity, the left identity and the right identity, respectively. ] #definition[ Let $k$ be a field. A (unital associative) *$k$-algebra* is a monoid object in $(veck, tpk)$. ] #remark[ Let $M$ be a $k$-algebra, then -$M$ is a $k$-vector space equipped with bilinear multiplication $mu: M tpk M -> M$ and unit $eta: k -> M$ which sends $1 in k$ to $i(1) in M$, the multiplicative unit. + $M$ is a $k$-vector space equipped with bilinear multiplication $mu: M tpk M -> M$ and unit $eta: k -> M$ which sends $1 in k$ to $i(1) in M$, the multiplicative unit. -An equivalent definition: $M$ is both a $k$-vector space and a unital ring, where the ring multiplication satisfies -$ - a (x y) = (a x) y = x( a y) \ -$ -for all $a in k$ and $x,y in M$. + An equivalent definition: $M$ is both a $k$-vector space and a unital ring, where the ring multiplication satisfies + $ + a (x y) = (a x) y = x( a y) \ + $ + for all $a in k$ and $x,y in M$. ] // #definition[ @@ -371,9 +384,9 @@ for all $a in k$ and $x,y in M$. $(veck, tpk)$ is a *symmetric monoidal category*, where the tensor product is commutative. ] #remark[ -In $Set$, -$ hom(X times Y, Z) = hom(X, hom (Y, Z)). $ -$Set$ is a *cartesian monoidal category*, where the categorical product is the same as the tensor product. + In $Set$, + $ hom(X times Y, Z) = hom(X, hom (Y, Z)). $ + $Set$ is a *cartesian monoidal category*, where the categorical product is the same as the tensor product. ] @@ -383,9 +396,9 @@ $Set$ is a *cartesian monoidal category*, where the categorical product is the s // == More discussions #remark[ For vector spaces $V, W$ over field $k$, -$ dim (V ds W) = dim V + dim W, quad dim (V tp W) = dim V dot dim W. $ + $ dim (V ds W) = dim V + dim W, quad dim (V tp W) = dim V dot dim W. $ -An alternative definition of the tensor product: let $V$ be a vector space with basis ${v_i}_(i in I)$ and $W$ with ${w_j}_(j in J)$ and define $V tpk W$ as the vector space with basis ${v_i tp w_j}_(i in I, j in J)$. This definition relies on the choice of basis and can be inconvenient when we have to change basis. + An alternative definition of the tensor product: let $V$ be a vector space with basis ${v_i}_(i in I)$ and $W$ with ${w_j}_(j in J)$ and define $V tpk W$ as the vector space with basis ${v_i tp w_j}_(i in I, j in J)$. This definition relies on the choice of basis and can be inconvenient when we have to change basis. ] == Tensor-hom Adjunction @@ -403,8 +416,8 @@ An alternative definition of the tensor product: let $V$ be a vector space with Then this makes $hom_S (B, -)$ a functor from $ModS$ to $ModR$. #theorem[ - Let $R$, $S$ be rings. Let $A$ be a #rrm, $B$ be an $R$-$S$-bimodule, and $C$ be a right $S$-module. Then we have a canonical isomorphism -$ tau: hom_S (A tpr B, C) bij hom_R (A, hom_S (B, C)) $ + Let $R$, $S$ be rings. Let $A$ be a #rrm, $B$ be an $R$-$S$-bimodule, and $C$ be a right $S$-module. Then we have a canonical isomorphism + $ tau: hom_S (A tpr B, C) bij hom_R (A, hom_S (B, C)) $ where for $f : A tpr B -> C$, $a in A$, and $b in B$, $ tau(f)(a)(b) = f(a tp b) @@ -419,11 +432,11 @@ $ tau: hom_S (A tpr B, C) bij hom_R (A, hom_S (B, C)) $ It remains to be shown that $tau$ is surjective. Take any $R$-homomorphism $g : A -> hom_S (B, C)$, define $phi: A times B -> C$ by $phi(a, b) = g(a)(b)$. Now it is easy to check that $phi$ is $R$-biadditive and hence there exists a group homomorphism $hat(phi) : A tpr B -> C$ such that $hat(phi) (a tp b) = phi(a, b) = g(a)(b)$ for all $a in A$ and $b in B$. Therefore $g = tau(hat(phi))$ and $tau$ is surjective. - Verifying the naturality of $tau$ is omitted. + Verifying the naturality of $tau$ is omitted. ] #corollary[ Let $R$, $S$ be rings and let $B$ be an $R$-$S$-bimodule. - We have an adjunction + We have an adjunction $ (- tpr B) tack.l hom_S (B, -) $ @@ -436,11 +449,11 @@ $ tau: hom_S (A tpr B, C) bij hom_R (A, hom_S (B, C)) $ #theorem[ - Let $A$ be a left $R$-module, $B$ be an $S$-$R$-bimodule, and $C$ be a left $S$-module, then there is a canonical isomorphism + Let $A$ be a left $R$-module, $B$ be an $S$-$R$-bimodule, and $C$ be a left $S$-module, then there is a canonical isomorphism $ hom_S (B tpr A, C) bij hom_R (A, hom_S (B, C)) $ - Thus $(B tpr -): RMod -> SMod$ and $hom_S (B, -): SMod -> RMod$ form an adjunction + Thus $(B tpr -): RMod -> SMod$ and $hom_S (B, -): SMod -> RMod$ form an adjunction $ (B tpr -) tack.l hom_S (B, -) $ @@ -461,44 +474,46 @@ $ tau: hom_S (A tpr B, C) bij hom_R (A, hom_S (B, C)) $ #example[ - Let $R$ be a commutative ring. Given $R$-modules $N$ and $M$, suppose we want to calculate $N tp_R M$, then we can pick the relations and generators of $N$: -$ R^(ds J) -> R^(ds I) -> N -> 0 $ - Consider $R^(ds J) -> R^(ds I)$, this homomorphism between free modules can be represented by a (possibly infinite) matrix $a_(i j) in R$. Therefore, we can write - $ N = Coker(R^(ds J) rgt((a_(i j))) R^(ds I)) $ - - Notice that the same matrix can also act as $M^(ds J) -> M^(ds I) $, hence + Let $R$ be a commutative ring. Given $R$-modules $N$ and $M$, suppose we want to calculate $N tp_R M$, then we can pick the relations and generators of $N$: + $ R^(ds J) -> R^(ds I) -> N -> 0 $ + Consider $R^(ds J) -> R^(ds I)$, this homomorphism between free modules can be represented by a (possibly infinite) matrix $a_(i j) in R$. Therefore, we can write + $ N = Coker(R^(ds J) rgt((a_(i j))) R^(ds I)) $ - $ N tpr M = Coker(R^(ds J) rgt((a_(i j))) R^(ds I)) tpr M iso Coker(R^(ds J) tpr M rgt((a_(i j))) R^(ds I) tpr M) \ iso Coker((R tpr M)^(ds J) rgt((a_(i j))) (R tpr M)^(ds I)) iso Coker (M^(ds J) rgt((a_(i j))) M^(ds I)) $ + Notice that the same matrix can also act as $M^(ds J) -> M^(ds I) $, hence + + $ + N tpr M = Coker(R^(ds J) rgt((a_(i j))) R^(ds I)) tpr M iso Coker(R^(ds J) tpr M rgt((a_(i j))) R^(ds I) tpr M) \ iso Coker((R tpr M)^(ds J) rgt((a_(i j))) (R tpr M)^(ds I)) iso Coker (M^(ds J) rgt((a_(i j))) M^(ds I)) + $ ] // The functor $- tp_R M$ is left adjoint so it commutes with colimits. In particular, it sends cokernels to cokernels and is right exact. It also preserves direct sums. -// If we want to calculate $N tp_R M$. +// If we want to calculate $N tp_R M$. // Then we have // $ R^(ds J) tp_R M -> R^(ds I) tp_R M -> N tp_R M -> 0 $ -// Note that $ R^(ds J) tp_R M iso (R tp_R M)^(ds J) = M^(ds J) $ and so it becomes +// Note that $ R^(ds J) tp_R M iso (R tp_R M)^(ds J) = M^(ds J) $ and so it becomes // $ M^(ds J) -> M^(ds I) -> N tp_R M -> 0 $ -// Assume $R$ is a commutative ring. The functor $- tp_R M$ is left adjoint which implies that it is right exact and commutes with all colimits. +// Assume $R$ is a commutative ring. The functor $- tp_R M$ is left adjoint which implies that it is right exact and commutes with all colimits. #example[ - Suppose $I$ is an ideal of $R$ generated by ${x_i}_(i in J)$, then we have #sest $ ses(I, R, R \/ I) $ On the other hand, $ R^(ds J) -> I -> 0 $ and thus + Suppose $I$ is an ideal of $R$ generated by ${x_i}_(i in J)$, then we have #sest $ ses(I, R, R \/ I) $ On the other hand, $ R^(ds J) -> I -> 0 $ and thus $ R^(ds J) rgt((x_j)) R -> R \/ I -> 0 $ Let $M$ be a left $R$-module, then - $ (R over I )tpr M iso Coker (M^(ds J) rgt((x_j)) M) = M over I M $ + $ (R over I )tpr M iso Coker (M^(ds J) rgt((x_j)) M) = M over I M $ ] - + // [Check https://math.stackexchange.com/questions/175789/how-to-prove-that-r-i-otimes-r-m-cong-m-im] -#example[ The *localisation* of a commutative ring $R$ at element $x$ is defined as $R[t] over (t x - 1)$, denoted as $R[x^(-1)]$. +#example[ The *localisation* of a commutative ring $R$ at element $x$ is defined as $R[t] over (t x - 1)$, denoted as $R[x^(-1)]$. -For $R$-module $M$, we have + For $R$-module $M$, we have $ R[x^(-1)] tpr M iso M[x^(-1)] $ ] diff --git a/ha/4-enough.typ b/ha/4-enough.typ index 911f175..3918344 100644 --- a/ha/4-enough.typ +++ b/ha/4-enough.typ @@ -9,11 +9,11 @@ // $I$ is injective if and only if it has the extension property. // ] -= Enough Projectives and Injectives += Enough Projectives and Injectives #definition[ - An abelian category $cA$ is said to *have enough projectives* (resp. *injectives*) if for any object $M$ there is an epimorphism $P-> M -> 0$ where $P$ is projective (resp. a monomorphism $0 -> M->I$ where $I$ is injective). + An abelian category $cA$ is said to *have enough projectives* (resp. *injectives*) if for any object $M$ there is an epimorphism $P-> M -> 0$ where $P$ is projective (resp. a monomorphism $0 -> M->I$ where $I$ is injective). ] For most of our homological algebra to work, an abelian category needs to have enough projectives and injectives. We will show that $RMod$ has enough projectives and injectives. @@ -23,24 +23,27 @@ For most of our homological algebra to work, an abelian category needs to have e #lemma[Free $R$-modules are projective.] #proof[ -Let $F eq plus.circle.big_(i in I) R x_i$ be a free $R$-module with basis -$lr({x_i colon i in I})$. Suppose $pi:A-> B$ is an epimorphism and $f : F->B$ is a morphism, as in the following diagram: -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRACEQBfU9TXfIRQAmclVqMWbAAzdeIDNjwEi0sdXrNWiEAEE5fJYKJlp4zVJ0AxbuJhQA5vCKgAZgCcIAWyQBmajgQSGoSWmyuBiAe3sEBQYjEPG6ePoiiIIGxoZYKWJHRqf4Z8ekMWGDaIFB0cAAW9iAakpWMaLV0tlxAA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((1, 1), [$B$]), - node((1, 2), [$0$]), - node((1, 0), [$A$]), - node((0, 1), [$F$]), - arr((0, 1), (1, 1), [$f$]), - arr((1, 1), (1, 2), []), - arr((1, 0), (1, 1), [$pi$]), - arr((0, 1), (1, 0), [$alpha$], label-pos:-1em, "dashed"), -)) - -Since $pi$ is surjective, for each $i$ there is some $a_i in A$ with -$pi lr((a_i)) eq f lr((x_i))$. Define map -$ alpha colon F arrow.r A$ by $alpha lr((x_i)) eq a_i$ and we have $f = pi oo alpha$. + Let $F eq plus.circle.big_(i in I) R x_i$ be a free $R$-module with basis + $lr({x_i colon i in I})$. Suppose $pi:A-> B$ is an epimorphism and $f : F->B$ is a morphism, as in the following diagram: + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRACEQBfU9TXfIRQAmclVqMWbAAzdeIDNjwEi0sdXrNWiEAEE5fJYKJlp4zVJ0AxbuJhQA5vCKgAZgCcIAWyQBmajgQSGoSWmyuBiAe3sEBQYjEPG6ePoiiIIGxoZYKWJHRqf4Z8ekMWGDaIFB0cAAW9iAakpWMaLV0tlxAA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((1, 1), [$B$]), + node((1, 2), [$0$]), + node((1, 0), [$A$]), + node((0, 1), [$F$]), + arr((0, 1), (1, 1), [$f$]), + arr((1, 1), (1, 2), []), + arr((1, 0), (1, 1), [$pi$]), + arr((0, 1), (1, 0), [$alpha$], label-pos: -1em, "dashed"), + ), + ) + + Since $pi$ is surjective, for each $i$ there is some $a_i in A$ with + $pi lr((a_i)) eq f lr((x_i))$. Define map + $ alpha colon F arrow.r A$ by $alpha lr((x_i)) eq a_i$ and we have $f = pi oo alpha$. ] #proposition[$P$ is a projective $R$-module if and only if $P$ is a direct summand of a free module. @@ -49,55 +52,61 @@ $ alpha colon F arrow.r A$ by $alpha lr((x_i)) eq a_i$ and we have $f = pi oo al #proof[ Assume $P$ is a projective. Then we can always find a free module $F=R^(ds I)$ such that $g: F -> P$ is onto. Using the lifting property, -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBGAXVJADcBDAGwFcYkQAxEAX1PU1z5CKchWp0mrdgAUefEBmx4CRAExiaDFm0Qhic-kqFFRxcVqm7Z3cTCgBzeEVAAzAE4QAtkjIgcEJHJeVw9vRFE-AMRVYJB3LyQAZhp-HxpGLDAdECh6OAALOxBNSWyYAA8sOBwEWPiw5MjAku12LCgeSm4gA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((1, 0), [$F$]), - node((1, 1), [$P$]), - node((1, 2), [$0$]), - node((0, 1), [$P$]), - arr((1, 0), (1, 1), [$g$]), - arr((1, 1), (1, 2), []), - arr((0, 1), (1, 0), label-pos:-1em, [$exists$], "dashed"), - arr((0, 1), (1, 1), [$id$]), -)) - -So there exists a section $P-> F$ in the #sest $ ses(K, F, P) $ -and hence $F iso K ds P$, where $K = Ker(g)$. This shows that $P$ is a direct summand of a free module. - -// [This is equivalent to find some idempotent $p: R^(ds I) -> R^(ds I)$ such that $p^2= p$. ? ] #TODO - -Now we show a direct summand of a free module is projective. -Suppose that $P$ is a direct summand of a free module. Then there -exists some $R$-module $P^prime$ such that $P xor P^prime$ is free. Let -$pi colon A arrow.r B$ be a surjection and let $f colon P arrow.r B$ be -some map. Let $f^prime colon P xor P^prime arrow.r B$ be the map -$f^prime lr((p comma p^prime)) eq f lr((p))$. Since $P xor P^prime$ is -free, hence projective, $f^prime$ has a lift -$alpha^prime colon P xor P^prime arrow.r A$. Now define -$alpha colon P arrow.r A$ by -$alpha lr((p)) eq alpha^prime lr((p comma 0))$ and it lifts $f$, showing that $P$ is projective. - -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAmAXVJADcBDAGwFcYkQAhEAX1PU1z5CKchWp0mrdgAYefEBmx4CRaWJoMWbRCACCc-kqFEyxcZqk6ACgAIocG1YDkBhQOXCSpaecnaQVjziMFAA5vBEoABmAE4QALZIoiA4EEjSvNFxiYhqKWmIxJkgsQlIACw0qekafuxRIDQARjBgUEgAzBnypTkdVQV5Fv5RLs2t7bnFvZ0DSTSMWGD+UPRwABYhjRJa7Exo6-RjIC1t6dPZFXOIyYvL7KsbW7W7OvuH26eTALRdF2WISr5TrcSjcIA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((2, 1), [$B$]), - node((2, 2), [$0$]), - node((2, 0), [$A$]), - node((1, 1), [$P ds P'$]), - node((0, 1), [$P$]), - arr((2, 0), (2, 1), [$pi$], label-pos: -1em), - arr((2, 1), (2, 2), []), - arr((0, 1), (2, 1), [$f$], curve: 30deg), - arr((1, 1), (2, 1), [$f'$], label-pos: -1em), - arr((1, 1), (2, 0), [$alpha'$], "dashed"), - arr((0, 1), (2, 0), [$alpha$], curve: -30deg, "dashed"), - arr((0, 1), (1, 1), [$i$], label-pos: -1em), -)) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBGAXVJADcBDAGwFcYkQAxEAX1PU1z5CKchWp0mrdgAUefEBmx4CRAExiaDFm0Qhic-kqFFRxcVqm7Z3cTCgBzeEVAAzAE4QAtkjIgcEJHJeVw9vRFE-AMRVYJB3LyQAZhp-HxpGLDAdECh6OAALOxBNSWyYAA8sOBwEWPiw5MjAku12LCgeSm4gA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((1, 0), [$F$]), + node((1, 1), [$P$]), + node((1, 2), [$0$]), + node((0, 1), [$P$]), + arr((1, 0), (1, 1), [$g$]), + arr((1, 1), (1, 2), []), + arr((0, 1), (1, 0), label-pos: -1em, [$exists$], "dashed"), + arr((0, 1), (1, 1), [$id$]), + ), + ) + + So there exists a section $P-> F$ in the #sest $ ses(K, F, P) $ + and hence $F iso K ds P$, where $K = Ker(g)$. This shows that $P$ is a direct summand of a free module. + + // [This is equivalent to find some idempotent $p: R^(ds I) -> R^(ds I)$ such that $p^2= p$. ? ] #TODO + + Now we show a direct summand of a free module is projective. + Suppose that $P$ is a direct summand of a free module. Then there + exists some $R$-module $P^prime$ such that $P xor P^prime$ is free. Let + $pi colon A arrow.r B$ be a surjection and let $f colon P arrow.r B$ be + some map. Let $f^prime colon P xor P^prime arrow.r B$ be the map + $f^prime lr((p comma p^prime)) eq f lr((p))$. Since $P xor P^prime$ is + free, hence projective, $f^prime$ has a lift + $alpha^prime colon P xor P^prime arrow.r A$. Now define + $alpha colon P arrow.r A$ by + $alpha lr((p)) eq alpha^prime lr((p comma 0))$ and it lifts $f$, showing that $P$ is projective. + + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAmAXVJADcBDAGwFcYkQAhEAX1PU1z5CKchWp0mrdgAYefEBmx4CRaWJoMWbRCACCc-kqFEyxcZqk6ACgAIocG1YDkBhQOXCSpaecnaQVjziMFAA5vBEoABmAE4QALZIoiA4EEjSvNFxiYhqKWmIxJkgsQlIACw0qekafuxRIDQARjBgUEgAzBnypTkdVQV5Fv5RLs2t7bnFvZ0DSTSMWGD+UPRwABYhjRJa7Exo6-RjIC1t6dPZFXOIyYvL7KsbW7W7OvuH26eTALRdF2WISr5TrcSjcIA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((2, 1), [$B$]), + node((2, 2), [$0$]), + node((2, 0), [$A$]), + node((1, 1), [$P ds P'$]), + node((0, 1), [$P$]), + arr((2, 0), (2, 1), [$pi$], label-pos: -1em), + arr((2, 1), (2, 2), []), + arr((0, 1), (2, 1), [$f$], curve: 30deg), + arr((1, 1), (2, 1), [$f'$], label-pos: -1em), + arr((1, 1), (2, 0), [$alpha'$], "dashed"), + arr((0, 1), (2, 0), [$alpha$], curve: -30deg, "dashed"), + arr((0, 1), (1, 1), [$i$], label-pos: -1em), + ), + ) ] #corollary[ - $RMod$ has enough projectives. + $RMod$ has enough projectives. ] #proof[ For any module $M$, we can find a free (and thus projective) module $F$ with a surjection $F-> M-> 0. $ @@ -117,89 +126,98 @@ $alpha lr((p)) eq alpha^prime lr((p comma 0))$ and it lifts $f$, showing that $P "$arrow.double.l$". // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAEEQBfU9TXfIRQBGclVqMWbdgHJuvEBmx4CRAExjq9Zq0QcZcnn2WCiAZk0SdbAELzjA1SjLDx2qXoCy3cTCgBzeCJQADMAJwgAWyQyEBwIJFE4uiwGNgALCAgAa3sQcKjE6nikDWTUjKzco3yI6MQyksQLcrS9TJy8gvrYpoAWLUldfK66oriExAGQBiwwYag6OHS-EEHrPUY0dLpDBW7S4snp92GtnYM1mbmFpZWoUcLmo6Rp2fm2ReXVrgouIA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$A$]), - node((0, 1), [$A'$]), - node((0, 2), [$A''$]), - node((0, 3), [$B$]), - node((1, 0), [$M$]), - arr((0, 0), (0, 1), [], "inj"), - arr((0, 1), (0, 2), [], "inj"), - arr((0, 2), (0, 3), [], "inj"), - arr((0, 0), (1, 0), [$f$]), - arr((0, 1), (1, 0), [$alpha'$], "dashed"), - arr((0, 2), (1, 0), [$alpha''$], curve: 10deg, "dashed"), - arr((0, 3), (1, 0), [], curve: 30deg, "dashed"), -)) + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$A$]), + node((0, 1), [$A'$]), + node((0, 2), [$A''$]), + node((0, 3), [$B$]), + node((1, 0), [$M$]), + arr((0, 0), (0, 1), [], "inj"), + arr((0, 1), (0, 2), [], "inj"), + arr((0, 2), (0, 3), [], "inj"), + arr((0, 0), (1, 0), [$f$]), + arr((0, 1), (1, 0), [$alpha'$], "dashed"), + arr((0, 2), (1, 0), [$alpha''$], curve: 10deg, "dashed"), + arr((0, 3), (1, 0), [], curve: 30deg, "dashed"), + ), + ) Fix some injection $i colon A arrow.r B$ of -$R$-modules, and some map $f colon A arrow.r M$. Without loss of -generality, assume that $A subset.eq B$ and $i$ is the inclusion. We would like to extend $f$ to some map $B -> M$. - - -[Construction of $A'$ and $alpha' : A' -> M$.] Let -$Sigma$ be the set whose elements are $R$-module maps -$alpha^prime colon A^prime arrow.r M$, where -$A subset.eq A^prime subset.eq B$ and $alpha^prime$ extends $f$. -We may give this set a partial order by -saying that $alpha^prime lt.eq alpha^(prime prime)$ when -$A^prime subset.eq A^(prime prime)$ and $alpha^(prime prime)$ extends -$alpha^prime$. -Suppose that $alpha_1 lt.eq alpha_2 lt.eq dots.h$ is an -ascending chain in $Sigma$, with corresponding modules -$A_1 subset.eq A_2 subset.eq dots.h$. -Let $A^prime eq union.big A_n$, and -define $alpha^prime colon A^prime arrow.r M$ by -$alpha^prime lr((a)) eq alpha_i lr((a))$ for $a in A_i$. -It is easy to -check that $alpha^prime$ is a well-defined element of $Sigma$, and it is -an upper bound on the chain \(in other words, we take the colimit -of the chain). -Since $Sigma$ is a partially ordered set in which every ascending chain -has an upper bound, by Zorn’s Lemma $Sigma$ has a maximal element, -which we call $alpha^prime colon A^prime -> M$. - -To show that $M$ -is injective, we need to show that $A^prime eq B$, since we then have an -extension $alpha$ of $f$ to $B$. - -[Construction of $phi : R-> M$.] Suppose that $A^prime eq.not B$. Let $b in B without A^prime$. Let -$ I eq { r in R:b r in A^prime} $ Then $I$ is a right ideal of -$R$, and we have a map - -$ - tilde(phi):I &->M \ - r &|-> alpha^prime lr((b r)). -$ -By assumption, this extends to a map $phi colon R arrow.r M$. - -[Construction of $alpha'' : A'' -> M$.] Define -$ A^(prime prime) eq A^prime plus R b = {a + r b : a in A', r in R} subset.eq B $ We -claim that there is a well-defined map -$ alpha^(prime prime) colon A^(prime prime) &arrow.r M \ a plus b r &arrow.r.bar alpha^prime lr((a)) plus phi lr((r)), $ -where $a in A^prime$ and $r in R$. To see that this is well-defined, -suppose that $a plus b r eq a^prime plus b r^prime$ -where $a, a' in A'$ and $r, r' in R$. -Then -$ a minus a^prime eq b lr((r^prime minus r)) in A^prime sect b R dot.basic $ - -From this we see $r - r' in I$, and then we have -$ phi lr((r^prime minus r)) - = alpha^prime lr((b lr((r^prime minus r)))) = alpha^prime lr((a minus a^prime)). $ - -Therefore, it follows that -$alpha^prime lr((a)) plus phi lr((r)) eq alpha^prime lr((a^prime)) plus phi lr((r^prime))$ -so $alpha^(prime prime)$ is well-defined. But then $alpha^(prime prime)$ -strictly extends $alpha^prime$, contradicting maximality of -$alpha^prime$. Hence $A^prime eq B$, so $M$ is injective. + $R$-modules, and some map $f colon A arrow.r M$. Without loss of + generality, assume that $A subset.eq B$ and $i$ is the inclusion. We would like to extend $f$ to some map $B -> M$. + + + [Construction of $A'$ and $alpha' : A' -> M$.] Let + $Sigma$ be the set whose elements are $R$-module maps + $alpha^prime colon A^prime arrow.r M$, where + $A subset.eq A^prime subset.eq B$ and $alpha^prime$ extends $f$. + We may give this set a partial order by + saying that $alpha^prime lt.eq alpha^(prime prime)$ when + $A^prime subset.eq A^(prime prime)$ and $alpha^(prime prime)$ extends + $alpha^prime$. + Suppose that $alpha_1 lt.eq alpha_2 lt.eq dots.h$ is an + ascending chain in $Sigma$, with corresponding modules + $A_1 subset.eq A_2 subset.eq dots.h$. + Let $A^prime eq union.big A_n$, and + define $alpha^prime colon A^prime arrow.r M$ by + $alpha^prime lr((a)) eq alpha_i lr((a))$ for $a in A_i$. + It is easy to + check that $alpha^prime$ is a well-defined element of $Sigma$, and it is + an upper bound on the chain \(in other words, we take the colimit + of the chain). + Since $Sigma$ is a partially ordered set in which every ascending chain + has an upper bound, by Zorn’s Lemma $Sigma$ has a maximal element, + which we call $alpha^prime colon A^prime -> M$. + + To show that $M$ + is injective, we need to show that $A^prime eq B$, since we then have an + extension $alpha$ of $f$ to $B$. + + [Construction of $phi : R-> M$.] Suppose that $A^prime eq.not B$. Let $b in B without A^prime$. Let + $ I eq { r in R:b r in A^prime} $ Then $I$ is a right ideal of + $R$, and we have a map + + $ + tilde(phi):I &->M \ + r &|-> alpha^prime lr((b r)). + $ + By assumption, this extends to a map $phi colon R arrow.r M$. + + [Construction of $alpha'' : A'' -> M$.] Define + $ + A^(prime prime) eq A^prime plus R b = {a + r b : a in A', r in R} subset.eq B + $ We + claim that there is a well-defined map + $ + alpha^(prime prime) colon A^(prime prime) &arrow.r M \ a plus b r &arrow.r.bar alpha^prime lr((a)) plus phi lr((r)), + $ + where $a in A^prime$ and $r in R$. To see that this is well-defined, + suppose that $a plus b r eq a^prime plus b r^prime$ + where $a, a' in A'$ and $r, r' in R$. + Then + $ a minus a^prime eq b lr((r^prime minus r)) in A^prime sect b R dot.basic $ + + From this we see $r - r' in I$, and then we have + $ + phi lr((r^prime minus r)) + = alpha^prime lr((b lr((r^prime minus r)))) = alpha^prime lr((a minus a^prime)). + $ + + Therefore, it follows that + $alpha^prime lr((a)) plus phi lr((r)) eq alpha^prime lr((a^prime)) plus phi lr((r^prime))$ + so $alpha^(prime prime)$ is well-defined. But then $alpha^(prime prime)$ + strictly extends $alpha^prime$, contradicting maximality of + $alpha^prime$. Hence $A^prime eq B$, so $M$ is injective. ] #definition[ Let $R$ be an integral domain. A $R$-module $M$ is called *divisible* if, for all $r in R without {0}$, every element $m$ of $M$ can be "divided" -by $r$, in the sense that there exists an element $m^prime$ in $M$ such that -$m eq r m^prime$. -Equivalently, the multiplication by any non-zero $r in R$ defines a surjective map from $M$ to $M$. + by $r$, in the sense that there exists an element $m^prime$ in $M$ such that + $m eq r m^prime$. + Equivalently, the multiplication by any non-zero $r in R$ defines a surjective map from $M$ to $M$. ] #corollary[ @@ -208,33 +226,35 @@ Equivalently, the multiplication by any non-zero $r in R$ defines a surjective m ] // That is, for all $m in M$ and - // $r in R without brace.l 0 brace.r$ there exists $m' in M$ such that - // $m eq r m'$. - // Recall that a PID is an integral domain in which every ideal is principal, or can be generated by a single element. +// $r in R without brace.l 0 brace.r$ there exists $m' in M$ such that +// $m eq r m'$. +// Recall that a PID is an integral domain in which every ideal is principal, or can be generated by a single element. - // [Unfortunately the notations are confusing, because we use $I$ to represent an ideal in the last theorem but the same letter for an $R$-module here.] +// [Unfortunately the notations are confusing, because we use $I$ to represent an ideal in the last theorem but the same letter for an $R$-module here.] // The details of the proof can get in the way of the intuitive idea, which // is quite simple. Maybe try proving it yourself before reading on \(use // Baer’s Criterion). #proof[@rotman[Corollary 3.35] and @notes[Corollary 5.9]. -Let $M$ be an injective $R$-module, and let $m in M$ and -$r in R without brace.l 0 brace.r$. Set $J eq r R$ (which is an ideal of $R$) and define -$f colon J arrow.r M$ by $f lr((r)) eq m$. By Baer’s Criterion, we may -extend $f$ to a homomorphism $tilde(f) colon R arrow.r M$. Then -$ m eq f lr((r)) = tilde(f)(r)eq tilde(f) lr((r dot.op 1)) eq r dot.op tilde(f) lr((1)). $ -So taking $m' eq tilde(f) lr((1))$, we see that $M$ is divisible. - -Suppose conversely that $M$ is a divisible $R$-module. Let $J$ be an -ideal of $R$ and let $f colon J arrow.r M$ be a module homomorphism. If -$J$ is the zero ideal, then trivially we may extend $f$ to the zero -homomorphism $R arrow.r M$. Assume that $J$ is nonzero. -Since $R$ is a PID, we have $J eq R r$ for some nonzero $r in J$. Let -$m eq f lr((r))$. Then since $M$ is divisible, there is some $m' in M$ -such that $m eq r m'$. Define $tilde(f) colon R arrow.r M$ by -$tilde(f) lr((1)) eq m'$. Clearly $tilde(f)$ is an extension of $f$, so -$M$ is injective by Baer’s Criterion. + Let $M$ be an injective $R$-module, and let $m in M$ and + $r in R without brace.l 0 brace.r$. Set $J eq r R$ (which is an ideal of $R$) and define + $f colon J arrow.r M$ by $f lr((r)) eq m$. By Baer’s Criterion, we may + extend $f$ to a homomorphism $tilde(f) colon R arrow.r M$. Then + $ + m eq f lr((r)) = tilde(f)(r)eq tilde(f) lr((r dot.op 1)) eq r dot.op tilde(f) lr((1)). + $ + So taking $m' eq tilde(f) lr((1))$, we see that $M$ is divisible. + + Suppose conversely that $M$ is a divisible $R$-module. Let $J$ be an + ideal of $R$ and let $f colon J arrow.r M$ be a module homomorphism. If + $J$ is the zero ideal, then trivially we may extend $f$ to the zero + homomorphism $R arrow.r M$. Assume that $J$ is nonzero. + Since $R$ is a PID, we have $J eq R r$ for some nonzero $r in J$. Let + $m eq f lr((r))$. Then since $M$ is divisible, there is some $m' in M$ + such that $m eq r m'$. Define $tilde(f) colon R arrow.r M$ by + $tilde(f) lr((1)) eq m'$. Clearly $tilde(f)$ is an extension of $f$, so + $M$ is injective by Baer’s Criterion. ] #corollary[ @@ -246,17 +266,17 @@ $M$ is injective by Baer’s Criterion. ] #lemma[ - Direct sums of projectives are projectives. - Dually, products of injectives are injectives. + Direct sums of projectives are projectives. + Dually, products of injectives are injectives. ] #proof[ - Suppose ${P_i : i in I}$ is a family of projective modules. Then for each $i in I$, by @projective-summand we can write $F_i = P_i xor Q_i$ for some free $R$-module $F_i$ and $R$-module $Q_i$. Then + Suppose ${P_i : i in I}$ is a family of projective modules. Then for each $i in I$, by @projective-summand we can write $F_i = P_i xor Q_i$ for some free $R$-module $F_i$ and $R$-module $Q_i$. Then $ plus.circle.big_(i in I) F_i = plus.circle.big_(i in I) P_i xor plus.circle.big_(i in I) Q_i $ Since $plus.circle.big_(i in I) F_i$ is also a free module, $plus.circle.big_(i in I) P_i$ is also projective. - // The first half is easily seen from + // The first half is easily seen from // $ hom (plus.circle.big_i P_i, -) = product_i hom (P_i, -) $ // The second half is the dual statement. ] @@ -265,48 +285,48 @@ $M$ is injective by Baer’s Criterion. ] #proof[ - By the injectivity of $QQ over ZZ$, it suffices to find a group homomorphism $psi : angle.l a angle.r -> QQ over ZZ$ and then extend $psi$ to $phi: A -> QQ over ZZ$. To obtain such $psi$, it suffices to give an element $psi(a) in QQ over ZZ$. We consider the order of $a$ in $A$: + By the injectivity of $QQ over ZZ$, it suffices to find a group homomorphism $psi : angle.l a angle.r -> QQ over ZZ$ and then extend $psi$ to $phi: A -> QQ over ZZ$. To obtain such $psi$, it suffices to give an element $psi(a) in QQ over ZZ$. We consider the order of $a$ in $A$: - If $|a| = infinity$, then we can set $psi(a)$ as any nonzero element of $QQ over ZZ$; - If $|a| = m > 1$, then we set $psi(a) = 1/m + ZZ$. ] #proposition[ - $Ab$ has enough injectives. + $Ab$ has enough injectives. ] #proof[ - Define a map + Define a map $ - I : Ab &-> Ab \ - A &|-> product_(hom_Ab (A, QQ over ZZ)) QQ over ZZ. + I : Ab &-> Ab \ + A &|-> product_(hom_Ab (A, QQ over ZZ)) QQ over ZZ. $ - + For any $A in Ab$, $I(A)$ is injective as a product of injectives $QQ over ZZ$. - Consider the canonical map + Consider the canonical map $ e_A: A &-> I(A) \ a &|-> (phi(a))_(phi in hom_Ab (A, QQ over ZZ)), $ - - where, since $I(A)$ is a product, we need to define for each $phi in hom_Ab (A, QQ over ZZ)$ the component $e_(a, phi) : A -> QQ over ZZ$, which we just define to be $phi$ itself. + + where, since $I(A)$ is a product, we need to define for each $phi in hom_Ab (A, QQ over ZZ)$ the component $e_(a, phi) : A -> QQ over ZZ$, which we just define to be $phi$ itself. Note that $e_A$ is an injective map by @map-to-q-over-z. - Thus we have $0 -> A ->^(e_A) I(A)$ with $I(A)$ injective for any $A in Ab$, showing that $Ab$ has enough injectives. + Thus we have $0 -> A ->^(e_A) I(A)$ with $I(A)$ injective for any $A in Ab$, showing that $Ab$ has enough injectives. // [See https://math.stackexchange.com/questions/4071941/category-of-abelian-groups-has-enough-injectives.] ] #endlec(6) -// = injective and projective and adjoints +// = injective and projective and adjoints == $RMod$ has Enough Injectives #proposition[ - If an additive functor $R: cB -> cA$ between abelian categories is right adjoint to an exact functor and $I$ is injective in $cB$, then $R(I)$ is injective in $cA$. - Dually, if an additive functor $L: cA -> cB$ is left adjoint to an exact functor and $P$ is projective in $cA$, then $L(P)$ is projective in $cB$. + If an additive functor $R: cB -> cA$ between abelian categories is right adjoint to an exact functor and $I$ is injective in $cB$, then $R(I)$ is injective in $cA$. + Dually, if an additive functor $L: cA -> cB$ is left adjoint to an exact functor and $P$ is projective in $cA$, then $L(P)$ is projective in $cB$. ] #proof[ @notes[Lemma 5.25] and @weibel[Proposition 2.3.10]. - We want to show that - $ Hom(A)(-, R(I)) $ is exact. + We want to show that + $ Hom(A)(-, R(I)) $ is exact. We have $ Hom(A)(-, R(I)) iso Hom(B)(L(-), I ) $ but $L$ is exact by assumption and $Hom(B)(-, I)$ is exact because $I$ is injective in $cB$, so $Hom(B)(L(-), I )$ is a composition of exact functors and thus exact. @@ -318,7 +338,7 @@ With this proposition, we can prove that an abelian category has enough projecti If $I$ is an injective abelian group, then $hom_Ab (R, I)$ is an injective #rrm. ] #proof[ - By @hom-module, $hom_Ab (R, I)$ is indeed a right $R$-module. Note that $hom_Ab (R, -)$ is right adjoint to $(- tpr R)$, which is simply the forgetful functor $ModR -> Ab$ and is thus exact. Therefore $hom_Ab (R, I)$ is injective in $RMod$. + By @hom-module, $hom_Ab (R, I)$ is indeed a right $R$-module. Note that $hom_Ab (R, -)$ is right adjoint to $(- tpr R)$, which is simply the forgetful functor $ModR -> Ab$ and is thus exact. Therefore $hom_Ab (R, I)$ is injective in $RMod$. ] #example[ @@ -326,20 +346,20 @@ With this proposition, we can prove that an abelian category has enough projecti ] #proposition[ - $RMod$ has enough injectives. + $RMod$ has enough injectives. ] #proof[ - Define map + Define map $ - I : RMod &-> RMod \ - M &|-> product_(homr(M, hom_Ab (R, QQ over ZZ))) hom_Ab (R, QQ over ZZ) + I : RMod &-> RMod \ + M &|-> product_(homr(M, hom_Ab (R, QQ over ZZ))) hom_Ab (R, QQ over ZZ) $ - + For any left $R$-module $M$, - $I(M)$ is injective as a product of injectives, and there is a canonical morphism + $I(M)$ is injective as a product of injectives, and there is a canonical morphism $ - e_M: M &-> I(M ) \ + e_M: M &-> I(M ) \ m &|-> (phi(m))_(phi in homr(M, hom_Ab (R, QQ over ZZ))) $ // Exercise: $e_M$ is one-to-one (mono). (like what we did before.) [TODO] diff --git a/ha/5-cc.typ b/ha/5-cc.typ index 5a84fb2..bc1c825 100644 --- a/ha/5-cc.typ +++ b/ha/5-cc.typ @@ -5,29 +5,29 @@ == Definitions -Let $cA$ be an abelian category. +Let $cA$ be an abelian category. #definition[ - A *chain complex* $Ccx$ in $cA$ is a family ${C_n}_(n in ZZ)$ of objects in $cA$ with morphisms $d_n : C_n -> C_(n-1)$ such that $d_n oo d_(n-1) = 0$, where $d_n$ are called *differentials*. - The *$n$-cycles* of $Ccx$ are defined as $ Z_n (C) := Ker d_n $ and + A *chain complex* $Ccx$ in $cA$ is a family ${C_n}_(n in ZZ)$ of objects in $cA$ with morphisms $d_n : C_n -> C_(n-1)$ such that $d_n oo d_(n-1) = 0$, where $d_n$ are called *differentials*. + The *$n$-cycles* of $Ccx$ are defined as $ Z_n (C) := Ker d_n $ and the *$n$-boundaries* are defined as $ B_n (C) := IM d_(n+1). $ - - Since $d_n oo d_(n-1) = 0$, we have $ B_n (C) arrow.hook Z_n (C) arrow.hook C_n $ (as subobjects) for all $n$. + + Since $d_n oo d_(n-1) = 0$, we have $ B_n (C) arrow.hook Z_n (C) arrow.hook C_n $ (as subobjects) for all $n$. The *$n$-th homology* is defined as $ H_n (C) := Coker(B_n (C) arrow.hook Z_n (C)). $ ] #notation[ - We often omit the subscript in $d_n$ and simply write $d$, so $d_n oo d_(n-1) = 0$ becomes $d^2 = 0$. To emphasise that $d$ belongs to the chain complex $C_cx$, we would write either $d_C$, or $d^((C))_n$ if we also need to explicitly specify the index. We sometimes also omit the dot in $Ccx$ and simply write $C$. We might write $Z_n = Z_n (C)$ and $B_n = B_n (C)$. + We often omit the subscript in $d_n$ and simply write $d$, so $d_n oo d_(n-1) = 0$ becomes $d^2 = 0$. To emphasise that $d$ belongs to the chain complex $C_cx$, we would write either $d_C$, or $d^((C))_n$ if we also need to explicitly specify the index. We sometimes also omit the dot in $Ccx$ and simply write $C$. We might write $Z_n = Z_n (C)$ and $B_n = B_n (C)$. ] #remark[ - In the case of $RMod$, an *$n$-cycle* in $C_n$ is an element $x in C_n$ such that $d(x) = 0$, and an *$n$-boundary* in $C_n$ is an element $y in C_n$ such that there exists $c' in C_(n+1)$ such that $d(c') = y$. An $n$-boundary must be an $n$-cycle because $d^2= 0$. The $n$-th homology becomes a quotient module#footnote()[The slogan is that "homology is cycles modulo boundaries" or even "homology is kernel modulo image".], $ H_n (C) = Z_n / B_n = (Ker d_n) /( IM d_(n+1)) $ An element in $H_n (C)$ can be written as $x + B_n$, or simply $[x]$, for some $n$-cycle $x$. + In the case of $RMod$, an *$n$-cycle* in $C_n$ is an element $x in C_n$ such that $d(x) = 0$, and an *$n$-boundary* in $C_n$ is an element $y in C_n$ such that there exists $c' in C_(n+1)$ such that $d(c') = y$. An $n$-boundary must be an $n$-cycle because $d^2= 0$. The $n$-th homology becomes a quotient module#footnote()[The slogan is that "homology is cycles modulo boundaries" or even "homology is kernel modulo image".], $ H_n (C) = Z_n / B_n = (Ker d_n) /( IM d_(n+1)) $ An element in $H_n (C)$ can be written as $x + B_n$, or simply $[x]$, for some $n$-cycle $x$. ] #remark[ - It is helpful to keep in mind two defining short exact sequences: + It is helpful to keep in mind two defining short exact sequences: $ 0-> Z_n -> C_n ->^(d_n) B_(n-1) -> 0, \ 0 -> B_(n) arrow.hook Z_n -> H_n -> 0. @@ -39,14 +39,14 @@ Let $cA$ be an abelian category. // #align(center,image("../imgs/2023-11-03-12-27-08.png",width:80%)) #definition[ - We can form a category $"Ch"(cA)$ where objects are chain complexes and morphisms are *chain maps* $u_cx : C_cx -> D_cx$ which - commutes with differentials + We can form a category $"Ch"(cA)$ where objects are chain complexes and morphisms are *chain maps* $u_cx : C_cx -> D_cx$ which + commutes with differentials $ u d = d u. $ Namely, for all $n in ZZ$, -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAGEB9QgX1PUy58hFAEZyVWoxZsuACjABaUQEoQfAdjwEiZUZPrNWiEABFu6-iAxbhRcfuqGZJ8wuVqekmFADm8IlAAMwAnCABbJDIQHAgkcSkjNihLYLDIxAAmalikAGYnaWMQFI0QUIionLiswqSTJgsyioyE3MQCxJcQRvdVdQoeIA -#align(center, commutative-diagram( + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAGEB9QgX1PUy58hFAEZyVWoxZsuACjABaUQEoQfAdjwEiZUZPrNWiEABFu6-iAxbhRcfuqGZJ8wuVqekmFADm8IlAAMwAnCABbJDIQHAgkcSkjNihLYLDIxAAmalikAGYnaWMQFI0QUIionLiswqSTJgsyioyE3MQCxJcQRvdVdQoeIA + #align(center, commutative-diagram( node-padding: (30pt, 50pt), padding: 0.5em, node((0, 0), [$C_n$]), @@ -60,18 +60,18 @@ Let $cA$ be an abelian category. )) commutes. ] #proposition[ -$Ch(cA)$ is an abelian category if $cA$ is an abelian category. + $Ch(cA)$ is an abelian category if $cA$ is an abelian category. ] #proof[ -@rotman[Proposition 5.100]. + @rotman[Proposition 5.100]. ] #proposition[ A chain map $u_cx : Ccx -> Dcx$ induces a morphism $H_n (u) : H_n (C) -> H_n (D). $ ] #proof[ - It suffices to assume $cA = RMod$. First we show that $u_n : C_n -> D_n$ sends boundaries to boundaries. Take boundary $b in C_n$, then there exists $c in C_(n+1)$ such that $d(c) = b$. Thus $u(b) = u d(c) = d u (c)$, showing that $u(b)$ is a boundary in $D_n$. - Next we show that $u_n : C_n -> D_n$ sends cycles to cycles. Take cycle $z in C_n$ such that $d(z) = 0$. Then $d u(z) = u d(z) = u(0) = 0$, showing that $u(z)$ is a cycle in $D_n$. + It suffices to assume $cA = RMod$. First we show that $u_n : C_n -> D_n$ sends boundaries to boundaries. Take boundary $b in C_n$, then there exists $c in C_(n+1)$ such that $d(c) = b$. Thus $u(b) = u d(c) = d u (c)$, showing that $u(b)$ is a boundary in $D_n$. + Next we show that $u_n : C_n -> D_n$ sends cycles to cycles. Take cycle $z in C_n$ such that $d(z) = 0$. Then $d u(z) = u d(z) = u(0) = 0$, showing that $u(z)$ is a cycle in $D_n$. Therefore, $u_n$ induces a function $H_n (C) -> H_n (D)$. ] @@ -80,23 +80,23 @@ $Ch(cA)$ is an abelian category if $cA$ is an abelian category. ] #definition[ - A chain map $C_cx -> D_cx$ is called a *quasi-isomorphism* if the induced maps $H_n (C) -> H_n (D)$ are isomorphisms for all $n$. + A chain map $C_cx -> D_cx$ is called a *quasi-isomorphism* if the induced maps $H_n (C) -> H_n (D)$ are isomorphisms for all $n$. ] // #remark[ // (Remark here, connection to topology) -// Derived category of an abelian category $cA$ is $ D(A) = Ch(A) ["qiso"^(-1)]$. Compare to $R[s^(-1)]$ for some $s in R$ and non-commutative $R$. - +// Derived category of an abelian category $cA$ is $ D(A) = Ch(A) ["qiso"^(-1)]$. Compare to $R[s^(-1)]$ for some $s in R$ and non-commutative $R$. + // Non-linear version: homotopy types. $Top[W^(-1)]$ // (TODO) // ] #proposition[ - The following are equivalent: + The following are equivalent: - $C_cx$ is exact at every $C_n$; - $C_cx$ is *acyclic*, i.e., $H_n (C) = 0$ for all $n$; - - $0 -> C_cx$ is a quasi-isomorphism. + - $0 -> C_cx$ is a quasi-isomorphism. ] // #proof[Trivial.] @@ -108,7 +108,7 @@ $Ch(cA)$ is an abelian category if $cA$ is an abelian category. #definition[ A *cochain complex* $Ccx$ in $cA$ is a family ${C^n}_(n in ZZ)$ of objects in $cA$ with morphisms $d^n : C^n -> C^(n+1)$ such that $d^n oo d^(n+1) = 0$, where $d^n$ are called *differentials*. The *$n$-cocycles* of $C^cx$ are $ Z^n (C) := Ker d^n $ and the *$n$-coboundaries* are $ B^n (C) := IM d^(n-1). $ - + We have $ B^n ( C) arrow.hook Z^n (C) arrow.hook C^n $ (as subobjects) for all $n$. The *$n$-th cohomology* are defined as $ H^n (C) := Coker(B^n (C) arrow.hook Z^n (C)). $ @@ -118,23 +118,25 @@ $Ch(cA)$ is an abelian category if $cA$ is an abelian category. #example[@weibel[Application 1.1.4]. Let $X$ be a topological -space, and let $C_k eq C_k lr((X))$ be the free $R$-module on the set of -continuous maps from the standard $k$-simplex $Delta_k$ to X. Restriction -to the $i$-th face of $Delta_k lr((0 lt.eq i lt.eq k))$ transforms a -map $Delta_k arrow.r X$ into a map -$Delta_(k minus 1) arrow.r X$, and induces an $R$-module -homomorphism $diff_i$ from $C_k$ to $C_(k minus 1)$. The alternating -sums $d eq sum lr((minus 1))^i diff_i$ (from $C_k$ to $C_(k minus 1)$) -assemble to form a chain complex -$ dots.h.c arrow.r^d C_2 arrow.r^d C_1 arrow.r^d C_0 arrow.r 0 $ called the *singular chain complex* of $X$. -The $n$-th homology module of $C_cx (X)$ is called the -$n$-th singular homology of $X$ \(with -coefficients in $R$) and is written $H_n lr((X semi R))$. + space, and let $C_k eq C_k lr((X))$ be the free $R$-module on the set of + continuous maps from the standard $k$-simplex $Delta_k$ to X. Restriction + to the $i$-th face of $Delta_k lr((0 lt.eq i lt.eq k))$ transforms a + map $Delta_k arrow.r X$ into a map + $Delta_(k minus 1) arrow.r X$, and induces an $R$-module + homomorphism $diff_i$ from $C_k$ to $C_(k minus 1)$. The alternating + sums $d eq sum lr((minus 1))^i diff_i$ (from $C_k$ to $C_(k minus 1)$) + assemble to form a chain complex + $ + dots.h.c arrow.r^d C_2 arrow.r^d C_1 arrow.r^d C_0 arrow.r 0 + $ called the *singular chain complex* of $X$. + The $n$-th homology module of $C_cx (X)$ is called the + $n$-th singular homology of $X$ \(with + coefficients in $R$) and is written $H_n lr((X semi R))$. ] // #example[ -// Let $X$ be a topological space. Then $S_k = S_k (X)$ is the free $R$-module on the set of continuous maps $Delta_k -> X$, with restriction to the $i$-th face defines $S_k rgt(diff_i) S_(k-1)$, $d = sum (-1)^i diff_i$ gives a chain complex. +// Let $X$ be a topological space. Then $S_k = S_k (X)$ is the free $R$-module on the set of continuous maps $Delta_k -> X$, with restriction to the $i$-th face defines $S_k rgt(diff_i) S_(k-1)$, $d = sum (-1)^i diff_i$ gives a chain complex. -// The singular chain complex of $X$ +// The singular chain complex of $X$ // $H_n^"singular"(X, R)$ // ] @@ -154,77 +156,90 @@ coefficients in $R$) and is written $H_n lr((X semi R))$. for all $n$. // #align(center,image("../imgs/2023-10-31-00-07-24.png",width:50%)) // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAGEB9ACjAGoAjAEoQAX1LpMufIRQDyVWoxZsuhcZOx4CRAEwLq9Zq0QceYALTCxEkBi0yiZAYqMrTAEXOCRGu1O1ZZHkXQ2UTEC91W3tpHRR9UKVjNi9eHzFFGCgAc3giUAAzACcIAFskMhAcCCR5ZPcQKBsi0orEepqkfQaI5r8S8rrqLsQAZmoGLDA+ujgAC2yQMJTTBAG24eraxAAWFcbClpBB9p7R-ZApmbYoOcXmg4j121OkCe2kS7c+47e9kY7ACsT1umVEQA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$C_(n+1)$]), - node((0, 1), [$C_n$]), - node((0, 2), [$C_(n-1)$]), - node((1, 0), [$D_(n+1)$]), - node((1, 1), [$D_n$]), - node((1, 2), [$D_(n+1)$]), - arr((0, 0), (0, 1), [$d$]), - arr((0, 1), (0, 2), [$d$]), - arr((0, 1), (1, 0), label-pos:-1em, [$s$], "dashed"), - arr((0, 1), (1, 1), [$f$]), - arr((0, 2), (1, 1), label-pos:-1em, [$s$], "dashed"), - arr((1, 0), (1, 1), [$d$]), - arr((1, 1), (1, 2), [$d$]), -)) + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$C_(n+1)$]), + node((0, 1), [$C_n$]), + node((0, 2), [$C_(n-1)$]), + node((1, 0), [$D_(n+1)$]), + node((1, 1), [$D_n$]), + node((1, 2), [$D_(n+1)$]), + arr((0, 0), (0, 1), [$d$]), + arr((0, 1), (0, 2), [$d$]), + arr((0, 1), (1, 0), label-pos: -1em, [$s$], "dashed"), + arr((0, 1), (1, 1), [$f$]), + arr((0, 2), (1, 1), label-pos: -1em, [$s$], "dashed"), + arr((1, 0), (1, 1), [$d$]), + arr((1, 1), (1, 2), [$d$]), + ), + ) (Only the solid lines commute.) We denote $f tilde 0$ in this case. ] #definition[ Two chain maps $f$ and $g$ from $Ccx$ to $Dcx$ are *chain homotopic* if $f - g$ is null homotopic. We denote $f tilde g$. ] #remark[ -$f tilde g <=> f - g tilde 0 <=> f - g = s d + d s$. + $f tilde g <=> f - g tilde 0 <=> f - g = s d + d s$. ] #lemma[ // If $f tilde g$, then $f_* = g_* : H_* (C) -> H_* (D)$. Suppose that chain maps -$f comma g colon C_cx arrow.r D_cx$ are chain homotopic. -Then the induced maps -$f_* comma g_* colon H_n lr((C)) arrow.r H_n lr((D))$ -are equal. In particular, if $f: Ccx-> Dcx$ is null homotopic, then $f_* = 0 : H_n (C) -> H_n (D)$. + $f comma g colon C_cx arrow.r D_cx$ are chain homotopic. + Then the induced maps + $f_* comma g_* colon H_n lr((C)) arrow.r H_n lr((D))$ + are equal. In particular, if $f: Ccx-> Dcx$ is null homotopic, then $f_* = 0 : H_n (C) -> H_n (D)$. ] #proof[@notes[Lemma 2.32], @weibel[Lemma 1.4.5]. Let $h$ be a chain homotopy from $f$ to $g$. We have -$ f_n minus g_n eq s_(n minus 1) compose d_n^(lr((C))) plus d_(n plus 1)^(lr((D))) compose s_n $ + $ + f_n minus g_n eq s_(n minus 1) compose d_n^(lr((C))) plus d_(n plus 1)^(lr((D))) compose s_n + $ -for each $n$. Let $x in H_n lr((C))$. Then $x eq lr([c])$ for some cycle -$c in Z_n C$. We have + for each $n$. Let $x in H_n lr((C))$. Then $x eq lr([c])$ for some cycle + $c in Z_n C$. We have -$ f_* lr((x)) minus g_* lr((x)) & eq lr([f_n lr((c)) minus g_n lr((c))])\ - & eq lr([s_(n minus 1) compose d_n^(lr((C))) lr((c)) plus d_(n plus 1)^(lr((D))) compose s_n lr((c))])\ - & eq lr([d_(n plus 1)^(lr((D))) compose s_n lr((c))])\ - & eq 0 comma $ + $ + f_* lr((x)) minus g_* lr((x)) & eq lr([f_n lr((c)) minus g_n lr((c))])\ + & eq lr([s_(n minus 1) compose d_n^(lr((C))) lr((c)) plus d_(n plus 1)^(lr((D))) compose s_n lr((c))])\ + & eq lr([d_(n plus 1)^(lr((D))) compose s_n lr((c))])\ + & eq 0 comma + $ -The third equality is because $c$ is an $n$-cycle in $C$ and last equality is because $d_(n plus 1)^(lr((D))) compose s_n lr((c))$ is an $n$-boundary in $D$. - ] + The third equality is because $c$ is an $n$-cycle in $C$ and last equality is because $d_(n plus 1)^(lr((D))) compose s_n lr((c))$ is an $n$-boundary in $D$. +] #corollary[ - If the chain map $id : C_cx -> C_cx$ is null homotopic, then $C_cx$ is acyclic. + If the chain map $id : C_cx -> C_cx$ is null homotopic, then $C_cx$ is acyclic. ] #endlec(7) #definition[@weibel[Translation 1.2.8]. -If $C = Ccx$ -is a chain complex (resp. cochain complex) and $p$ an integer, we form a new complex $C lr([p])$ as -follows: -$ C lr([p])_n eq C_(n plus p) quad lr((upright("resp. ") C lr([p])^n eq C^(n minus p))) $ -with differential $lr((minus 1))^p d$. We call -$C lr([p])$ the *$p$-th translate* of $C$. The way to remember -the shift is that the degree $0$ part of $C lr([p])$ is $C_p$. The -sign convention is designed to simplify notation later on. Note that -translation shifts homology: -$ H_n lr((C lr([p]))) eq H_(n plus p) lr((C)) quad lr((upright("resp. ") H^n lr((C lr([p]))) eq H^(n minus p) lr((C)))). $ - -We make translation into a functor $[p]: Ch(cA) -> Ch(cA)$ by shifting indices on chain maps. -That is, if $f colon C arrow.r D$ is a chain map, then -$f lr([p])$ is the chain map given by the formula -$ f lr([p])_n eq f_(n plus p) quad lr((upright("resp. ") f lr([p])^n eq f^(n minus p))). $ + If $C = Ccx$ + is a chain complex (resp. cochain complex) and $p$ an integer, we form a new complex $C lr([p])$ as + follows: + $ + C lr([p])_n eq C_(n plus p) quad lr((upright("resp. ") C lr([p])^n eq C^(n minus p))) + $ + with differential $lr((minus 1))^p d$. We call + $C lr([p])$ the *$p$-th translate* of $C$. The way to remember + the shift is that the degree $0$ part of $C lr([p])$ is $C_p$. The + sign convention is designed to simplify notation later on. Note that + translation shifts homology: + $ + H_n lr((C lr([p]))) eq H_(n plus p) lr((C)) quad lr((upright("resp. ") H^n lr((C lr([p]))) eq H^(n minus p) lr((C)))). + $ + + We make translation into a functor $[p]: Ch(cA) -> Ch(cA)$ by shifting indices on chain maps. + That is, if $f colon C arrow.r D$ is a chain map, then + $f lr([p])$ is the chain map given by the formula + $ + f lr([p])_n eq f_(n plus p) quad lr((upright("resp. ") f lr([p])^n eq f^(n minus p))). + $ ] // #definition[ @@ -240,7 +255,7 @@ $ f lr([p])_n eq f_(n plus p) quad lr((upright("resp. ") f lr([p])^n eq f^(n min // $H_n (C[p]) = H_(n+p) (C)$ -// $f: Ccx -> Dcx$ => $f[p]_n = f_(n+p)$ +// $f: Ccx -> Dcx$ => $f[p]_n = f_(n+p)$ == Exact Sequences @@ -248,93 +263,101 @@ Recall that if $cA$ is an abelian category, then $Ch(cA)$ is also an abelian cat Therefore, we can form short exact sequences with chain complexes, and it turns out that they naturally induce long exact sequences in (co)homology. #definition[ For chain complexes $A_cx, B_cx, Ccx$, -$ ses(A_cx, B_cx, Ccx) $ is a *short exact sequence* if $ses(A_n, B_n, C_n)$ is a short exact sequence for all $n$. + $ + ses(A_cx, B_cx, Ccx) + $ is a *short exact sequence* if $ses(A_n, B_n, C_n)$ is a short exact sequence for all $n$. ] -// Long exact sequence. +// Long exact sequence. #theorem[ - If $ 0 -> A_cx rgt(f) B_cx rgt(g) Ccx -> 0$ is a short exact sequence of chain complexes, then there is a natural map for each $n$ $ diff_n: H_n (C) -> H_(n-1) (A), $ which we call the *connecting homomorphism*, making + If $ 0 -> A_cx rgt(f) B_cx rgt(g) Ccx -> 0$ is a short exact sequence of chain complexes, then there is a natural map for each $n$ $ diff_n: H_n (C) -> H_(n-1) (A), $ which we call the *connecting homomorphism*, making $ ... -> H_n (B) -> H_n (C) rgt(diff_n) H_(n-1) (A) -> H_(n-1)(B) -> ... $ - a long exact sequence. Further, $diff_n$ is explicitly given by the well-defined expression $ diff_n = f^(-1) d_B g^(-1). $ - - If $ 0 -> A_cx rgt(f) B_cx rgt(g) Ccx -> 0$ is a short exact sequence of cochain complexes, then we have the connecting homomorphism + a long exact sequence. Further, $diff_n$ is explicitly given by the well-defined expression $ diff_n = f^(-1) d_B g^(-1). $ + + If $ 0 -> A_cx rgt(f) B_cx rgt(g) Ccx -> 0$ is a short exact sequence of cochain complexes, then we have the connecting homomorphism $ diff^n : H^n\(C) -> H^(n+1)(A), $ where the induced long exact sequence is $ - ... -> H_n (B) -> H_n (C) rgt(diff^n) H_(n+1) (A) -> H_(n+1)(B) -> ... + ... -> H_n (B) -> H_n (C) rgt(diff^n) H_(n+1) (A) -> H_(n+1)(B) -> ... $ and $ diff^n = f^(-1) d^B g^(-1). $ ] #proof[ - Again, we assume the context of $RMod$. This is an application of the @snake[Snake Lemma]. -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRGJAF9T1Nd9CKAIzkqtRizYBBAPqFuvbHgJEATKOr1mrRCABCcrjxAYlAogGYN47WwDChhSb7LByACzWtk3Ryen+FRQyITFvHXYjRUC3EVDNCQjZAAowAFohAEoo5zMg5HV4mx99GVSM7P8XcxQrIvD7MvSsnIDXIk96xLY-MRgoAHN4IlAAMwAnCABbJDIQHAgkIScJ6aXqBaRVFcmZxHV5xcQLHbXjjaP3U72RQ6QANgTbXSgc1b2DzcQAdieS1+uSCsd0QAA5qAw6AAjGAMAAK1SCIAYMFGOBAfwiAOM7yQAFYLg9AYhHiDvsTfiDQcTwSCAJycCicIA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$0$]), - node((0, 1), [$A_n$]), - node((0, 2), [$B_n$]), - node((0, 3), [$C_n$]), - node((0, 4), [$0$]), - node((1, 0), [$0$]), - node((1, 1), [$A_(n-1)$]), - node((1, 2), [$B_(n-1)$]), - node((1, 3), [$C_(n-1)$]), - node((1, 4), [$0$]), - arr((0, 0), (0, 1), []), - arr((0, 1), (0, 2), []), - arr((0, 2), (0, 3), []), - arr((0, 3), (0, 4), []), - arr((0, 1), (1, 1), [$d_A$]), - arr((0, 2), (1, 2), [$d_B$]), - arr((0, 3), (1, 3), [$d_C$], label-pos: left), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), []), - arr((1, 2), (1, 3), []), - arr((1, 3), (1, 4), []), -)) - Using the Snake Lemma, if we write the cokernels (and shift up the index by $1$), we get + Again, we assume the context of $RMod$. This is an application of the @snake[Snake Lemma]. + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRGJAF9T1Nd9CKAIzkqtRizYBBAPqFuvbHgJEATKOr1mrRCABCcrjxAYlAogGYN47WwDChhSb7LByACzWtk3Ryen+FRQyITFvHXYjRUC3EVDNCQjZAAowAFohAEoo5zMg5HV4mx99GVSM7P8XcxQrIvD7MvSsnIDXIk96xLY-MRgoAHN4IlAAMwAnCABbJDIQHAgkIScJ6aXqBaRVFcmZxHV5xcQLHbXjjaP3U72RQ6QANgTbXSgc1b2DzcQAdieS1+uSCsd0QAA5qAw6AAjGAMAAK1SCIAYMFGOBAfwiAOM7yQAFYLg9AYhHiDvsTfiDQcTwSCAJycCicIA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$0$]), + node((0, 1), [$A_n$]), + node((0, 2), [$B_n$]), + node((0, 3), [$C_n$]), + node((0, 4), [$0$]), + node((1, 0), [$0$]), + node((1, 1), [$A_(n-1)$]), + node((1, 2), [$B_(n-1)$]), + node((1, 3), [$C_(n-1)$]), + node((1, 4), [$0$]), + arr((0, 0), (0, 1), []), + arr((0, 1), (0, 2), []), + arr((0, 2), (0, 3), []), + arr((0, 3), (0, 4), []), + arr((0, 1), (1, 1), [$d_A$]), + arr((0, 2), (1, 2), [$d_B$]), + arr((0, 3), (1, 3), [$d_C$], label-pos: left), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), []), + arr((1, 2), (1, 3), []), + arr((1, 3), (1, 4), []), + ), + ) + Using the Snake Lemma, if we write the cokernels (and shift up the index by $1$), we get $ A_n / (d A_(n+1)) -> B_n / (d B_(n+1)) -> C_n / (d C_(n+1)) -> 0 $ is exact, where $d A_(n+1) = IM d$; if we write the kernels, we get $ - 0-> Z_(n-1)(A) -> Z_(n-1)(B) -> Z_(n-1)(C) + 0-> Z_(n-1)(A) -> Z_(n-1)(B) -> Z_(n-1)(C) $ is also exact. Notice that $d A_n subset.eq Z_(n-1)(A)$, so we can use $d$ to connect the rows again: - -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQBBAfTAAIB6XgAoovbkLABqYgEoZIAL6l0mXPkIoATBWp0mrdgCEeA4aOMTpcxcpAZseAkQDMOmgxZtEIAMInBIrx+lrLySioO6kQALG56nuzkNhFqTijkpMS6HgbeSeF2qo4aJJnZ+l4gAFpcEgC0skIcYbb2qSXaWe4V7DX1jYYtKcUuZd0J3n1gDTJCPmG6MFAA5vBEoABmAE4QALZIGSA4EEjEBdt7pzTHSJrnO-uI2kcniM73l4ixL0gArB+PX7XV4ANgBSBBwKQAHZwYhDjdEED4rkQFBkiALo8yD9EJCUZV0XDnojoeNUUTKAogA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 1), [$A_n / (d A_(n+1))$]), - node((0, 2), [$B_n / (d B_(n+1))$]), - node((0, 3), [$C_n / (d C_(n+1))$]), - node((0, 4), [$0$]), - node((1, 0), [$0$]), - node((1, 1), [$Z_(n-1)(A)$]), - node((1, 2), [$Z_(n-1)(B)$]), - node((1, 3), [$Z_(n-1)(C)$]), - arr((0, 1), (0, 2), []), - arr((0, 2), (0, 3), []), - arr((0, 3), (0, 4), []), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), []), - arr((1, 2), (1, 3), []), - arr((0, 1), (1, 1), [$d_A$]), - arr((0, 2), (1, 2), [$d_B$]), - arr((0, 3), (1, 3), [$d_C$]), -)) - - Notice that $ Ker ( A_n / (d A_(n+1)) rgt(d) Z_(n-1) (A)) = H_n\(A) $ and + + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQBBAfTAAIB6XgAoovbkLABqYgEoZIAL6l0mXPkIoATBWp0mrdgCEeA4aOMTpcxcpAZseAkQDMOmgxZtEIAMInBIrx+lrLySioO6kQALG56nuzkNhFqTijkpMS6HgbeSeF2qo4aJJnZ+l4gAFpcEgC0skIcYbb2qSXaWe4V7DX1jYYtKcUuZd0J3n1gDTJCPmG6MFAA5vBEoABmAE4QALZIGSA4EEjEBdt7pzTHSJrnO-uI2kcniM73l4ixL0gArB+PX7XV4ANgBSBBwKQAHZwYhDjdEED4rkQFBkiALo8yD9EJCUZV0XDnojoeNUUTKAogA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 1), [$A_n / (d A_(n+1))$]), + node((0, 2), [$B_n / (d B_(n+1))$]), + node((0, 3), [$C_n / (d C_(n+1))$]), + node((0, 4), [$0$]), + node((1, 0), [$0$]), + node((1, 1), [$Z_(n-1)(A)$]), + node((1, 2), [$Z_(n-1)(B)$]), + node((1, 3), [$Z_(n-1)(C)$]), + arr((0, 1), (0, 2), []), + arr((0, 2), (0, 3), []), + arr((0, 3), (0, 4), []), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), []), + arr((1, 2), (1, 3), []), + arr((0, 1), (1, 1), [$d_A$]), + arr((0, 2), (1, 2), [$d_B$]), + arr((0, 3), (1, 3), [$d_C$]), + ), + ) + + Notice that $ Ker ( A_n / (d A_(n+1)) rgt(d) Z_(n-1) (A)) = H_n\(A) $ and $ Coker ( A_n / (d A_(n+1)) rgt(d) Z_(n-1) (A)) = H_(n-1) (A) $ and the other two columns are similar. By the Snake Lemma again, we have the connecting map: $ - H_n (A) -> H_n (B) -> H_n (C) rgt(diff_n) H_(n-1) (A) -> H_(n-1) (B) -> H_(n-1) (C) + H_n (A) -> H_n (B) -> H_n (C) rgt(diff_n) H_(n-1) (A) -> H_(n-1) (B) -> H_(n-1) (C) $ // #align(center,image("imgs/2023-11-03-11-53-54.png",width:80%)) @@ -348,70 +371,76 @@ $ ses(A_cx, B_cx, Ccx) $ is a *short exact sequence* if $ses(A_n, B_n, C_n)$ is #theorem([Naturality of $diff$])[ Given a morphism between short exact sequences of chain complexes, i.e., a commutative diagram // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRGJAF9T1Nd9CKAIzkqtRizYBBAPoBjAB5ceIDNjwEiAJlHV6zVohAAheUu691AogGZd4g2wDCZ5Zf6aUAFnv7JRjgtVPg1BElIhMT9Ddjdgq09kEUi9CRipAHJXILUPMJ0Uh38TLMU43NDbCKi051LzFQrrb2rUxwCuMRgoAHN4IlAAMwAnCABbJDIQHAgkISCR8bnqGaQdIpjBuMWJxHXVxDsNth7t0d2jg68F8+Xp2cQANhulvZWHgHYXi-ekAA5vkgAKy-J6Ap6gj5tYqDDJnV5Q+7-aExHpw8F-UEATk4FE4QA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$0$]), - node((0, 1), [$A_cx$]), - node((0, 2), [$B_cx$]), - node((0, 3), [$C_cx$]), - node((0, 4), [$0$]), - node((1, 0), [$0$]), - node((1, 1), [$A'_cx$]), - node((1, 2), [$B'_cx$]), - node((1, 3), [$C'_cx$]), - node((1, 4), [$0$]), - arr((0, 0), (0, 1), []), - arr((0, 1), (0, 2), [$f$]), - arr((0, 2), (0, 3), [$g$]), - arr((0, 3), (0, 4), []), - arr((0, 1), (1, 1), [$alpha$]), - arr((0, 2), (1, 2), [$beta$]), - arr((0, 3), (1, 3), [$gamma$]), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), [$f'$]), - arr((1, 2), (1, 3), [$g'$]), - arr((1, 3), (1, 4), []), -)) + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$0$]), + node((0, 1), [$A_cx$]), + node((0, 2), [$B_cx$]), + node((0, 3), [$C_cx$]), + node((0, 4), [$0$]), + node((1, 0), [$0$]), + node((1, 1), [$A'_cx$]), + node((1, 2), [$B'_cx$]), + node((1, 3), [$C'_cx$]), + node((1, 4), [$0$]), + arr((0, 0), (0, 1), []), + arr((0, 1), (0, 2), [$f$]), + arr((0, 2), (0, 3), [$g$]), + arr((0, 3), (0, 4), []), + arr((0, 1), (1, 1), [$alpha$]), + arr((0, 2), (1, 2), [$beta$]), + arr((0, 3), (1, 3), [$gamma$]), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), [$f'$]), + arr((1, 2), (1, 3), [$g'$]), + arr((1, 3), (1, 4), []), + ), + ) then there is a morphism between long exact sequence, i.e., a commutative diagram // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQAJAfTAAIAKAIIBKEAF9S6TLnyEUAJgrU6TVu259+AIVESp2PASIBmJTQYs2iTjwEBhXZJAYDsogBYzKy+q78wALTEwgIi4k4uMkYoZMTKFmrWGqEA5I76UXLIinHmqlY2mlpp4RmGWaa53omF9iV6ztLlHqRVCQXc-kEh-Hb1EU1uKORe7ewAdJOlja7RyACso-kTUw2RzcOt8cvWk+PT60MLW3k+u6vKMFAA5vBEoABmAE4QALZIABw0OBBI5A3PN5-b6-RBkaoFB5cehwHDTQHvMEgpCKCHsa7Q2Hwl6I1E-JCmNHWKBYB4PbFAxCE-GIACcAJxSGIIxANPcDMpnlZoMWRJADxSmLhHMRvJpADZTjVroKYcKnAikJLuUgAOxSgokskUxHqlVg4gi4H69kKxlI-XzI2IPGg8XW6mg1ViShiIA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 1), [$H_n (A)$]), - node((0, 2), [$H_n (B)$]), - node((0, 3), [$H_n (C)$]), - node((0, 4), [$H_(n-1) (A)$]), - node((1, 1), [$H_n (A')$]), - node((1, 2), [$H_n (B')$]), - node((1, 3), [$H_n (C')$]), - node((1, 4), [$H_(n-1) (A')$]), - node((0, 0), [$...$]), - node((0, 5), [$...$]), - node((1, 0), [$...$]), - node((1, 5), [$...$]), - arr((0, 0), (0, 1), []), - arr((0, 1), (0, 2), [$f_ast$]), - arr((0, 2), (0, 3), [$g_ast$]), - arr((0, 3), (0, 4), [$diff$]), - arr((0, 4), (0, 5), []), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), [$f'_ast$]), - arr((1, 2), (1, 3), [$g'_ast$]), - arr((1, 3), (1, 4), [$diff'$]), - arr((1, 4), (1, 5), []), - arr((0, 1), (1, 1), [$alpha_ast$]), - arr((0, 2), (1, 2), [$beta_ast$]), - arr((0, 3), (1, 3), [$gamma_ast$]), - arr((0, 4), (1, 4), [$alpha_ast$]), -)) + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 1), [$H_n (A)$]), + node((0, 2), [$H_n (B)$]), + node((0, 3), [$H_n (C)$]), + node((0, 4), [$H_(n-1) (A)$]), + node((1, 1), [$H_n (A')$]), + node((1, 2), [$H_n (B')$]), + node((1, 3), [$H_n (C')$]), + node((1, 4), [$H_(n-1) (A')$]), + node((0, 0), [$...$]), + node((0, 5), [$...$]), + node((1, 0), [$...$]), + node((1, 5), [$...$]), + arr((0, 0), (0, 1), []), + arr((0, 1), (0, 2), [$f_ast$]), + arr((0, 2), (0, 3), [$g_ast$]), + arr((0, 3), (0, 4), [$diff$]), + arr((0, 4), (0, 5), []), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), [$f'_ast$]), + arr((1, 2), (1, 3), [$g'_ast$]), + arr((1, 3), (1, 4), [$diff'$]), + arr((1, 4), (1, 5), []), + arr((0, 1), (1, 1), [$alpha_ast$]), + arr((0, 2), (1, 2), [$beta_ast$]), + arr((0, 3), (1, 3), [$gamma_ast$]), + arr((0, 4), (1, 4), [$alpha_ast$]), + ), + ) ] #proof[@rotman[Theorem 6.13]. - Since $H_n$ is a functor, the leftmost two squares commute. Take $[c] in H_n (C)$ for some $c in Z_n (C)$, we need to show that $alpha_ast diff ([c]) = diff' gamma_ast ([c])$. - - Let $b in B_n$ be a lifting of $c$, i.e., $g(b) = c$. Then $diff([c]) = [a]$, where $f(a) = d_B (b)$. Therefore, $alpha_ast diff([c]) = [alpha (a)]$. - - On the other hand, since $gamma$ is a chain map, we have $g' beta (b)= gamma g (b) = gamma (c)$. We see that $b' := beta(b) in B'_n$ is a lifting of $c'$ because $g'(b') = g'(beta(b)) = gamma(g(b)) = gamma(c) = c'$. Hence $diff' gamma_ast ([c]) = diff' ([gamma(c)]) = [a']$, where $f'(a') = d_(B') (b') = d_(B') (beta (b))$. - - But + Since $H_n$ is a functor, the leftmost two squares commute. Take $[c] in H_n (C)$ for some $c in Z_n (C)$, we need to show that $alpha_ast diff ([c]) = diff' gamma_ast ([c])$. + + Let $b in B_n$ be a lifting of $c$, i.e., $g(b) = c$. Then $diff([c]) = [a]$, where $f(a) = d_B (b)$. Therefore, $alpha_ast diff([c]) = [alpha (a)]$. + + On the other hand, since $gamma$ is a chain map, we have $g' beta (b)= gamma g (b) = gamma (c)$. We see that $b' := beta(b) in B'_n$ is a lifting of $c'$ because $g'(b') = g'(beta(b)) = gamma(g(b)) = gamma(c) = c'$. Hence $diff' gamma_ast ([c]) = diff' ([gamma(c)]) = [a']$, where $f'(a') = d_(B') (b') = d_(B') (beta (b))$. + + But $ f'(alpha(a)) = beta(f(a)) = beta(d_B (b)) = d_(B') (beta(b)) = f'(a') $ @@ -426,57 +455,60 @@ $ ses(A_cx, B_cx, Ccx) $ is a *short exact sequence* if $ses(A_n, B_n, C_n)$ is #definition[ - Let $cA$ be an abelian category. Let $M$ be an object of $cA$. A *left resolution* of $M$ is a complex $P_cx$, where $P_i = 0$ for negative $i$, with morphism $epsilon : P_0 -> M$ such that + Let $cA$ be an abelian category. Let $M$ be an object of $cA$. A *left resolution* of $M$ is a complex $P_cx$, where $P_i = 0$ for negative $i$, with morphism $epsilon : P_0 -> M$ such that $ ... -> P_2 rgt(d) P_1 rgt(d) P_0 rgt(epsilon) M -> 0 $ is exact. If each $P_i$ is projective, then we call it a *projective resolution*. If $cA$ is $RMod$ or $ModR$ and each $P_i$ is a free module, then we call it a *free resolution*. - In the same way, we define *right resolutions* and *injective resolutions*, only reversing all the arrows. + In the same way, we define *right resolutions* and *injective resolutions*, only reversing all the arrows. ] #proposition[ $P_cx -> M$ is a resolution if and only if the following chain map $f: P_cx -> M[0]$ -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRADpOQBfU9TXPkIoAjOSq1GLNgAUA+gCYefEBmx4CRBeOr1mrRCHkjl-dUKIBmHZP2y5xU6oEbhyACw290w495nBTRRPEQlvAxA-FTVAt2tQ3SkIgFknGNctUgTbH0i0lwtRLLCktiiAjJQybPC2TnYeCRgoAHN4IlAAMwAnCABbJDIQHAgkMRyIqCce-rHqEaRtCbYp-xAZgcQlhcRrZcNVlQ2kPZ33NePEAE550cQADgvezfvbpAB2J9nEd7fEADYvpt-n8AKxAubDO6vfZ5CFbP6-WHldbPE5-EGwmBobAMTTwoY7G4gBhYMAROAQUlTRJ2Qz1RrcIA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$...$]), - node((0, 1), [$P_2$]), - node((0, 2), [$P_1$]), - node((0, 3), [$P_0$]), - node((0, 4), [$0$]), - node((1, 4), [$0$]), - node((1, 3), [$M$]), - node((1, 2), [$0$]), - node((1, 1), [$0$]), - node((1, 0), [$...$]), - arr((0, 0), (0, 1), [$d$]), - arr((0, 1), (0, 2), [$d$]), - arr((0, 2), (0, 3), [$d$]), - arr((0, 3), (0, 4), []), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), []), - arr((1, 2), (1, 3), []), - arr((1, 3), (1, 4), []), - arr((0, 1), (1, 1), [$0$]), - arr((0, 2), (1, 2), [$0$]), - arr((0, 3), (1, 3), [$epsilon$]), - arr((0, 0), (1, 0), [$...$]), -)) -is a quasi-isomorphism. + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRADpOQBfU9TXPkIoAjOSq1GLNgAUA+gCYefEBmx4CRBeOr1mrRCHkjl-dUKIBmHZP2y5xU6oEbhyACw290w495nBTRRPEQlvAxA-FTVAt2tQ3SkIgFknGNctUgTbH0i0lwtRLLCktiiAjJQybPC2TnYeCRgoAHN4IlAAMwAnCABbJDIQHAgkMRyIqCce-rHqEaRtCbYp-xAZgcQlhcRrZcNVlQ2kPZ33NePEAE550cQADgvezfvbpAB2J9nEd7fEADYvpt-n8AKxAubDO6vfZ5CFbP6-WHldbPE5-EGwmBobAMTTwoY7G4gBhYMAROAQUlTRJ2Qz1RrcIA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$...$]), + node((0, 1), [$P_2$]), + node((0, 2), [$P_1$]), + node((0, 3), [$P_0$]), + node((0, 4), [$0$]), + node((1, 4), [$0$]), + node((1, 3), [$M$]), + node((1, 2), [$0$]), + node((1, 1), [$0$]), + node((1, 0), [$...$]), + arr((0, 0), (0, 1), [$d$]), + arr((0, 1), (0, 2), [$d$]), + arr((0, 2), (0, 3), [$d$]), + arr((0, 3), (0, 4), []), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), []), + arr((1, 2), (1, 3), []), + arr((1, 3), (1, 4), []), + arr((0, 1), (1, 1), [$0$]), + arr((0, 2), (1, 2), [$0$]), + arr((0, 3), (1, 3), [$epsilon$]), + arr((0, 0), (1, 0), [$...$]), + ), + ) + is a quasi-isomorphism. ] #proof[ - By definition, $P_cx$ is a resolution if and only if - - 1. $P_cx$ is exact at $P_n$ for $n>=1$ and - 2. $M = Coker(P_1 rgt(d) P_0)$. + By definition, $P_cx$ is a resolution if and only if - On the other hand, $f$ is quasi-isomorphism if and only if - 3. $H_n (P) iso H_n\(M[0]) iso 0$ for $n>=1$ and - 4. $ H_0(P) iso H_0(M[0]) iso M$. - - (1) is obviously equivalent to (3). (4) is equivalent to $M iso P_0 over IM(d) = Coker(P_1 rgt(d) P_0)$ and thus equivalent to (2). + 1. $P_cx$ is exact at $P_n$ for $n>=1$ and + 2. $M = Coker(P_1 rgt(d) P_0)$. + + On the other hand, $f$ is quasi-isomorphism if and only if + 3. $H_n (P) iso H_n\(M[0]) iso 0$ for $n>=1$ and + 4. $ H_0(P) iso H_0(M[0]) iso M$. + + (1) is obviously equivalent to (3). (4) is equivalent to $M iso P_0 over IM(d) = Coker(P_1 rgt(d) P_0)$ and thus equivalent to (2). ] // (Some more remark...?) By finding a resolution of a potentially "complicated" object $M$, we can work with a chain complex of "simple" objects, e.g. projective or injective objects. @@ -489,38 +521,41 @@ By finding a resolution of a potentially "complicated" object $M$, we can work w #proof[@notes[Lemma 5.20]. // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZAdgBoAmAXVJADcBDAGwFcYkQBZEAX1PU1z5CKABwVqdJq3YAGHnxAZseAkQBs4mgxZtEIAAoB9Ob37KhRACybJO9kYCM8s4NUoArKQDME7dL0cxs6KAirCyBqWvlK6ICYKSq7h1lFaMbLBiWFEXqQO0XYBhk6mIeZuyOSkMgX+cZmhFihVVGmFBobkDeXJ1bWx8S7ZKA7e-eyBXaVZTcgypKm2dYNlSUSjrUuxAHS7PBIwUADm8ESgAGYAThAAtkjWIDgQSFVb7FhBpVe3SLmPz4gHn5YjA0NhGARisFvndATQnkh3F9rrC-gjEK9gewoFDkT8MfCAfM3npQeDISsYUhieiHHjYRp-vd6UgyEzEH8sXoPiUFFTEGJ2cQWYgAJyE1ltOpkrAQsCdaEopDi9mc9J6HFTPlKxBs2kyEUOUbslVckAfLUXHUOV60una-EONEA0XcSjcIA -#align(center, commutative-diagram( - node-padding: (40pt, 40pt), - node((2, 7), [$M$]), - node((2, 8), [$0$]), - node((2, 6), [$P_0$]), - node((2, 4), [$P_1$]), - node((3, 5), [$M_0$]), - node((4, 6), [$0$]), - node((4, 4), [$0$]), - node((1, 3), [$M_1$]), - node((0, 2), [$0$]), - node((2, 2), [$P_2$]), - node((0, 4), [$0$]), - node((3, 1), [$M_2$]), - node((4, 0), [$0$]), - node((2, 1), [$...$]), - arr((3, 5), (2, 6), [$i_0$], label-pos: -1em), - arr((2, 4), (3, 5), [$epsilon_1$]), - arr((3, 5), (4, 6), []), - arr((2, 4), (2, 6), [$d_1$]), - arr((2, 6), (2, 7), [$epsilon_0$]), - arr((2, 7), (2, 8), []), - arr((4, 4), (3, 5), []), - arr((1, 3), (2, 4), [$i_1$]), - arr((0, 2), (1, 3), []), - arr((2, 2), (1, 3), [$epsilon_2$], label-pos: 1.5em), - arr((2, 2), (2, 4), [$d_2$]), - arr((1, 3), (0, 4), []), - arr((3, 1), (2, 2), [$i_2$], label-pos: -1em), - arr((4, 0), (3, 1), []), - arr((2, 1), (2, 2), []), -)) + #align( + center, + commutative-diagram( + node-padding: (40pt, 40pt), + node((2, 7), [$M$]), + node((2, 8), [$0$]), + node((2, 6), [$P_0$]), + node((2, 4), [$P_1$]), + node((3, 5), [$M_0$]), + node((4, 6), [$0$]), + node((4, 4), [$0$]), + node((1, 3), [$M_1$]), + node((0, 2), [$0$]), + node((2, 2), [$P_2$]), + node((0, 4), [$0$]), + node((3, 1), [$M_2$]), + node((4, 0), [$0$]), + node((2, 1), [$...$]), + arr((3, 5), (2, 6), [$i_0$], label-pos: -1em), + arr((2, 4), (3, 5), [$epsilon_1$]), + arr((3, 5), (4, 6), []), + arr((2, 4), (2, 6), [$d_1$]), + arr((2, 6), (2, 7), [$epsilon_0$]), + arr((2, 7), (2, 8), []), + arr((4, 4), (3, 5), []), + arr((1, 3), (2, 4), [$i_1$]), + arr((0, 2), (1, 3), []), + arr((2, 2), (1, 3), [$epsilon_2$], label-pos: 1.5em), + arr((2, 2), (2, 4), [$d_2$]), + arr((1, 3), (0, 4), []), + arr((3, 1), (2, 2), [$i_2$], label-pos: -1em), + arr((4, 0), (3, 1), []), + arr((2, 1), (2, 2), []), + ), + ) Let $M in cA$. By definition of having enough projectives, let $epsilon_0: P_0 -> M$ be an epimorphism where $P_0$ is projective. Let $M_0 := Ker epsilon_0$, and we have short exact sequence @@ -533,13 +568,13 @@ By finding a resolution of a potentially "complicated" object $M$, we can work w $ ses(M_1, P_1, M_0). $ - We define $d_1 = i_0 epsilon_1 : P_1 -> P_0$ and then + We define $d_1 = i_0 epsilon_1 : P_1 -> P_0$ and then $ d_1(P_1) = M_0 = Ker epsilon_0. $ Thus the chain in exact at $P_0$. The procedure above can be then iterated for any $n >= 1$ and the resultant chain is infinitely long. // Set $d_0 = epsilon_0$. - // Suppose we now have monomorphism $i_(n-1) : M_(n-1) -> P_(n-1)$ and $d_(n-1) : P_(n-1) -> P_(n-2)$ + // Suppose we now have monomorphism $i_(n-1) : M_(n-1) -> P_(n-1)$ and $d_(n-1) : P_(n-1) -> P_(n-2)$ // By induction, givenlet $epsilon_n: P_n -> M_(n-1)$ be an epimorphism, where $P_n$ is projective, and let $M_n = ker epsilon_n$. Thus we have // $ 0 -> M_n -> P_n -> M_(n-1) -> 0 $ // Define $d_n = i_(n-1) epsilon_n$, which is the composite $P_n -> M_(n-1) -> P_(n-1)$. The image of $d_n$ is $ d_(n) (P_n) = M_(n-1) = ker d_(n-1) $ and hence exact. @@ -548,191 +583,206 @@ By finding a resolution of a potentially "complicated" object $M$, we can work w // (Some remarks...) -// In the case of $RMod$, we can work with free resolutions instead of just projective ones. +// In the case of $RMod$, we can work with free resolutions instead of just projective ones. #theorem("Comparison Theorem")[ In an abelian category $cA$, let $f': M->N$. Consider the commutative diagram, where the rows are chain complexes: // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZAFgBoAGAXVJADcBDAGwFcYkQBZEAX1PU1z5CKMgEZqdJq3YA5HnxAZseAkQCsFCQxZtEIcvP7Kh60uJrbpeg7yODVKAMyaLU3SAAKAfRsKl94WQAJhdJHXZvUUNFARVA0VDLd28g6P84omdzMKsQAEUfNNiTFBDspPYCqNsY4wdkBPK3Sq9UmvSS5HJE5r0iusDupvC+7gkYKABzeCJQADMAJwgAWyQANhocCCQNHPcoaMWVnc3txDI99gOao9Xz06Ruy70YNGxGVRulu6etpCCvsdEAkQH9EI5AXcAOwPYGuEYgGA4eiHb5IAAcsJhzxAUAA5KigQBOWGYnH4wl3US-M5rSFIUQgsFE+mIDags4knFzVqUk4cjHw3I86oKW5IC5g7EVPQ83zzNGIGkMoXuOYEsbcIA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 4), [$M$]), - node((1, 4), [$N$]), - node((0, 5), [$0$]), - node((1, 5), [$0$]), - node((0, 3), [$P_0$]), - node((0, 2), [$P_1$]), - node((0, 1), [$P_2$]), - node((1, 3), [$Q_0$]), - node((1, 2), [$Q_1$]), - node((1, 1), [$Q_2$]), - node((0, 0), []), - node((1, 0), []), - arr((0, 1), (0, 2), [$d$]), - arr((0, 2), (0, 3), [$d$]), - arr((0, 3), (0, 4), [$epsilon$]), - arr((0, 4), (0, 5), []), - arr((1, 4), (1, 5), []), - arr((1, 3), (1, 4), [$eta$]), - arr((1, 2), (1, 3), [$d'$]), - arr((1, 1), (1, 2), [$d'$]), - arr((0, 0), (0, 1), []), - arr((1, 0), (1, 1), []), - arr((0, 1), (1, 1), [$f_2$], "dashed"), - arr((0, 2), (1, 2), [$f_1$], "dashed"), - arr((0, 3), (1, 3), [$f_0$], "dashed"), - arr((0, 4), (1, 4), [$f'$]), -)) + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 4), [$M$]), + node((1, 4), [$N$]), + node((0, 5), [$0$]), + node((1, 5), [$0$]), + node((0, 3), [$P_0$]), + node((0, 2), [$P_1$]), + node((0, 1), [$P_2$]), + node((1, 3), [$Q_0$]), + node((1, 2), [$Q_1$]), + node((1, 1), [$Q_2$]), + node((0, 0), []), + node((1, 0), []), + arr((0, 1), (0, 2), [$d$]), + arr((0, 2), (0, 3), [$d$]), + arr((0, 3), (0, 4), [$epsilon$]), + arr((0, 4), (0, 5), []), + arr((1, 4), (1, 5), []), + arr((1, 3), (1, 4), [$eta$]), + arr((1, 2), (1, 3), [$d'$]), + arr((1, 1), (1, 2), [$d'$]), + arr((0, 0), (0, 1), []), + arr((1, 0), (1, 1), []), + arr((0, 1), (1, 1), [$f_2$], "dashed"), + arr((0, 2), (1, 2), [$f_1$], "dashed"), + arr((0, 3), (1, 3), [$f_0$], "dashed"), + arr((0, 4), (1, 4), [$f'$]), + ), + ) Assume that $P_n$ is projective for all $n >= 0$ and that $eta: Q_cx -> N$ is a resolution (i.e., the bottom row is exact), then there is a chain map $f_cx: P_cx -> Q_cx$ lifting $f'$ (i.e., $f_cx$ makes the above diagram commutative). // i.e. $ eta oo f_0 = f' oo epsilon $ - Further, $f_cx$ is unique up to a chain homotopy equivalence. + Further, $f_cx$ is unique up to a chain homotopy equivalence. ] -#proof[@weibel[Comparison Theorem 2.26], @rotman[Theorem 6.16]. Set $f_(-1) = f'$. - By induction, suppose that $f_n$ has been constructed. - Note that for any $a in P_(n+1)$, we have +#proof[@weibel[Comparison Theorem 2.26], @rotman[Theorem 6.16]. Set $f_(-1) = f'$. + By induction, suppose that $f_n$ has been constructed. + Note that for any $a in P_(n+1)$, we have $ d'_n oo f_n oo d_(n+1) (a) = f_(n-1) oo d_n oo d_(n+1) (a) = 0, $ therefore $f_n oo d_(n+1) : P_(n+1) -> Q_(n)$ lands in $Z_n (Q)$. On the other hand, due to the exactness of $Q_cx$, the map $d'_(n+1) : Q_(n+1) -> Z_n (Q)$ is an epimorphism. So we have the following: -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQAFAfQAowBqYgEoQAX1LpMufIRRli1Ok1bsAWlzAACHgEUR4ydjwEiAJlIKaDFm0QhyYiSAxGZRchcXWVdnbwHCYoowUADm8ESgAGYAThAAtkhkIDgQSKYGILEJSB4paYgAzDSMWGC2IFD0cAAWISBWyhUwAB5YcDgImdmJRTSpSY027FCO0XG9eQOIyd4VURqaEBCaUP6C+pSiQA -#align(center, commutative-diagram( - node-padding: (60pt, 50pt), - node((0, 1), [$P_(n+1)$]), - node((1, 1), [$Z_n (Q)$]), - node((1, 2), [$0$]), - node((1, 0), [$Q_(n+1)$]), - arr((1, 1), (1, 2), []), - arr((0, 1), (1, 0), [$f_(n+1)$], label-pos: right, "dashed"), - arr((1, 0), (1, 1), [$d'_(n+1)$]), - arr((0, 1), (1, 1), [$f_n oo d_(n+1)$]), -)) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQAFAfQAowBqYgEoQAX1LpMufIRRli1Ok1bsAWlzAACHgEUR4ydjwEiAJlIKaDFm0QhyYiSAxGZRchcXWVdnbwHCYoowUADm8ESgAGYAThAAtkhkIDgQSKYGILEJSB4paYgAzDSMWGC2IFD0cAAWISBWyhUwAB5YcDgImdmJRTSpSY027FCO0XG9eQOIyd4VURqaEBCaUP6C+pSiQA + #align( + center, + commutative-diagram( + node-padding: (60pt, 50pt), + node((0, 1), [$P_(n+1)$]), + node((1, 1), [$Z_n (Q)$]), + node((1, 2), [$0$]), + node((1, 0), [$Q_(n+1)$]), + arr((1, 1), (1, 2), []), + arr((0, 1), (1, 0), [$f_(n+1)$], label-pos: right, "dashed"), + arr((1, 0), (1, 1), [$d'_(n+1)$]), + arr((0, 1), (1, 1), [$f_n oo d_(n+1)$]), + ), + ) where since $P_(n+1)$ is an projective object, the morphism $f_(n+1) : P_(n+1) -> Q_(n+1)$ exists such that the diagram commutes, i.e. $d'_(n+1) oo f_(n+1) = f_n oo d_(n+1)$. - For the uniqueness, let $h: P_cx -> Q_cx$ be another chain map lifting $f'$. We want to construct homotopy $s$ with terms $s_n: P_n -> Q_(n+1)$ such that + For the uniqueness, let $h: P_cx -> Q_cx$ be another chain map lifting $f'$. We want to construct homotopy $s$ with terms $s_n: P_n -> Q_(n+1)$ such that $ h_n - f_n = d'_(n+1) s_n + s_(n-1) d_n $ - for all $n >= -1$. - - For the base case, set $f_(-1) = h_(-1) = f'$, $d_0 = epsilon, d_(-1) = 0, d'_0 = eta, d_(-1) = 0$. We construct $s_(-2) = s_(-1) = 0$, and the claim is trivially true for $n = -1$. + for all $n >= -1$. + + For the base case, set $f_(-1) = h_(-1) = f'$, $d_0 = epsilon, d_(-1) = 0, d'_0 = eta, d_(-1) = 0$. We construct $s_(-2) = s_(-1) = 0$, and the claim is trivially true for $n = -1$. For the induction step, assume we have constructed $s_i$ for $i <= n$, // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZAJgBoAGAXVJADcBDAGwFcYkQAFAfQAowBqAIwBKEAF9S6TLnyEUgitTpNW7bn37FREqdjwEiAZkU0GLNok5dCOkBj2yiAFhPLza3mAC0I8ZLvS+nLICoJKZqqWAIqemtr+9jIGKGRhpioWIDEavraJQUakaW6RWZ7xuknBLsURmdneuQmBjijkrnXsfpUFbUXhGV15LcnIAKwdg5bdAQ6jE7VTIOJKMFAA5vBEoABmAE4QALZILiA4EEgTJZlQAOSxWjP7R5c050gAbOnulnexTbsDsdEF8zhdEAB2b6lP58CogZ7AhRgpDta7sKAPeGI1FvcFkdG-f7YoFIAnvRDGQkgTFwp6kxBoilXTqWAAWxIABF5OTtiaIaIx6AAjGCMDgjOQgLBgbCwekvRDk8Gg1kgDlw7m88ogQUisUSuZSmVyti2HGUvFIKHUjWNYRavl8HwCkBC0XiyXsE1YeXmhnIimnNV2uKOrG6t36z1G72y31m-wWgAcVsQgn9ioAnGmnJngVSKYJyPnrWnBBmkwzla83TKbvQ4Gy1pG1XBrAqC2nVUt287fIL6xjG82oJ3cSjEKdGEPfiOW9DMn2BLlKGIgA -#align(center, commutative-diagram( - node((0, 2), [$P_(n+1)$]), - node((0, 1), [$P_(n+2)$]), - node((0, 3), [$P_n$]), - node((0, 4), [$P_(n-1)$]), - node((1, 1), [$Q_(n+2)$]), - node((1, 2), [$Q_(n+1)$]), - node((1, 3), [$Q_(n)$]), - node((1, 4), [$Q_(n-1)$]), - node((0, 0), []), - node((1, 0), []), - node((0, 5), []), - node((1, 5), []), - arr((1, 1), (1, 2), [$d'_(n+2)$]), - arr((1, 2), (1, 3), [$d'_(n+1)$]), - arr((1, 3), (1, 4), [$d'_(n)$]), - arr((0, 1), (0, 2), [$d_(n+2)$]), - arr((0, 2), (0, 3), [$d_(n+1)$]), - arr((0, 3), (0, 4), [$d_(n)$]), - arr((0, 2), (1, 2), [$h_(n+1) - f_(n+1)$], label-pos: 0), - arr((0, 3), (1, 3), [$h_(n) - f_(n)$], label-pos: 0), - arr((0, 4), (1, 4), [$h_(n-1) - f_(n-1)$], label-pos: 0), - arr((0, 1), (1, 1), [$h_(n+2) - f_(n+2)$], label-pos: 0), - arr((0, 0), (0, 1), []), - arr((1, 0), (1, 1), []), - arr((0, 4), (0, 5), []), - arr((1, 4), (1, 5), []), - arr((0, 3), (1, 2), [$s_n$], label-pos: 0, "dashed"), - arr((0, 4), (1, 3), [$s_(n-1)$], label-pos: 0, "dashed"), - arr((0, 2), (1, 1), [$s_(n+1)$], label-pos: 0, "dashed"), -)) - -(Again, only the solid lines commute.) -We want to show the existence of $s_(n+1)$ which satisfies - -$ d'_(n+2) s_(n+1) = h_(n+1) - f_(n+1) - s_n d_(n+1). $ - -We claim that $(h_(n+1) - f_(n+1) - s_n d_(n+1))$ sends $P_(n+1)$ to $Z_(n+1) (Q)$. First, notice that this claim would indicate the existence of $s_(n+1)$, as we would have - -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQAFAfQAowBqYgEoQAX1LpMufIRRli1Ok1bsAWrwHCABDwCKI8ZOx4CRcqQU0GLNohC6N-AEwGJIDMZlEnFxdZV25GKKMFAA5vBEoABmAE4QALZI5iA4EEg+IIxYYLYgUPRwABahIFbKeXCOwmVZ9ABGMIwcUiayIDnYsGJucYkZNGlIZEo27FAA5HzOrjHxSYgpQ4gj-nlF1UJaALRa0Zs7WlVgWlCbtYwNTS2epnaMMNE4PXP9K4PpiADMopSiQA -#align(center, commutative-diagram( - node-padding: (60pt, 50pt), - node((0, 1), [$P_(n+1)$]), - node((1, 1), [$Z_(n+1) (Q)$]), - node((1, 0), [$Q_(n+2)$]), - node((1, 2), [$0$]), - arr((0, 1), (1, 0), [$s_(n+1)$], label-pos: 0, "dashed"), - arr((1, 0), (1, 1), [$d'_(n+2)$]), - arr((0, 1), (1, 1), [$h_(n+1) - f_(n+1) - s_n d_(n+1)$], label-pos: left), - arr((1, 1), (1, 2), []), -)) - -where $P_(n+1)$ is projective and $d'_(n+2) : Q_(n+2) -> Z_(n+1) (Q)$ is an epimorphism. - -Now $ + #align( + center, + commutative-diagram( + node((0, 2), [$P_(n+1)$]), + node((0, 1), [$P_(n+2)$]), + node((0, 3), [$P_n$]), + node((0, 4), [$P_(n-1)$]), + node((1, 1), [$Q_(n+2)$]), + node((1, 2), [$Q_(n+1)$]), + node((1, 3), [$Q_(n)$]), + node((1, 4), [$Q_(n-1)$]), + node((0, 0), []), + node((1, 0), []), + node((0, 5), []), + node((1, 5), []), + arr((1, 1), (1, 2), [$d'_(n+2)$]), + arr((1, 2), (1, 3), [$d'_(n+1)$]), + arr((1, 3), (1, 4), [$d'_(n)$]), + arr((0, 1), (0, 2), [$d_(n+2)$]), + arr((0, 2), (0, 3), [$d_(n+1)$]), + arr((0, 3), (0, 4), [$d_(n)$]), + arr((0, 2), (1, 2), [$h_(n+1) - f_(n+1)$], label-pos: 0), + arr((0, 3), (1, 3), [$h_(n) - f_(n)$], label-pos: 0), + arr((0, 4), (1, 4), [$h_(n-1) - f_(n-1)$], label-pos: 0), + arr((0, 1), (1, 1), [$h_(n+2) - f_(n+2)$], label-pos: 0), + arr((0, 0), (0, 1), []), + arr((1, 0), (1, 1), []), + arr((0, 4), (0, 5), []), + arr((1, 4), (1, 5), []), + arr((0, 3), (1, 2), [$s_n$], label-pos: 0, "dashed"), + arr((0, 4), (1, 3), [$s_(n-1)$], label-pos: 0, "dashed"), + arr((0, 2), (1, 1), [$s_(n+1)$], label-pos: 0, "dashed"), + ), + ) + + (Again, only the solid lines commute.) + We want to show the existence of $s_(n+1)$ which satisfies + + $ d'_(n+2) s_(n+1) = h_(n+1) - f_(n+1) - s_n d_(n+1). $ + + We claim that $(h_(n+1) - f_(n+1) - s_n d_(n+1))$ sends $P_(n+1)$ to $Z_(n+1) (Q)$. First, notice that this claim would indicate the existence of $s_(n+1)$, as we would have + + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQAFAfQAowBqYgEoQAX1LpMufIRRli1Ok1bsAWrwHCABDwCKI8ZOx4CRcqQU0GLNohC6N-AEwGJIDMZlEnFxdZV25GKKMFAA5vBEoABmAE4QALZI5iA4EEg+IIxYYLYgUPRwABahIFbKeXCOwmVZ9ABGMIwcUiayIDnYsGJucYkZNGlIZEo27FAA5HzOrjHxSYgpQ4gj-nlF1UJaALRa0Zs7WlVgWlCbtYwNTS2epnaMMNE4PXP9K4PpiADMopSiQA + #align( + center, + commutative-diagram( + node-padding: (60pt, 50pt), + node((0, 1), [$P_(n+1)$]), + node((1, 1), [$Z_(n+1) (Q)$]), + node((1, 0), [$Q_(n+2)$]), + node((1, 2), [$0$]), + arr((0, 1), (1, 0), [$s_(n+1)$], label-pos: 0, "dashed"), + arr((1, 0), (1, 1), [$d'_(n+2)$]), + arr((0, 1), (1, 1), [$h_(n+1) - f_(n+1) - s_n d_(n+1)$], label-pos: left), + arr((1, 1), (1, 2), []), + ), + ) + + where $P_(n+1)$ is projective and $d'_(n+2) : Q_(n+2) -> Z_(n+1) (Q)$ is an epimorphism. + + Now $ d'_(n+1) (h_(n+1) - f_(n+1) - s_n d_(n+1)) &= d'_(n+1) (h_(n+1) - f_(n+1)) - d'_(n+1) s_n d_(n+1) \ - &= d'_(n+1) (h_(n+1) - f_(n+1)) - (h_n - f_n - s_(n-1) d_n) d_(n+1) + &= d'_(n+1) (h_(n+1) - f_(n+1)) - (h_n - f_n - s_(n-1) d_n) d_(n+1) \ &= d'_(n+1) (h_(n+1) - f_(n+1)) - (h_n - f_n) d_(n+1) \ &= 0. $ Hence $(h_(n+1) - f_(n+1) - s_n d_(n+1))$ sends $P_(n+1)$ to $Z_(n+1) (Q)$. - // The uniqueness is an exercise. + // The uniqueness is an exercise. ] #lemma("Horseshoe Lemma")[Suppose we have a commutative diagram -// #align(center,image("../imgs/2023-11-04-13-51-57.png",width:50%)) -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAAUByAfQCYQAvqXSZc+Qil7kqtRizZduxQcJAZseAkQDM06vWatEHHgAYVIjeKIAWPbMNsAgpwtrRmicju8ZB+cZObupiWih22n5yRiAurkKWoV52plGOxuYJ7lZh3qQ2aQEgmaohnjqkkfrRCpxmwR7WkpWFMVw8ylllTSQt1ekmPPxdjbmm9v4xAHQzDTle41UORTNTc0lEAKwTNRnr5SjbS5NsmTIwUADm8ESgAGYAThAAtkjjIDgQSMRZjy-f1E+SF4vyer0QUg+X0QumWMRgaGwDAI8VUf3BxDIULeoP+iGIkKB+NMuIx7yJAE5SUgKYDoQAOamIel0pDbOFsBFIlGo+5gpAANlZMKZsKJdg5xiw3CCTIlRPZJ2MaGlsrR-MQ7KJAHZRcLiNomVrocQbAIKAIgA -#align(center, commutative-diagram( - node-padding: (40pt, 40pt), - node((1, 1), [$P'_2$]), - node((1, 2), [$P'_1$]), - node((1, 3), [$P'_0$]), - node((1, 4), [$A'$]), - node((2, 4), [$A$]), - node((3, 4), [$A''$]), - node((0, 4), [$0$]), - node((4, 4), [$0$]), - node((3, 3), [$P''_0$]), - node((3, 2), [$P''_1$]), - node((3, 1), [$P''_2$]), - node((1, 0), [$...$]), - node((3, 0), [$...$]), - node((1, 5), [$0$]), - node((3, 5), [$0$]), - arr((1, 1), (1, 2), []), - arr((1, 2), (1, 3), []), - arr((1, 3), (1, 4), [$epsilon'$]), - arr((1, 0), (1, 1), []), - arr((3, 0), (3, 1), []), - arr((3, 1), (3, 2), []), - arr((3, 2), (3, 3), []), - arr((3, 3), (3, 4), [$epsilon''$]), - arr((0, 4), (1, 4), []), - arr((1, 4), (2, 4), [$i_A$]), - arr((2, 4), (3, 4), [$pi_A$]), - arr((3, 4), (4, 4), []), - arr((1, 4), (1, 5), []), - arr((3, 4), (3, 5), []), -)) - where the -column is exact and the rows are projective resolutions. Set $P_n eq$ -$P_n^prime xor P_n^(prime prime)$. Then the $P_n$ assemble to form a -projective resolution $P$ of $A$, and the right-hand column lifts to an -exact sequence of complexes -$ 0 arrow.r P'_cx arrow.r^(i_cx) P_cx arrow.r^(pi_cx) P''_cx arrow.r 0 comma $ -where $i_n colon P_n^prime arrow.r P_n$ and -$pi_n colon P_n arrow.r P_n^(prime prime)$ are the natural inclusion and -projection, respectively. - - - - - // Suppose $ses(A', A, A'')$ is a #sest, and $P'_cx rgt(epsilon') A'$ and $P''_cx rgt(epsilon'') A''$ are projective resolutions. Then there exists a projective resolution $P rgt(epsilon) A$ such that $P_n = P'_n ds P''_n$ such that + // #align(center,image("../imgs/2023-11-04-13-51-57.png",width:50%)) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAAUByAfQCYQAvqXSZc+Qil7kqtRizZduxQcJAZseAkQDM06vWatEHHgAYVIjeKIAWPbMNsAgpwtrRmicju8ZB+cZObupiWih22n5yRiAurkKWoV52plGOxuYJ7lZh3qQ2aQEgmaohnjqkkfrRCpxmwR7WkpWFMVw8ylllTSQt1ekmPPxdjbmm9v4xAHQzDTle41UORTNTc0lEAKwTNRnr5SjbS5NsmTIwUADm8ESgAGYAThAAtkjjIDgQSMRZjy-f1E+SF4vyer0QUg+X0QumWMRgaGwDAI8VUf3BxDIULeoP+iGIkKB+NMuIx7yJAE5SUgKYDoQAOamIel0pDbOFsBFIlGo+5gpAANlZMKZsKJdg5xiw3CCTIlRPZJ2MaGlsrR-MQ7KJAHZRcLiNomVrocQbAIKAIgA + #align( + center, + commutative-diagram( + node-padding: (40pt, 40pt), + node((1, 1), [$P'_2$]), + node((1, 2), [$P'_1$]), + node((1, 3), [$P'_0$]), + node((1, 4), [$A'$]), + node((2, 4), [$A$]), + node((3, 4), [$A''$]), + node((0, 4), [$0$]), + node((4, 4), [$0$]), + node((3, 3), [$P''_0$]), + node((3, 2), [$P''_1$]), + node((3, 1), [$P''_2$]), + node((1, 0), [$...$]), + node((3, 0), [$...$]), + node((1, 5), [$0$]), + node((3, 5), [$0$]), + arr((1, 1), (1, 2), []), + arr((1, 2), (1, 3), []), + arr((1, 3), (1, 4), [$epsilon'$]), + arr((1, 0), (1, 1), []), + arr((3, 0), (3, 1), []), + arr((3, 1), (3, 2), []), + arr((3, 2), (3, 3), []), + arr((3, 3), (3, 4), [$epsilon''$]), + arr((0, 4), (1, 4), []), + arr((1, 4), (2, 4), [$i_A$]), + arr((2, 4), (3, 4), [$pi_A$]), + arr((3, 4), (4, 4), []), + arr((1, 4), (1, 5), []), + arr((3, 4), (3, 5), []), + ), + ) + where the + column is exact and the rows are projective resolutions. Set $P_n eq$ + $P_n^prime xor P_n^(prime prime)$. Then the $P_n$ assemble to form a + projective resolution $P$ of $A$, and the right-hand column lifts to an + exact sequence of complexes + $ 0 arrow.r P'_cx arrow.r^(i_cx) P_cx arrow.r^(pi_cx) P''_cx arrow.r 0 comma $ + where $i_n colon P_n^prime arrow.r P_n$ and + $pi_n colon P_n arrow.r P_n^(prime prime)$ are the natural inclusion and + projection, respectively. + + + + + // Suppose $ses(A', A, A'')$ is a #sest, and $P'_cx rgt(epsilon') A'$ and $P''_cx rgt(epsilon'') A''$ are projective resolutions. Then there exists a projective resolution $P rgt(epsilon) A$ such that $P_n = P'_n ds P''_n$ such that // $ // 0 -> P' rgt(i) P rgt(pi) P'' -> 0 @@ -742,93 +792,99 @@ projection, respectively. // (Some remark...) #proof[@weibel[Horseshoe Lemma 2.2.8]. - Since $P''_0$ is projective and $pi_A : A -> A''$ is an epimorphism, we can lift $epsilon^(prime prime) : P''_0 -> A''$ to a map -$tilde(epsilon^(prime prime)) : P_0^(prime prime) arrow.r A$. The direct sum of $tilde(epsilon^(prime prime))$ and -$i_A epsilon^prime colon P_0^prime arrow.r A$ gives a map -$epsilon colon P_0 arrow.r A$. Then the diagram below -commutes: -// #align(center,image("../imgs/2023-11-04-13-59-23.png",width:80%)) -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAGkYAnAChjWwMCAcgCUIAL6l0mXPkIoyAJiq1GLNp179BBcVJnY8BImQDMq+s1aIO3PgKxCwwsZOkgMR+USXlL6jYgAArCAPoADO6GciYofirUVhq2wZHRnrLGCsh+FkmBbKHhUQaZ3nHIZv4F1mwAgsIZXrE51Ylqdbb1zVk+KNX5nSkgjU1lLdlEETXDQaUek-3IACyzyfO9FTkzHRtsCzFTKGt7hbaH5a3TpEP7F1vXJ7cBXSCXS5VkEa8jH31fUgrX6bCYAnJ+H61P6PY65IEgg6w5bVKFzJFg7ZEarA6Gg1QwKAAc3gRFAADMuBAALZIACc1BwECQETKlJpLMZzMQZjZVNpPK5SAAbHi2DonCIMuyBaKQEykMRWR4ZYqyPLucQ+RzEOqFYgVtqBWsNUgAOxi2wS5zS-nmoW6pRGxXVU2IJ0qu3uh0AVmdiB9DoAHJaQNaRONPTqQ27iIaowLiIG3cqKV6ZrH-XruR60zq-LHhVmLW7eQmkK79fG88bff7k-riEH-SX9c3y4g5fqzVmGW6ix2Y-qlKyKBIgA -#align(center, commutative-diagram( - node-padding: (40pt, 40pt), - - node((1, 1), [$Ker(epsilon')$]), - node((2, 1), [$Ker(epsilon)$]), - node((3, 1), [$Ker(epsilon'')$]), - node((1, 2), [$P'_0$]), - node((2, 2), [$P_0$]), - node((3, 2), [$P''_0$]), - node((1, 3), [$A'$]), - node((2, 3), [$A$]), - node((3, 3), [$A''$]), - node((1, 0), [$0$]), - node((1, 4), [$0$]), - node((2, 0), [$0$]), - node((2, 4), [$0$]), - node((3, 0), [$0$]), - node((3, 4), [$0$]), - node((0, 1), [$0$]), - node((4, 1), [$0$]), - node((0, 2), [$0$]), - node((4, 2), [$0$]), - node((0, 3), [$0$]), - node((4, 3), [$0$]), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), []), - arr((1, 2), (1, 3), [$epsilon'$]), - arr((1, 3), (1, 4), []), - arr((2, 0), (2, 1), []), - arr((2, 1), (2, 2), []), - arr((2, 2), (2, 3), [$epsilon$]), - arr((2, 3), (2, 4), []), - arr((3, 0), (3, 1), []), - arr((3, 1), (3, 2), []), - arr((3, 2), (3, 3), [$epsilon''$]), - arr((3, 3), (3, 4), []), - arr((0, 1), (1, 1), []), - arr((1, 1), (2, 1), []), - arr((2, 1), (3, 1), []), - arr((3, 1), (4, 1), []), - arr((0, 2), (1, 2), []), - arr((1, 2), (2, 2), []), - arr((2, 2), (3, 2), []), - arr((3, 2), (4, 2), []), - arr((2, 3), (3, 3), []), - arr((1, 3), (2, 3), []), - arr((0, 3), (1, 3), []), - arr((3, 3), (4, 3), []), -)) - -where the right two columns are short exact sequences, and -the @snake[Snake Lemma] shows that the left column is exact and that -$"Coker"lr((epsilon)) eq 0$, so that $P_0$ maps onto $A$. This -finishes the initial step and brings us to the situation -// #align(center,image("../imgs/2023-11-04-13-56-51.png",width:40%)) -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZAJgBoAGAXVJADcBDAGwFcYkRyQBfU9TXfIRRkAjNTpNW7ANIwATgAoYabIwIByAJTdeIDNjwEiZYuIYs2iELMXLVBbTz4HBx0gGYzky9flKVWGpg6lo6zgJGKCKkYjTmUlYACuoA+iJhevyGQsjRnnHe7Mmp6U6ZLpHI5DFeFuwAdI0Z+hE57jUFdVacZS3ZRNX5El0gjfXNWa7CpAAstQkcExVtHvM+PeIwUADm8ESgAGZyEAC2SABsNDgQSDNlR6e3VzeI0cMLUOoZD2evz0gAdnux1+1RA1yQImBjz+4JexGhvzIcKQ7kRSAAHP9EABWdG47Htd4+T5ffFEiGIACc5OxInIXEoXCAA -#align(center, commutative-diagram( - node-padding: (40pt, 40pt), - node((0, 2), [$0$]), - node((1, 2), [$Ker(epsilon')$]), - node((2, 2), [$Ker(epsilon)$]), - node((3, 2), [$Ker(epsilon'')$]), - node((1, 1), [$P'_1$]), - node((3, 1), [$P''_1$]), - node((1, 0), [$...$]), - node((1, 3), [$0$]), - node((3, 0), [$...$]), - node((4, 2), [$0$]), - node((3, 3), [$0$]), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), [$d'$]), - arr((1, 2), (1, 3), []), - arr((0, 2), (1, 2), []), - arr((1, 2), (2, 2), []), - arr((2, 2), (3, 2), []), - arr((3, 0), (3, 1), []), - arr((3, 1), (3, 2), [$d''$]), - arr((3, 2), (4, 2), []), - arr((3, 2), (3, 3), []), -)) -The filling in of the "horseshoe" now proceeds by induction. + Since $P''_0$ is projective and $pi_A : A -> A''$ is an epimorphism, we can lift $epsilon^(prime prime) : P''_0 -> A''$ to a map + $tilde(epsilon^(prime prime)) : P_0^(prime prime) arrow.r A$. The direct sum of $tilde(epsilon^(prime prime))$ and + $i_A epsilon^prime colon P_0^prime arrow.r A$ gives a map + $epsilon colon P_0 arrow.r A$. Then the diagram below + commutes: + // #align(center,image("../imgs/2023-11-04-13-59-23.png",width:80%)) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAGkYAnAChjWwMCAcgCUIAL6l0mXPkIoyAJiq1GLNp179BBcVJnY8BImQDMq+s1aIO3PgKxCwwsZOkgMR+USXlL6jYgAArCAPoADO6GciYofirUVhq2wZHRnrLGCsh+FkmBbKHhUQaZ3nHIZv4F1mwAgsIZXrE51Ylqdbb1zVk+KNX5nSkgjU1lLdlEETXDQaUek-3IACyzyfO9FTkzHRtsCzFTKGt7hbaH5a3TpEP7F1vXJ7cBXSCXS5VkEa8jH31fUgrX6bCYAnJ+H61P6PY65IEgg6w5bVKFzJFg7ZEarA6Gg1QwKAAc3gRFAADMuBAALZIACc1BwECQETKlJpLMZzMQZjZVNpPK5SAAbHi2DonCIMuyBaKQEykMRWR4ZYqyPLucQ+RzEOqFYgVtqBWsNUgAOxi2wS5zS-nmoW6pRGxXVU2IJ0qu3uh0AVmdiB9DoAHJaQNaRONPTqQ27iIaowLiIG3cqKV6ZrH-XruR60zq-LHhVmLW7eQmkK79fG88bff7k-riEH-SX9c3y4g5fqzVmGW6ix2Y-qlKyKBIgA + #align( + center, + commutative-diagram( + node-padding: (40pt, 40pt), + + node((1, 1), [$Ker(epsilon')$]), + node((2, 1), [$Ker(epsilon)$]), + node((3, 1), [$Ker(epsilon'')$]), + node((1, 2), [$P'_0$]), + node((2, 2), [$P_0$]), + node((3, 2), [$P''_0$]), + node((1, 3), [$A'$]), + node((2, 3), [$A$]), + node((3, 3), [$A''$]), + node((1, 0), [$0$]), + node((1, 4), [$0$]), + node((2, 0), [$0$]), + node((2, 4), [$0$]), + node((3, 0), [$0$]), + node((3, 4), [$0$]), + node((0, 1), [$0$]), + node((4, 1), [$0$]), + node((0, 2), [$0$]), + node((4, 2), [$0$]), + node((0, 3), [$0$]), + node((4, 3), [$0$]), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), []), + arr((1, 2), (1, 3), [$epsilon'$]), + arr((1, 3), (1, 4), []), + arr((2, 0), (2, 1), []), + arr((2, 1), (2, 2), []), + arr((2, 2), (2, 3), [$epsilon$]), + arr((2, 3), (2, 4), []), + arr((3, 0), (3, 1), []), + arr((3, 1), (3, 2), []), + arr((3, 2), (3, 3), [$epsilon''$]), + arr((3, 3), (3, 4), []), + arr((0, 1), (1, 1), []), + arr((1, 1), (2, 1), []), + arr((2, 1), (3, 1), []), + arr((3, 1), (4, 1), []), + arr((0, 2), (1, 2), []), + arr((1, 2), (2, 2), []), + arr((2, 2), (3, 2), []), + arr((3, 2), (4, 2), []), + arr((2, 3), (3, 3), []), + arr((1, 3), (2, 3), []), + arr((0, 3), (1, 3), []), + arr((3, 3), (4, 3), []), + ), + ) + + where the right two columns are short exact sequences, and + the @snake[Snake Lemma] shows that the left column is exact and that + $"Coker"lr((epsilon)) eq 0$, so that $P_0$ maps onto $A$. This + finishes the initial step and brings us to the situation + // #align(center,image("../imgs/2023-11-04-13-56-51.png",width:40%)) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZAJgBoAGAXVJADcBDAGwFcYkRyQBfU9TXfIRRkAjNTpNW7ANIwATgAoYabIwIByAJTdeIDNjwEiZYuIYs2iELMXLVBbTz4HBx0gGYzky9flKVWGpg6lo6zgJGKCKkYjTmUlYACuoA+iJhevyGQsjRnnHe7Mmp6U6ZLpHI5DFeFuwAdI0Z+hE57jUFdVacZS3ZRNX5El0gjfXNWa7CpAAstQkcExVtHvM+PeIwUADm8ESgAGZyEAC2SABsNDgQSDNlR6e3VzeI0cMLUOoZD2evz0gAdnux1+1RA1yQImBjz+4JexGhvzIcKQ7kRSAAHP9EABWdG47Htd4+T5ffFEiGIACc5OxInIXEoXCAA + #align( + center, + commutative-diagram( + node-padding: (40pt, 40pt), + node((0, 2), [$0$]), + node((1, 2), [$Ker(epsilon')$]), + node((2, 2), [$Ker(epsilon)$]), + node((3, 2), [$Ker(epsilon'')$]), + node((1, 1), [$P'_1$]), + node((3, 1), [$P''_1$]), + node((1, 0), [$...$]), + node((1, 3), [$0$]), + node((3, 0), [$...$]), + node((4, 2), [$0$]), + node((3, 3), [$0$]), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), [$d'$]), + arr((1, 2), (1, 3), []), + arr((0, 2), (1, 2), []), + arr((1, 2), (2, 2), []), + arr((2, 2), (3, 2), []), + arr((3, 0), (3, 1), []), + arr((3, 1), (3, 2), [$d''$]), + arr((3, 2), (4, 2), []), + arr((3, 2), (3, 3), []), + ), + ) + The filling in of the "horseshoe" now proceeds by induction. ] #endlec(8) \ No newline at end of file diff --git a/ha/6-df.typ b/ha/6-df.typ index c8a1c1f..f7ba4c6 100644 --- a/ha/6-df.typ +++ b/ha/6-df.typ @@ -6,65 +6,77 @@ @weibel[Section 2.1]. The next two definitions are stated separately for clarity. #definition[ - Let $cA, cB$ be abelian categories. A *homological $delta$-functor* $T$ from $cA$ to $cB$ - is a collection of additive functors ${T_n : cA -> cB}_(n >= 0)$ such that - #enum(block(width: 100%)[ - (Existence of $delta$). For each #sest $ses(A, B, C)$ in $cA$, there exist morphisms - $delta_n : T_n (C) -> T_(n-1)(A) $ - for $n >= 1$ such that $ ... -> T_(n+1)(C) ->^delta T_n (A) -> T_n (B) -> T_n (C) rgt(delta) T_(n-1)(A) -> ... \ -> T_1 (C) ->^delta T_0 (A) -> T_0 (B) -> T_0 (C) -> 0 $ - is a #lest in $cB$. In particular, $T_0$ is right exact; - ], - [ - (Naturality of $delta$). For each morphism of #sess from $ses(A', B', C')$ to $ses(A, B, C)$, the $delta$'s above give a commutative diagram - // #align(center,image("../imgs/2023-11-24-19-38-59.png",width:30%) - // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRABUB9MAAgAoAwgHIAlCAC+pdJlz5CKAIzkqtRizZc+YALQKR-AIKiJUkBmx4CRMgpX1mrRB278BYydItyiS29XvqTpo6eobuKjBQAObwRKAAZgBOEAC2SGQgOBBIAEweIEmpSEqZ2YgAzPmFaYg51FlI5f5qjiCwDDh0JgnJNRkNiCUBre2dEhTiQA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$T_n (C')$]), - node((0, 1), [$T_(n-1) (A')$]), - node((1, 0), [$T_n (C)$]), - node((1, 1), [$T_(n-1) (A)$]), - arr((0, 0), (1, 0), []), - arr((0, 1), (1, 1), []), - arr((1, 0), (1, 1), [$delta$]), - arr((0, 0), (0, 1), [$delta$]), -)) - ]) + Let $cA, cB$ be abelian categories. A *homological $delta$-functor* $T$ from $cA$ to $cB$ + is a collection of additive functors ${T_n : cA -> cB}_(n >= 0)$ such that + #enum( + block(width: 100%)[ + (Existence of $delta$). For each #sest $ses(A, B, C)$ in $cA$, there exist morphisms + $delta_n : T_n (C) -> T_(n-1)(A)$ + for $n >= 1$ such that $ ... -> T_(n+1)(C) ->^delta T_n (A) -> T_n (B) -> T_n (C) rgt(delta) T_(n-1)(A) -> ... \ -> T_1 (C) ->^delta T_0 (A) -> T_0 (B) -> T_0 (C) -> 0 $ + is a #lest in $cB$. In particular, $T_0$ is right exact; + ], + [ + (Naturality of $delta$). For each morphism of #sess from $ses(A', B', C')$ to $ses(A, B, C)$, the $delta$'s above give a commutative diagram + // #align(center,image("../imgs/2023-11-24-19-38-59.png",width:30%) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRABUB9MAAgAoAwgHIAlCAC+pdJlz5CKAIzkqtRizZc+YALQKR-AIKiJUkBmx4CRMgpX1mrRB278BYydItyiS29XvqTpo6eobuKjBQAObwRKAAZgBOEAC2SGQgOBBIAEweIEmpSEqZ2YgAzPmFaYg51FlI5f5qjiCwDDh0JgnJNRkNiCUBre2dEhTiQA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$T_n (C')$]), + node((0, 1), [$T_(n-1) (A')$]), + node((1, 0), [$T_n (C)$]), + node((1, 1), [$T_(n-1) (A)$]), + arr((0, 0), (1, 0), []), + arr((0, 1), (1, 1), []), + arr((1, 0), (1, 1), [$delta$]), + arr((0, 0), (0, 1), [$delta$]), + ), + ) + ], + ) ] #definition[ - Let $cA, cB$ be abelian categories. A *cohomological $delta$-functor* $T$ from $cA$ to $cB$ is a collection of additive functors ${T^n : cA -> cB}_(n >= 0)$ such that - - - #enum(block(width: 100%)[ - (Existence of $delta$). For each #sest $ses(A, B, C)$ in $cA$, there exist morphisms - $delta^n : T^n (C) -> T^(n+1)(A) $ - for $n >= 0$ such that - $ 0 -> T^0 (A) -> T^0 (B) -> T^0 (C) ->^delta T^1 (A) -> ... \ -> T^(n-1)(C) ->^delta T^n (A) -> T^n (B) -> T^n (C) rgt(delta) T^(n+1)(A) -> ... $ - is a long exact sequence in $cB$. In particular, $T^0$ is left exact; - ], - [ - (Naturality of $delta$). For each morphism of #sess from $ses(A', B', C')$ to $ses(A, B, C)$, the $delta$'s above give a commutative diagram - // #align(center,image("../imgs/2023-11-24-19-39-14.png",width:30%)) - // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRABUA9MAAgAoAwgHIAlCAC+pdJlz5CKAIzkqtRizZc+YANQKR-AIKiJUkBmx4CRMgpX1mrRB278BYydItyiS29XvqTpo6eobuKjBQAObwRKAAZgBOEAC2SGQgOBBIAEweIEmpSEqZ2YgAzPmFaYg51FlI5f5qjiCwDDh0JgnJNRkNiCUBre2dEhTiQA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$T^n (C')$]), - node((0, 1), [$T^(n+1) (A')$]), - node((1, 0), [$T^n (C)$]), - node((1, 1), [$T^(n+1) (A)$]), - arr((0, 0), (1, 0), []), - arr((0, 1), (1, 1), []), - arr((1, 0), (1, 1), [$delta$]), - arr((0, 0), (0, 1), [$delta$]), -)) - ]) + Let $cA, cB$ be abelian categories. A *cohomological $delta$-functor* $T$ from $cA$ to $cB$ is a collection of additive functors ${T^n : cA -> cB}_(n >= 0)$ such that + + + #enum( + block(width: 100%)[ + (Existence of $delta$). For each #sest $ses(A, B, C)$ in $cA$, there exist morphisms + $delta^n : T^n (C) -> T^(n+1)(A)$ + for $n >= 0$ such that + $ + 0 -> T^0 (A) -> T^0 (B) -> T^0 (C) ->^delta T^1 (A) -> ... \ -> T^(n-1)(C) ->^delta T^n (A) -> T^n (B) -> T^n (C) rgt(delta) T^(n+1)(A) -> ... + $ + is a long exact sequence in $cB$. In particular, $T^0$ is left exact; + ], + [ + (Naturality of $delta$). For each morphism of #sess from $ses(A', B', C')$ to $ses(A, B, C)$, the $delta$'s above give a commutative diagram + // #align(center,image("../imgs/2023-11-24-19-39-14.png",width:30%)) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRABUA9MAAgAoAwgHIAlCAC+pdJlz5CKAIzkqtRizZc+YANQKR-AIKiJUkBmx4CRMgpX1mrRB278BYydItyiS29XvqTpo6eobuKjBQAObwRKAAZgBOEAC2SGQgOBBIAEweIEmpSEqZ2YgAzPmFaYg51FlI5f5qjiCwDDh0JgnJNRkNiCUBre2dEhTiQA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$T^n (C')$]), + node((0, 1), [$T^(n+1) (A')$]), + node((1, 0), [$T^n (C)$]), + node((1, 1), [$T^(n+1) (A)$]), + arr((0, 0), (1, 0), []), + arr((0, 1), (1, 1), []), + arr((1, 0), (1, 1), [$delta$]), + arr((0, 0), (0, 1), [$delta$]), + ), + ) + ], + ) ] #example[ Homology gives a homological $delta$-functor - $ + $ {H_n : Ch_(>= 0)(cA) -> cA}_(n >= 0), $ where $Ch_(>=0) (cA)$ is the (full) subcategory of $Ch(cA)$ whose objects are chain complexes $C_cx$ such that $C_n = 0$ for all $n < 0$. @@ -74,45 +86,52 @@ ] #example[ - If $p$ is an integer, the collection ${T_n : Ab -> Ab}_(n>=0)$ of functors defined by - $ T_n (A) = cases( + If $p$ is an integer, the collection ${T_n : Ab -> Ab}_(n>=0)$ of functors defined by + $ + T_n (A) = cases( A over p A quad& n = 0, zws_p A := brace.l a in A colon p a eq 0 brace.r quad& n = 1, 0 quad& n >= 2 - ) $ - form a homological $delta$-functor (or a cohomological -$delta$-functor with $T^0 eq T_1$ and $T^1 eq T_0$).] + ) + $ + form a homological $delta$-functor (or a cohomological + $delta$-functor with $T^0 eq T_1$ and $T^1 eq T_0$).] #proof[Apply the @snake[Snake Lemma] to the commutative diagram -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRGJAF9T1Nd9CKAIzkqtRizYBBLjxAZseAkQBMo6vWatEIAEKzeigUQDM68VrYBhA-L5LByACznNknR26H+ylGSFibtrstgo+jiIBGhLBMl52Rr7IalEW7nqh9sYoZqlB1pmJji55MWyeYjBQAObwRKAAZgBOEAC2SCIgOBBIAGzRljpots1tSGpdPYgA7APpw-Gj7Yhmk0gAHHPBC3JLSGRriEKLLcud3eMnY4gTFytXy6t3Tg9IAKzUd72viP2H0z9Zod1j9NocAJycCicIA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$0$]), - node((0, 1), [$A$]), - node((0, 2), [$B$]), - node((0, 3), [$C$]), - node((0, 4), [$0$]), - node((1, 0), [$0$]), - node((1, 1), [$A$]), - node((1, 2), [$B$]), - node((1, 3), [$C$]), - node((1, 4), [$0$]), - arr((0, 1), (1, 1), [$p$]), - arr((0, 2), (1, 2), [$p$]), - arr((0, 3), (1, 3), [$p$]), - arr((0, 0), (0, 1), []), - arr((0, 1), (0, 2), []), - arr((0, 2), (0, 3), []), - arr((0, 3), (0, 4), []), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), []), - arr((1, 2), (1, 3), []), - arr((1, 3), (1, 4), []), -)) -where $A ->^p A$ is the map of multiplication by $p$ and so on, so that we -// #align(center,image("../imgs/2023-11-06-21-52-48.png",width:50%)) -get the exact -sequence -$ 0 arrow.r zws_p A arrow.r zws_p B arrow.r zws_p C arrow.r^delta A slash p A arrow.r B slash p B arrow.r C slash p C arrow.r 0. $ + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRGJAF9T1Nd9CKAIzkqtRizYBBLjxAZseAkQBMo6vWatEIAEKzeigUQDM68VrYBhA-L5LByACznNknR26H+ylGSFibtrstgo+jiIBGhLBMl52Rr7IalEW7nqh9sYoZqlB1pmJji55MWyeYjBQAObwRKAAZgBOEAC2SCIgOBBIAGzRljpots1tSGpdPYgA7APpw-Gj7Yhmk0gAHHPBC3JLSGRriEKLLcud3eMnY4gTFytXy6t3Tg9IAKzUd72viP2H0z9Zod1j9NocAJycCicIA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$0$]), + node((0, 1), [$A$]), + node((0, 2), [$B$]), + node((0, 3), [$C$]), + node((0, 4), [$0$]), + node((1, 0), [$0$]), + node((1, 1), [$A$]), + node((1, 2), [$B$]), + node((1, 3), [$C$]), + node((1, 4), [$0$]), + arr((0, 1), (1, 1), [$p$]), + arr((0, 2), (1, 2), [$p$]), + arr((0, 3), (1, 3), [$p$]), + arr((0, 0), (0, 1), []), + arr((0, 1), (0, 2), []), + arr((0, 2), (0, 3), []), + arr((0, 3), (0, 4), []), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), []), + arr((1, 2), (1, 3), []), + arr((1, 3), (1, 4), []), + ), + ) + where $A ->^p A$ is the map of multiplication by $p$ and so on, so that we + // #align(center,image("../imgs/2023-11-06-21-52-48.png",width:50%)) + get the exact + sequence + $ + 0 arrow.r zws_p A arrow.r zws_p B arrow.r zws_p C arrow.r^delta A slash p A arrow.r B slash p B arrow.r C slash p C arrow.r 0. + $ // For any integer $p$, define $T_(0)(A) = A over p A$ and $T_1(A) = p A = {a in A | p a = 0}$ and $T_n = 0$ for $n >= 2$ gives a homological $delta$-functor from $Ab -> Ab$, by the Snake Lemma, @@ -122,14 +141,14 @@ $ 0 arrow.r zws_p A arrow.r zws_p B arrow.r zws_p C arrow.r^delta A slash p A ar #let dftor = [$delta$-functor] #definition[ - A *morphism* $f: S->T$ of homological (resp. cohomological) $delta$-functors is a collection of natural transformations ${f_n : S_n -> T_n}_(n>=0)$ (resp. ${f^n : S^n -> T^n}_(n>=0)$) which commutes with $delta$. ] - #remark[ - This definition is equivalent to saying that there is a commutative "ladder diagram" connecting -the long exact sequences for $S$ and $T$ associated to any short exact -sequence in $cA$. - ] + A *morphism* $f: S->T$ of homological (resp. cohomological) $delta$-functors is a collection of natural transformations ${f_n : S_n -> T_n}_(n>=0)$ (resp. ${f^n : S^n -> T^n}_(n>=0)$) which commutes with $delta$. ] +#remark[ + This definition is equivalent to saying that there is a commutative "ladder diagram" connecting + the long exact sequences for $S$ and $T$ associated to any short exact + sequence in $cA$. +] #definition[ - A homological $delta$-functor $T = {T_n}$ is *universal* if, given any other homological $delta$-functor $S = {S_n}$ and a natural transformation $f_0: S_0 -> T_0$, there exists a unique morphism $ f = {f_n : S_n -> T_n}_(n>=0) : S-> T $ extending $f_0$. + A homological $delta$-functor $T = {T_n}$ is *universal* if, given any other homological $delta$-functor $S = {S_n}$ and a natural transformation $f_0: S_0 -> T_0$, there exists a unique morphism $ f = {f_n : S_n -> T_n}_(n>=0) : S-> T $ extending $f_0$. // A cohomological #dftor $T$ is *universal* if given $S$ and $f^0 : T^0 -> S^0$, there exists a unique extension $T->S$. @@ -143,25 +162,25 @@ sequence in $cA$. // How to construct a universal #dftor? In categories with enough projectives or injectives, derived functors work. -== Derived Functors +== Derived Functors The main object of this section is to show that in an abelian category with enough projectives, left derived functors, defined as follows, are homological $delta$-functors. #definition[ - Let $cA$ and $cB$ be two abelian categories and + Let $cA$ and $cB$ be two abelian categories and let $F : cA -> cB$ be a right exact functor. Assume that $cA$ has enough projectives. For any $A in cA$, pick a projective resolution $P_(cx) -> A$ by @enough-resolution. Then $L_i F$ given by $ L_i F(A) := H_i (F(P)) $ is called the *$i$-th left derived functor*. ] -#remark[ @rotman[p. 344]. - To elaborate, given $F : cA -> cB$ and $A in cA$, to calculate $L_i F(A)$ we need the following steps: +#remark[ @rotman[p. 344]. + To elaborate, given $F : cA -> cB$ and $A in cA$, to calculate $L_i F(A)$ we need the following steps: + #fw[Find a projective resolution of $A$ in $cA$: - $ - ... -> P_2 -> P_1 -> P_0 -> A -> 0; - $ - ] - + Delete $A$ to form the *deleted projective resolution*, i.e., the chain complex $ ... -> P_2 -> P_1 -> P_0 -> 0, $ (which is not exact at $P_0$ unless $A = 0$); - + Apply $F$ to form a chain complex in $cB$: $ ... -> F(P_2) -> F(P_1) -> F(P_0) -> 0; $ + $ + ... -> P_2 -> P_1 -> P_0 -> A -> 0; + $ + ] + + Delete $A$ to form the *deleted projective resolution*, i.e., the chain complex $ ... -> P_2 -> P_1 -> P_0 -> 0, $ (which is not exact at $P_0$ unless $A = 0$); + + Apply $F$ to form a chain complex in $cB$: $ ... -> F(P_2) -> F(P_1) -> F(P_0) -> 0; $ + Calculate the $i$-th homology $H_i (F (P))$ of this chain complex. // Now let $f: A -> B$ be a morphism in $cA$. To find $L_i F (f)$, we can find projective resolutions $P_cx -> A$ and $Q_cx -> B$, and by the @comparison[Comparison Theorem], there exists a chain map $f_cx : P_cx -> Q_cx$ lifting $f$. Then $L_i F (f) := H_i (F(f_cx))$, obtained in a similar fashion as above. ] @@ -170,10 +189,10 @@ In fact, our definition of the "functor" $L_i F$ is still incomplete as we have $L_0 F(A) iso F(A)$. ] -#proof[ Consider the projective resolution of $A$: -$ - ... P_1 ->^(d_1) P_0 -> A -> 0 -$ +#proof[ Consider the projective resolution of $A$: + $ + ... P_1 ->^(d_1) P_0 -> A -> 0 + $ By definition, $L_0 F(A) = H_0(F(P)) iso Coker(F(d_1))$. Since $F$ is right exact, it preserves cokernels, so $Coker(F(d_1)) iso F(Coker(d_1)) = F(A)$. ] @@ -181,19 +200,19 @@ $ // Notice that the previous lemma indicates that the choice of $P_cx$ does not affect $L_0 F $. This in fact holds in general for all $L_i F$, which indicates that $L_i F$ is well-defined. #lemma[ Let $cA, cB, F, A$ be defined as in @left-derived-functor. - If $P_cx -> A$ and $Q_cx -> A$ are two projective resolutions, then there is a canonical isomorphism + If $P_cx -> A$ and $Q_cx -> A$ are two projective resolutions, then there is a canonical isomorphism $ H_i (F(P)) iso H_i (F(Q)) $ ] #proof[ By the @comparison[Comparison Theorem], there is a chain map $f: P_cx -> Q_cx$ lifting the identity $id_A : A->A$, which gives $f_ast : H_i F(P) -> H_i F(Q)$. Notice that any other lift $f' : P_cx -> Q_cx$ is chain homotopic to $f$ so $f_ast = f'_ast$, - so $f_ast$ is canonical. - We can also lift $id_A$ to a map $g: Q_cx -> P_cx$ and get $g_ast : H_i F(Q) -> H_i F(P)$. + so $f_ast$ is canonical. + We can also lift $id_A$ to a map $g: Q_cx -> P_cx$ and get $g_ast : H_i F(Q) -> H_i F(P)$. - Notice $g oo f : P_cx -> P_cx$ and $id_P : P_cx -> P_cx$ are both chain maps lifting $id_A$, and by the @comparison[Comparison Theorem] they are chain homotopic. Therefore -$ g_* oo f_* = (g oo f)_* = (id_P)_*.$ + Notice $g oo f : P_cx -> P_cx$ and $id_P : P_cx -> P_cx$ are both chain maps lifting $id_A$, and by the @comparison[Comparison Theorem] they are chain homotopic. Therefore + $g_* oo f_* = (g oo f)_* = (id_P)_*.$ Similarly, - $ f_* oo g_* = (id_Q)_*,$ + $f_* oo g_* = (id_Q)_*,$ which gives an isomorphism $H_i (F(P)) iso H_i (F(Q)) $. ] @@ -210,22 +229,22 @@ $ g_* oo f_* = (g oo f)_* = (id_P)_*.$ Now we complete the definition of $L_i F$ and prove that it is indeed a functor. #lemma[ - If $f : A' -> A$ a morphism in $cA$, then there is a natural map $ L_i F(f) : L_i F(A') -> L_i F(A) $ + If $f : A' -> A$ a morphism in $cA$, then there is a natural map $ L_i F(f) : L_i F(A') -> L_i F(A) $ ] #proof[ - Let $P'_cx -> A'$ and $P_cx -> A$ be projective resolutions. By the @comparison[Comparison Theorem], $f$ lifts to a chain map $tilde(f) : P'_cx -> P_cx$, which gives a map $tilde(f_ast) : H_i F(P') -> H_i F(P)$. As any other lift is chain homotopic to $tilde(f)$, the map $tilde(f_ast)$ is independent of the lift. + Let $P'_cx -> A'$ and $P_cx -> A$ be projective resolutions. By the @comparison[Comparison Theorem], $f$ lifts to a chain map $tilde(f) : P'_cx -> P_cx$, which gives a map $tilde(f_ast) : H_i F(P') -> H_i F(P)$. As any other lift is chain homotopic to $tilde(f)$, the map $tilde(f_ast)$ is independent of the lift. ] #proposition[ - $L_i F : cA -> cB$ is an additive functor. + $L_i F : cA -> cB$ is an additive functor. ] #proof[ Let $A in cA$ and $P_cx -> A$ be a projective resolution. - The chain map $id_P$ lifts $id_A$, so $L_i F(id_A) = id_(L_i F(A))$. - Given $A' rgt(f) A rgt(g) A''$ in $cA$ and projective resolutions $P'_cx -> A'$, $P_cx -> A$, and $P''_cx -> A''$, we obtain lifts $tilde(f) : P'_cx -> P_cx$ and $ tilde(g) : P_cx -> P''_cx$. Then the composition $tilde(g) oo tilde(f ) : P' -> P''$ is a lift of $g oo f$, so $g_ast oo f_ast = (g f)_ast : H_i F(P') -> H_i F(P'')$. Therefore, $L_i F$ is a functor. - - If chain maps $tilde(f_1), tilde(f_2) : P'_cx -> P_cx$ lift $f_1, f_2 : A' -> A$, then the chain map $tilde(f_1) + tilde(f_2)$ lifts $f_1 + f_2$, so $f_(1 ast) + f_(2 ast) = (f_1 + f_2)_ast : H_i F(P') -> H_i F(P)$. Therefore, $L_i F$ is an additive functor. -] + The chain map $id_P$ lifts $id_A$, so $L_i F(id_A) = id_(L_i F(A))$. + Given $A' rgt(f) A rgt(g) A''$ in $cA$ and projective resolutions $P'_cx -> A'$, $P_cx -> A$, and $P''_cx -> A''$, we obtain lifts $tilde(f) : P'_cx -> P_cx$ and $ tilde(g) : P_cx -> P''_cx$. Then the composition $tilde(g) oo tilde(f ) : P' -> P''$ is a lift of $g oo f$, so $g_ast oo f_ast = (g f)_ast : H_i F(P') -> H_i F(P'')$. Therefore, $L_i F$ is a functor. + + If chain maps $tilde(f_1), tilde(f_2) : P'_cx -> P_cx$ lift $f_1, f_2 : A' -> A$, then the chain map $tilde(f_1) + tilde(f_2)$ lifts $f_1 + f_2$, so $f_(1 ast) + f_(2 ast) = (f_1 + f_2)_ast : H_i F(P') -> H_i F(P)$. Therefore, $L_i F$ is an additive functor. +] #theorem[ Let $F : cA -> cB$ be a right exact functor, then @@ -234,29 +253,29 @@ Now we complete the definition of $L_i F$ and prove that it is indeed a functor. // We never use the fact that it is universal. Check the book for proof. #proof[ @weibel[Theorem 2.4.6 and Theorem 2.4.7]. - First notice that $L_0 F = F$ is right exact. + First notice that $L_0 F = F$ is right exact. Given a #sest $ ses(A', A, A'') $ and projective resolutions $P'_cx -> A'$ and $P''_cx -> A''$, by the @horseshoe[Horseshoe Lemma], there is a projective resolution $P_cx -> A$ such that $ses(P'_cx, P_cx, P''_cx)$ is a #sest of chain complexes and for each $n$, $ses(P'_n, P_n, P''_n)$ is split. Since $F$ is additive, by @additive-preserve-biproduct, $F$ preserves biproducts and thus preserves split exact sequences, so $ ses(F(P'_n), F(P_n), F(P''_n)) $ - is split exact in $cB$. (Notice that $F$ is not necessarily an exact functor, so $ses(P'_n, P_n, P''_n)$ being split is crucial.) Hence + is split exact in $cB$. (Notice that $F$ is not necessarily an exact functor, so $ses(P'_n, P_n, P''_n)$ being split is crucial.) Hence $ ses(F(P'_cx), F(P_cx), F(P''_cx)) $ is a #sest of chain complexes. Hence applying homology gives the connecting homomorphisms and a #lest - + $ ... -> L_(n+1) F(A'') ->^delta L_n F(A') -> L_n F(A) -> L_n F(A'') ->^delta L_(n-1) F(A') -> ... $ - - by @connecting. - - We omit the proofs that $delta$'s are natural and that ${L_i F}_(i >= 0)$ is universal. + + by @connecting. + + We omit the proofs that $delta$'s are natural and that ${L_i F}_(i >= 0)$ is universal. ] #endlec(9) #definition[ Let $cA$ and $cB$ be two abelian categories and - let $F : cA -> cB$ be a left exact functor. Assume that $cA$ has enough injectives and for any $A in cA$ we have an injective resolution $A -> I^cx$. Then the *$i$-th right derived functor* $R^i F$ is defined as + let $F : cA -> cB$ be a left exact functor. Assume that $cA$ has enough injectives and for any $A in cA$ we have an injective resolution $A -> I^cx$. Then the *$i$-th right derived functor* $R^i F$ is defined as $ R^i F (A) := H^i (F (I^cx)) $ ] // If $F : cA -> cB$ is left exact, we can define the right derived functor $R^i F(A) = H^i F(I)$ for $A -> I^cx$. diff --git a/ha/7-balance.typ b/ha/7-balance.typ index 50031e4..2a0abff 100644 --- a/ha/7-balance.typ +++ b/ha/7-balance.typ @@ -1,14 +1,16 @@ #import "../libs/template.typ": * = Balancing $Ext$ and $Tor$ -== Defining $Ext$ and $Tor$ +== Defining $Ext$ and $Tor$ #definition[ Let $cA$ be an abelian category. Let $A, B in cA$ and let $B -> I_cx$ be an injective resolution. -Recall that $Hom(A)(A, -): cA -> Ab$ is left exact by @hom-left-exact. + Recall that $Hom(A)(A, -): cA -> Ab$ is left exact by @hom-left-exact. If $cA$ has enough injectives, we define the right derived functor $Ext_cA^i (A, -)$ of $Hom(A)(A, -)$ as // #footnote[While $Ext_cA^i (A, -)(B)$ (as well as $Ext_cA^i (-, B)(A)$ defined below) is not a common way of writing, it emphasizes the asymmetry of the construction.] - $ Ext_cA^i (A, B) = Ext_cA^i (A, -)(B) := R^i Hom(A)(A, -)(B) = H^i (Hom(A) (A, I^cx)). $ + $ + Ext_cA^i (A, B) = Ext_cA^i (A, -)(B) := R^i Hom(A)(A, -)(B) = H^i (Hom(A) (A, I^cx)). + $ In particular, $Ext_cA^0 (A, B) = Hom(A) (A, B)$. ] @@ -26,11 +28,11 @@ This isomorphism is called the *balancing of $Ext$*. Before proving the balancin #proposition[ Let $ses(K, L, M)$ be a short exact sequence in $cA$ and let $A, B in cA$. Then we have the induced long exact sequences $ - 0 -> Hom(A) (A, K) -> Hom(A) (A, L) -> Hom(A) (A, M) -> \ Ext_cA^1 (A, K) -> Ext_cA^1 (A, L) -> Ext_cA^1 (A, M) -> ... + 0 -> Hom(A) (A, K) -> Hom(A) (A, L) -> Hom(A) (A, M) -> \ Ext_cA^1 (A, K) -> Ext_cA^1 (A, L) -> Ext_cA^1 (A, M) -> ... $ - and + and $ - 0 -> Hom(A) (M, B) -> Hom(A) (L, B) -> Hom(A) (K, B) -> \ Ext_cA^1 (M, B) -> Ext_cA^1 (L, B) -> Ext_cA^1 (K, B) -> ... + 0 -> Hom(A) (M, B) -> Hom(A) (L, B) -> Hom(A) (K, B) -> \ Ext_cA^1 (M, B) -> Ext_cA^1 (L, B) -> Ext_cA^1 (K, B) -> ... $ ] #proof[ @@ -47,15 +49,15 @@ This isomorphism is called the *balancing of $Ext$*. Before proving the balancin #proof[ (1) $<=>$ (2) by the definition of injective objects. - (1) $=>$ (3) by applying the dual of @projective-left-zero to $Ext_cA^i (A, -)$. + (1) $=>$ (3) by applying the dual of @projective-left-zero to $Ext_cA^i (A, -)$. (3) $=>$ (4) is trivial. - (4) $=>$ (2). Let $ses(A', A, A'')$ be a short exact sequence in $cA$, which induces the #lest + (4) $=>$ (2). Let $ses(A', A, A'')$ be a short exact sequence in $cA$, which induces the #lest $ 0 -> Hom(A) (A', B) -> Hom(A) (A, B) -> Hom(A) (A'', B) -> Ext^1_cA (A', B) -> ... $ - Since $Ext^1_cA (A', B) = 0$ by assumption, $Hom(A) (-, B)$ is an exact functor. + Since $Ext^1_cA (A', B) = 0$ by assumption, $Hom(A) (-, B)$ is an exact functor. ] #proposition[ The following are equivalent: @@ -69,55 +71,55 @@ This isomorphism is called the *balancing of $Ext$*. Before proving the balancin // ] #example[ - Let $m, n in ZZ$. - Let us calculate $Ext_ZZ^1 (ZZ over m, ZZ over n)$ in two different ways. + Let $m, n in ZZ$. + Let us calculate $Ext_ZZ^1 (ZZ over m, ZZ over n)$ in two different ways. - We may use the injective resolution of $ZZ over n$: + We may use the injective resolution of $ZZ over n$: $ 0 -> ZZ over n -> QQ over ZZ ->^n QQ over ZZ -> 0. $ - Now delete $ZZ over n$, apply $hom_ZZ (ZZ over m, -)$, and use $hom_ZZ (ZZ over m , QQ over ZZ) iso ZZ over m$, we get + Now delete $ZZ over n$, apply $hom_ZZ (ZZ over m, -)$, and use $hom_ZZ (ZZ over m , QQ over ZZ) iso ZZ over m$, we get $ - 0 -> ZZ over m -> ^n ZZ over m -> 0. + 0 -> ZZ over m ->^n ZZ over m -> 0. $ Calculating the first cohomology of this sequence reveals that $Ext_ZZ ^ 1 (ZZ over m , ZZ over n) = H^1 = Coker (ZZ over m -> ^n ZZ over m) iso ZZ over gcd(m, n)$. - On the other hand, we may invoke the balancing of $Ext$ and use the projective resolution of $ZZ over m$: + On the other hand, we may invoke the balancing of $Ext$ and use the projective resolution of $ZZ over m$: $ 0 -> ZZ ->^m ZZ -> ZZ over m -> 0. $ - Now delete $ZZ over m$, apply $hom_ZZ (-, ZZ over n)$ (which is a contravariant functor), and use $hom_ZZ (ZZ, ZZ over n) iso ZZ over n$, we get + Now delete $ZZ over m$, apply $hom_ZZ (-, ZZ over n)$ (which is a contravariant functor), and use $hom_ZZ (ZZ, ZZ over n) iso ZZ over n$, we get $ - 0 -> ZZ over n -> ^m ZZ over n -> 0. + 0 -> ZZ over n ->^m ZZ over n -> 0. $ - Again the first cohomology of the sequence gives $ZZ over gcd(m, n)$. - + Again the first cohomology of the sequence gives $ZZ over gcd(m, n)$. + ] #definition[ Let $R$ be a ring and $B$ be a left $R$-module. Since $(- tpr B) : ModR -> Ab$ is right exact by @tensor-right-exact and $RMod$ has enough projectives, we can define the left derived functor $Tor_i^R (-, B)$: $ Tor_i^R (A, B) = Tor_i^R (-, B)(A) := L_i (- tpr B) (A). $ ] -Similarly, let $A$ be a right $R$-module, and $(A tpr - ): RMod -> Ab$ is right exact by @tensor-right-exact-2. We can thus define the left derived functor $Tor_i^R (A, -)$: +Similarly, let $A$ be a right $R$-module, and $(A tpr - ): RMod -> Ab$ is right exact by @tensor-right-exact-2. We can thus define the left derived functor $Tor_i^R (A, -)$: $ Tor_i^R (A, -)(B) := L_i (A tpr -) (B). $ -The two constructions are again isomorphic, i.e., +The two constructions are again isomorphic, i.e., $ Tor_i^R (A, B) := L_i (- tpr B) (A) iso L_i (A tpr -) (B). $ This isomorphism is called *the balancing of $Tor$*, which gives the following property. #proposition[ - Let $ses(K, L, M)$ be a #sest in $ModR$ and let $B in RMod$. Then we have the induced long exact sequence + Let $ses(K, L, M)$ be a #sest in $ModR$ and let $B in RMod$. Then we have the induced long exact sequence $ - ... -> Tor_1^R (K, B) -> Tor_1^R (L, B) -> Tor_1^R (M, B) -> K tpr B -> L tpr B -> M tpr B -> 0. + ... -> Tor_1^R (K, B) -> Tor_1^R (L, B) -> Tor_1^R (M, B) -> K tpr B -> L tpr B -> M tpr B -> 0. $ - - If $ses(K, L, M)$ is instead a #sest in $RMod$ and let $A in ModR$, then we have the induced #lest + + If $ses(K, L, M)$ is instead a #sest in $RMod$ and let $A in ModR$, then we have the induced #lest $ - ... -> Tor_1^R (A, K) -> Tor_1^R (A, L) -> Tor_1^R (A, M) -> A tpr K -> A tpr L -> A tpr M -> 0. + ... -> Tor_1^R (A, K) -> Tor_1^R (A, L) -> Tor_1^R (A, M) -> A tpr K -> A tpr L -> A tpr M -> 0. $ ] @@ -128,7 +130,7 @@ In order to prove the balancing of $Ext$ and $Tor$, we need two new tools: mappi == Mapping Cones // #remark[ -// In topology, let $f: X-> Y $ be a continuous map between two topological spaces. +// In topology, let $f: X-> Y $ be a continuous map between two topological spaces. // The *topological mapping cylinder* $M_f$ of $f : X-> Y$ is the quotient // $ ((X times I) product.co Y) over tilde $ @@ -140,38 +142,38 @@ In order to prove the balancing of $Ext$ and $Tor$, we need two new tools: mappi #definition[Let $f : B_cx -> Ccx$ be a chain map. - Define the *mapping cone* of $f$ as the chain complex $cone(f)_cx$, given by $ cone(f)_n = B_(n-1) plus.circle C_n $ - with differential#footnote[In @tot-cone there is an explanation for this definition.] $ d(b, c) = (-d(b), d(c) - f(b)) $ for $b in B_(n-1)$ and $c in C_n$. -We could also write the differential in the form of a matrix: -$ -mat(-d_B, 0; -f, d_C) : vec(B_(n-1), C_n) -> vec(B_(n-2), C_(n-1)) -$ + Define the *mapping cone* of $f$ as the chain complex $cone(f)_cx$, given by $ cone(f)_n = B_(n-1) plus.circle C_n $ + with differential#footnote[In @tot-cone there is an explanation for this definition.] $ d(b, c) = (-d(b), d(c) - f(b)) $ for $b in B_(n-1)$ and $c in C_n$. + We could also write the differential in the form of a matrix: + $ + mat(-d_B, 0; -f, d_C) : vec(B_(n-1), C_n) -> vec(B_(n-2), C_(n-1)) + $ -Dually, let $g : B^cx -> C^cx$ be a cochain map, then the mapping cone of $g$ is the cochain complex $cone(g)^cx$ given by -$ - cone(g)^n = B^(n+1) plus.circle C^n -$ -with differential $ d(b, c) = (-d(b), d(c) - f(b)) $ for $b in B^(n+1)$ and $c in C^n$. + Dually, let $g : B^cx -> C^cx$ be a cochain map, then the mapping cone of $g$ is the cochain complex $cone(g)^cx$ given by + $ + cone(g)^n = B^(n+1) plus.circle C^n + $ + with differential $ d(b, c) = (-d(b), d(c) - f(b)) $ for $b in B^(n+1)$ and $c in C^n$. ] #lemma[ Let $f: B_cx -> C_cx$ be a chain map. Then there is a long exact sequence in homology - $ - ... -> H_(n+1) (cone(f)) -> H_n (B) ->^diff H_n (C) -> H_n (cone(f)) -> ... -$ - where the connecting morphism + $ + ... -> H_(n+1) (cone(f)) -> H_n (B) ->^diff H_n (C) -> H_n (cone(f)) -> ... + $ + where the connecting morphism $diff = f_ast $. - // Dually, let $g : B^cx -> C^cx$ be a cochain map, then there is a #lest in cohomology + // Dually, let $g : B^cx -> C^cx$ be a cochain map, then there is a #lest in cohomology // $ // ... -> H^(n-1) (cone(f)) -> H^n (B) ->^diff H^n (C) -> H^n (cone(f)) -> ... // $ // with $diff = g^ast$. - + ] #proof[ -There is a #sest of chain complexes: -$ ses(C, cone(f), B[-1], f: i, g: pi), $ -where $i: c mapsto (0, c)$ and $pi : (b, c) |-> -b$. Notice that $H_(n+1)(B[-1]) = H_n (B)$, so we get the corresponding #lest in homology as above by @connecting. + There is a #sest of chain complexes: + $ ses(C, cone(f), B[-1], f: i, g: pi), $ + where $i: c mapsto (0, c)$ and $pi : (b, c) |-> -b$. Notice that $H_(n+1)(B[-1]) = H_n (B)$, so we get the corresponding #lest in homology as above by @connecting. Further, we have $diff = i^(-1) d_(cone(f)) pi^(-1)$ by @connecting. Let $b in B_n$ be a cycle. We can lift it to $(-b, 0)$ in $cone(f)$. Apply the differential of $cone(f)$ to get $d_(cone(f)) ( -b, 0) = (d (b), f (b)) = (0, f (b))$. Thus $diff[b] = [f (b)] = f_ast [b]$. @@ -179,36 +181,38 @@ where $i: c mapsto (0, c)$ and $pi : (b, c) |-> -b$. Notice that $H_(n+1)(B[-1]) The following is the main function of the mapping cone. #corollary[ - A chain map $f: B_cx -> C_cx$ is a quasi-isomorphism if and only if $cone(f)$ is acyclic. + A chain map $f: B_cx -> C_cx$ is a quasi-isomorphism if and only if $cone(f)$ is acyclic. ] - + #proof[ "$=>$". If $f$ is a quasi-isomorphism, then $f_ast : H_n (B) -> H_n (C)$ is an isomorphism for all $n$. Then we have an exact -sequence -$ H_n (B) arrow.r^(f_ast) H_n (C) arrow.r^(i_ast) H_n ("cone"(f)) arrow.r^(pi_ast) H_(n - 1) (B) arrow.r^(f_ast) H_(n - 1) (C). $ + sequence + $ + H_n (B) arrow.r^(f_ast) H_n (C) arrow.r^(i_ast) H_n ("cone"(f)) arrow.r^(pi_ast) H_(n - 1) (B) arrow.r^(f_ast) H_(n - 1) (C). + $ -By exactness at $H_n (C)$, we have that -$ Ker (i_ast) = IM(f_ast) = H_n (C)$. So $i_ast = 0$ and $IM(i_ast) = 0$. -By exactness at $H_(n - 1) (B)$, we have that -$ "Im"(pi_ast) = Ker(f_ast) = 0$, so $pi_ast = 0$ and $ Ker (pi_ast) = H_n ("cone"(f))$. + By exactness at $H_n (C)$, we have that + $ Ker (i_ast) = IM(f_ast) = H_n (C)$. So $i_ast = 0$ and $IM(i_ast) = 0$. + By exactness at $H_(n - 1) (B)$, we have that + $ "Im"(pi_ast) = Ker(f_ast) = 0$, so $pi_ast = 0$ and $ Ker (pi_ast) = H_n ("cone"(f))$. -By exactness at $H_n ("cone"(f))$, we -have $ 0 = IM(i_ast) = Ker (pi_ast) = H_n ("cone"(f)), $ so -$cone(f)$ is acyclic. + By exactness at $H_n ("cone"(f))$, we + have $ 0 = IM(i_ast) = Ker (pi_ast) = H_n ("cone"(f)), $ so + $cone(f)$ is acyclic. -"$arrow.l.double$". If cone $(f)$ is -acyclic, then $H_n ("cone"(f)) = 0$ and we have an exact sequence -$ 0 arrow.r H_n (B) arrow.r^(f_ast) H_n ("cone"(f)) arrow.r 0, $ -which indicates that $f_ast$ is an isomorphism. + "$arrow.l.double$". If cone $(f)$ is + acyclic, then $H_n ("cone"(f)) = 0$ and we have an exact sequence + $ 0 arrow.r H_n (B) arrow.r^(f_ast) H_n ("cone"(f)) arrow.r 0, $ + which indicates that $f_ast$ is an isomorphism. ] #remark[ - The same result can be obtained for cochain maps. + The same result can be obtained for cochain maps. ] There is a similar construction called the mapping cylinder, although we do not use it in these notes. #definition[ - The *mapping cylinder* of a chain map $f: B_cx -> C_cx$ is defined as the chain complex $cyl(f)_n = B_n xor B_(n-1) xor C_n$. The differential can be represented by the matrix + The *mapping cylinder* of a chain map $f: B_cx -> C_cx$ is defined as the chain complex $cyl(f)_n = B_n xor B_(n-1) xor C_n$. The differential can be represented by the matrix $ mat(d_B, id_B, 0;0, -d_B, 0; 0, -f, d_C). $ @@ -221,7 +225,7 @@ There is a similar construction called the mapping cylinder, although we do not // Let $0->B->^f C->^g D-> 0$ be a #sest of complexes. Then $phi: cone(f) -> D$ has $phi(b, c)-> g(c)$.#align(center,image("../imgs/2023-11-10-12-30-40.png",width:50%)) You can prove $cyl(f)-> C$ is a quasi-isomorphism and also $phi$ is quasi-isomorphism. (This is non-examinable.) // ] == Double and Total Complexes -Recall that if $cA$ is an abelian category, $Ch(cA)$ is also an abelian category. Then to define a "two-dimensional" complex, one may be tempted to consider the category $Ch(Ch(cA))$. However, what we define next is slightly different from that. +Recall that if $cA$ is an abelian category, $Ch(cA)$ is also an abelian category. Then to define a "two-dimensional" complex, one may be tempted to consider the category $Ch(Ch(cA))$. However, what we define next is slightly different from that. #definition[ A *double complex* (or *bicomplex*) $C = C_(cx cx)$ in an abelian category $cA$ is a family ${C_(p, q)}$ of objects in $cA$ with maps $d^h_(p, q) : C_(p, q) -> C_(p-1, q)$ and $d^v_(p, q) : C_(p, q) -> C_(p, q-1)$ such that $ (d^h)^2 = (d^v)^2 = 0, quad d^v d^h + d^h d^v = 0. $ The *total degree* of a term $C_(p, q)$ is defined as $p + q$. @@ -230,90 +234,96 @@ Recall that if $cA$ is an abelian category, $Ch(cA)$ is also an abelian categor In other words, a double complex is an infinite two-dimensional grid of objects where each row (resp. each column) is a chain complex, and the horizontal and vertical differentials _anticommute_. A diagram for a double complex is shown as below; this is not a commutative (but an anticommutative) diagram. // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAGEB9ACjQFoyAAgCOAamIBKEAF9S6TLnyEUAJnJVajFmy69SI8VNnzseAkQDM66vWatEHHmnH6xkmXJAZTSomRUattoOuvxCwkae3ormqqQBNlr2jnoikSYxyshWCZp2Ok4uaR4ZZllkFoFJBbwCrgLpXgplRGqVifkhTvXuxk0+sdmk7XnBKc7hDSX9mUQALNajyQB0q9PRLSgLuUEra30bvlvDVZ0gq8vrzUdDc6djF1cDWWp3HQ-7UdeDZG9LbI8Dt8sgAGE7vPaXIHPIhgnbVByAr4wlBgygQgGfUo3Kwg+6Qp6zOJ4jGIrEzTYkUgk-5kqEaGBQADm8CIoAAZgAnCAAWyQCxAOAgSAA7KSQFAAHo0aZc3lIMiC4WIAW7NhSmV9OV8xBgpVIKy0iXS2XcnWGoVIABs4o1pvliDU+sQAFZbSatWakG7nQAOd2azzahXUS2690AC3tOqdYcVaocUqjnodAE5Q8qVCmdcQ9WGXdnvRn+ZHoyXnYaE8bk0GvYgxc6bUak2XEP7nQ2qy3C4hiIqw76e+241naw6G3GLD2m3G5tPi72C2PzQviFae3nlcQRT3iMPM7v087iD2VJukCDpBRpEA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((1, 1), [$C_(p-1, q+1)$]), - node((1, 2), [$C_(p, q+1)$]), - node((1, 3), [$C_(p+1, q+1)$]), - node((2, 1), [$C_(p-1, q)$]), - node((2, 2), [$C_(p, q)$]), - node((2, 3), [$C_(p+1, q)$]), - node((3, 1), [$C_(p-1, q-1)$]), - node((3, 2), [$C_(p, q-1)$]), - node((3, 3), [$C_(p+1, q-1)$]), - node((1, 4), [$...$]), - node((2, 4), [$...$]), - node((3, 4), [$...$]), - node((4, 3), [$...$]), - node((4, 2), [$...$]), - node((4, 1), [$...$]), - node((3, 0), [$...$]), - node((2, 0), [$...$]), - node((1, 0), [$...$]), - node((0, 3), [$...$]), - node((0, 2), [$...$]), - node((0, 1), [$...$]), - arr((2, 2), (3, 2), [$d^v$]), - arr((1, 2), (2, 2), [$d^v$]), - arr((1, 1), (2, 1), [$d^v$]), - arr((2, 1), (3, 1), [$d^v$]), - arr((1, 3), (2, 3), [$d^v$]), - arr((2, 3), (3, 3), [$d^v$]), - arr((1, 2), (1, 1), [$d^h$]), - arr((1, 3), (1, 2), [$d^h$]), - arr((1, 4), (1, 3), []), - arr((2, 4), (2, 3), []), - arr((2, 3), (2, 2), [$d^h$]), - arr((2, 2), (2, 1), [$d^h$]), - arr((3, 2), (3, 1), [$d^h$]), - arr((3, 3), (3, 2), [$d^h$]), - arr((3, 4), (3, 3), []), - arr((3, 3), (4, 3), []), - arr((3, 2), (4, 2), []), - arr((3, 1), (4, 1), []), - arr((3, 1), (3, 0), []), - arr((2, 1), (2, 0), []), - arr((1, 1), (1, 0), []), - arr((0, 3), (1, 3), []), - arr((0, 2), (1, 2), []), - arr((0, 1), (1, 1), []), -)) +#align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((1, 1), [$C_(p-1, q+1)$]), + node((1, 2), [$C_(p, q+1)$]), + node((1, 3), [$C_(p+1, q+1)$]), + node((2, 1), [$C_(p-1, q)$]), + node((2, 2), [$C_(p, q)$]), + node((2, 3), [$C_(p+1, q)$]), + node((3, 1), [$C_(p-1, q-1)$]), + node((3, 2), [$C_(p, q-1)$]), + node((3, 3), [$C_(p+1, q-1)$]), + node((1, 4), [$...$]), + node((2, 4), [$...$]), + node((3, 4), [$...$]), + node((4, 3), [$...$]), + node((4, 2), [$...$]), + node((4, 1), [$...$]), + node((3, 0), [$...$]), + node((2, 0), [$...$]), + node((1, 0), [$...$]), + node((0, 3), [$...$]), + node((0, 2), [$...$]), + node((0, 1), [$...$]), + arr((2, 2), (3, 2), [$d^v$]), + arr((1, 2), (2, 2), [$d^v$]), + arr((1, 1), (2, 1), [$d^v$]), + arr((2, 1), (3, 1), [$d^v$]), + arr((1, 3), (2, 3), [$d^v$]), + arr((2, 3), (3, 3), [$d^v$]), + arr((1, 2), (1, 1), [$d^h$]), + arr((1, 3), (1, 2), [$d^h$]), + arr((1, 4), (1, 3), []), + arr((2, 4), (2, 3), []), + arr((2, 3), (2, 2), [$d^h$]), + arr((2, 2), (2, 1), [$d^h$]), + arr((3, 2), (3, 1), [$d^h$]), + arr((3, 3), (3, 2), [$d^h$]), + arr((3, 4), (3, 3), []), + arr((3, 3), (4, 3), []), + arr((3, 2), (4, 2), []), + arr((3, 1), (4, 1), []), + arr((3, 1), (3, 0), []), + arr((2, 1), (2, 0), []), + arr((1, 1), (1, 0), []), + arr((0, 3), (1, 3), []), + arr((0, 2), (1, 2), []), + arr((0, 1), (1, 1), []), + ), +) // #align(center,image("../imgs/2023-11-12-16-01-47.png",width:50%)) #remark[ - Because the differentials anticommute, $d^v$ cannot be seen as chain maps between rows. + Because the differentials anticommute, $d^v$ cannot be seen as chain maps between rows. We need to replace $d^v_(p, q)$ by $f_(p, q) := (-1)^p d^v_(p, q)$ (so that the signs alternate for adjacent columns) to make the squares commute. For example, the following is a commutative diagram: -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBGAXVJADcBDAGwFcYkQBhAfQAoziAlCAC+pdJlz5CKchWp0mrdtx6zBIsSAzY8BIgCY5NBizaJOvQ+tHidUov3kml5lWXJCbWibunI1TopmnKoUnpraknooVoGmypZhGrZRfgDMpMRxLhY8GR7J3nbRyPnZwSoZ1vIwUADm8ESgAGYAThAAtkgALDQ4EEgZCvHmUAB6ABaFbZ1IAKx9A4i9wznjU14zXYiyIP1IZKvB69Pt24Z7S7vOx5Ons4hD+4iHN+zjtPfbK8-XQewAWg+X3miyQFzeozGn02ZyQADYwYgFkd3ndYQ8AOxIiH-KEbTRbBFI7Go8xA6EiSjCIA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((1, 0), [$C_(0,0)$]), - node((1, 1), [$C_(1,0)$]), - node((1, 2), [$C_(2,0)$]), - node((0, 0), [$C_(0,1)$]), - node((0, 1), [$C_(1,1)$]), - node((0, 2), [$C_(2,1)$]), - node((0, 3), [$C_(3,1)$]), - node((1, 3), [$C_(3,0)$]), - arr((0, 1), (0, 0), [$d^h$]), - arr((0, 2), (0, 1), [$d^h$]), - arr((1, 1), (1, 0), [$d^h$]), - arr((1, 2), (1, 1), [$d^h$]), - arr((0, 0), (1, 0), [$d^v$]), - arr((0, 1), (1, 1), [$-d^v$]), - arr((0, 2), (1, 2), [$d^v$]), - arr((0, 3), (0, 2), [$d^h$]), - arr((1, 3), (1, 2), [$d^h$]), - arr((0, 3), (1, 3), [$-d^v$]), -)) -Therefore, $f_(cx, q) : C_(cx, q) -> C_(cx, q-1)$ is a chain map between two adjacent rows. -This also gives an isomorphism between the category of bicomplexes in $cA$ and $Ch(Ch(cA))$.] + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBGAXVJADcBDAGwFcYkQBhAfQAoziAlCAC+pdJlz5CKchWp0mrdtx6zBIsSAzY8BIgCY5NBizaJOvQ+tHidUov3kml5lWXJCbWibunI1TopmnKoUnpraknooVoGmypZhGrZRfgDMpMRxLhY8GR7J3nbRyPnZwSoZ1vIwUADm8ESgAGYAThAAtkgALDQ4EEgZCvHmUAB6ABaFbZ1IAKx9A4i9wznjU14zXYiyIP1IZKvB69Pt24Z7S7vOx5Ons4hD+4iHN+zjtPfbK8-XQewAWg+X3miyQFzeozGn02ZyQADYwYgFkd3ndYQ8AOxIiH-KEbTRbBFI7Go8xA6EiSjCIA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((1, 0), [$C_(0,0)$]), + node((1, 1), [$C_(1,0)$]), + node((1, 2), [$C_(2,0)$]), + node((0, 0), [$C_(0,1)$]), + node((0, 1), [$C_(1,1)$]), + node((0, 2), [$C_(2,1)$]), + node((0, 3), [$C_(3,1)$]), + node((1, 3), [$C_(3,0)$]), + arr((0, 1), (0, 0), [$d^h$]), + arr((0, 2), (0, 1), [$d^h$]), + arr((1, 1), (1, 0), [$d^h$]), + arr((1, 2), (1, 1), [$d^h$]), + arr((0, 0), (1, 0), [$d^v$]), + arr((0, 1), (1, 1), [$-d^v$]), + arr((0, 2), (1, 2), [$d^v$]), + arr((0, 3), (0, 2), [$d^h$]), + arr((1, 3), (1, 2), [$d^h$]), + arr((0, 3), (1, 3), [$-d^v$]), + ), + ) + Therefore, $f_(cx, q) : C_(cx, q) -> C_(cx, q-1)$ is a chain map between two adjacent rows. + This also gives an isomorphism between the category of bicomplexes in $cA$ and $Ch(Ch(cA))$.] #definition[ Let $C_(bullet bullet)$ be a double complex. We say that -$C_(bullet bullet)$ is an *upper half-plane complex* if there is some -$q_0$ such that $C_(p, q) eq 0$ for all $q lt q_0$. Similarly, -$C_(bullet bullet)$ is a *right half-plane complex* if there is some $p_0$ -such that $C_(p, q) eq 0$ for all $p lt p_0$. + $C_(bullet bullet)$ is an *upper half-plane complex* if there is some + $q_0$ such that $C_(p, q) eq 0$ for all $q lt q_0$. Similarly, + $C_(bullet bullet)$ is a *right half-plane complex* if there is some $p_0$ + such that $C_(p, q) eq 0$ for all $p lt p_0$. ] #definition[ @@ -321,20 +331,20 @@ such that $C_(p, q) eq 0$ for all $p lt p_0$. $ Tot^Pi (C)_n = product_(p + q = n) C_(p, q). $ That is, the $n$-th term of $Tot^Pi (C)$ is the product of all terms in $C$ which has total degree $n$. When for each $n$, only finitely many terms in $C$ has total degree $n$, we also define $ Tot^xor (C)$, given by - $ Tot^xor (C)_n = plus.circle.big _(p+q=n) C_(p, q). $ + $ Tot^xor (C)_n = plus.circle.big_(p+q=n) C_(p, q). $ $Tot^Pi (C)$ and $ Tot^xor (C)$ both have differential $ d = d^h + d^v. $ ] #notation[ - If $C$ is a double complex, sometimes we write $H_n (C)$ to mean $H_n (Tot^Pi (C))$ or $H_n (Tot^xor (C))$. + If $C$ is a double complex, sometimes we write $H_n (C)$ to mean $H_n (Tot^Pi (C))$ or $H_n (Tot^xor (C))$. ] #lemma[ - In a total complex, we have that $d^2 = 0$, so the total complex is indeed a chain complex. + In a total complex, we have that $d^2 = 0$, so the total complex is indeed a chain complex. ] #proof[ - @rotman[Lemma 10.5]. + @rotman[Lemma 10.5]. $ d^2 = (d^h + d^v) (d^h + d^v) = (d^h)^2 + (d^h d^v + d^v d^h) + (d^v)^2 = 0. $ @@ -343,91 +353,99 @@ such that $C_(p, q) eq 0$ for all $p lt p_0$. The total complex is illustrated by the colours in the following diagram; each “diagonal slice” is given a different colour. For example, $Tot(C_(cx cx))_0$ is the product of all the blue terms. This diagram also helps explain how the differential of the total complex works. For example, take $ c = (..., c_(-1, 1), c_(0, 0), c_(1, -1), ...) in product_(p in ZZ) C_(-p, p) = Tot(C)_0. $ -Then -$ d (c) = ( ..., -underbrace(d^v (c_(-1, 1)) + d^h (c_(0,0)), in C_(-1, 0)) , -underbrace(d^v (c_(0, 0)) + d^h (c_(1, -1)), in C_(0, -1)), ... ) in Tot(C)_(-1). $ +Then +$ + d (c) = ( ..., + underbrace(d^v (c_(-1, 1)) + d^h (c_(0,0)), in C_(-1, 0)) , + underbrace(d^v (c_(0, 0)) + d^h (c_(1, -1)), in C_(0, -1)), ... ) in Tot(C)_(-1). +$ // #align(center,image("../imgs/2023-11-12-16-04-08.png",width:50%)) // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAGEB9ACgFoyABMQCUIAL6l0mXPkIoATOSq1GLNl24AGcqIlTseAkQDMS6vWatEHHmRHjJIDAdlEy85RbXWN-Upt1HZxkjBVIPc1UrGy1-QP0QuWRTCJVLdVs4hwTDJLJjTyiMvkF+eKdpXKJFAsj0nx5tATLsipdQ5NJatO8Y0vs9NsSiABYzHuiAOmnW4KqUMdSvKZnBudcFrsL6kGnJ2cqNzpHt3r2D9qTFE7qz1aDDjrIbibZztcek7W7lt-uco7aJZFazvB6XIjaSi3Fb7D4QlCmTSnWEXYZhZEwv5w8Hokj+FHY8TKGBQADm8CIoAAZgAnCAAWyQYxAOAgSAA7FjrFAAHo0Vp0xlIMis9mIFm-Hn8wX0pmIbRipCmV7SgWDIXylVspAANm5ID56scmqQiiViAArAajbLhVbqDrEAAOG0yjVykWO8WKqWG3kACzt8vNTtFfr5QY99oAnN6zdH5cRFU7LYmkNaLZKQf6oybPRL44gVRHA8HOUX9arc+WXUWudXI7XiKKnc703WLcR5B2G2HjB2q2GRoOi8Q0-n7drxcRdR2UzOOR3iK6LT3J0m412O-IF0hNGIKGIgA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((1, 1), text(blue)[$C_(-1, 1)$]), - node((1, 2), text(orange)[$C_(0,1)$]), - node((1, 3), text(navy)[$C_(1,1)$]), - node((2, 1), text(red)[$C_(-1,0)$]), - node((2, 2), text(blue)[$C_(0,0)$]), - node((2, 3), text(orange)[$C_(1,0)$]), - node((3, 1), text(green)[$C_(-1, -1)$]), - node((3, 2), text(red)[$C_(0, -1)$]), - node((3, 3), text(blue)[$C_(1, -1)$]), - node((1, 4), [$...$]), - node((2, 4), [$...$]), - node((3, 4), [$...$]), - node((4, 3), [$...$]), - node((4, 2), [$...$]), - node((4, 1), [$...$]), - node((3, 0), [$...$]), - node((2, 0), [$...$]), - node((1, 0), [$...$]), - node((0, 3), [$...$]), - node((0, 2), [$...$]), - node((0, 1), [$...$]), - arr((2, 2), (3, 2), [$d^v$]), - arr((1, 2), (2, 2), [$d^v$]), - arr((1, 1), (2, 1), [$d^v$]), - arr((2, 1), (3, 1), [$d^v$]), - arr((1, 3), (2, 3), [$d^v$]), - arr((2, 3), (3, 3), [$d^v$]), - arr((1, 2), (1, 1), [$d^h$]), - arr((1, 3), (1, 2), [$d^h$]), - arr((1, 4), (1, 3), []), - arr((2, 4), (2, 3), []), - arr((2, 3), (2, 2), [$d^h$]), - arr((2, 2), (2, 1), [$d^h$]), - arr((3, 2), (3, 1), [$d^h$]), - arr((3, 3), (3, 2), [$d^h$]), - arr((3, 4), (3, 3), []), - arr((3, 3), (4, 3), []), - arr((3, 2), (4, 2), []), - arr((3, 1), (4, 1), []), - arr((3, 1), (3, 0), []), - arr((2, 1), (2, 0), []), - arr((1, 1), (1, 0), []), - arr((0, 3), (1, 3), []), - arr((0, 2), (1, 2), []), - arr((0, 1), (1, 1), []), -)) +#align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((1, 1), text(blue)[$C_(-1, 1)$]), + node((1, 2), text(orange)[$C_(0,1)$]), + node((1, 3), text(navy)[$C_(1,1)$]), + node((2, 1), text(red)[$C_(-1,0)$]), + node((2, 2), text(blue)[$C_(0,0)$]), + node((2, 3), text(orange)[$C_(1,0)$]), + node((3, 1), text(green)[$C_(-1, -1)$]), + node((3, 2), text(red)[$C_(0, -1)$]), + node((3, 3), text(blue)[$C_(1, -1)$]), + node((1, 4), [$...$]), + node((2, 4), [$...$]), + node((3, 4), [$...$]), + node((4, 3), [$...$]), + node((4, 2), [$...$]), + node((4, 1), [$...$]), + node((3, 0), [$...$]), + node((2, 0), [$...$]), + node((1, 0), [$...$]), + node((0, 3), [$...$]), + node((0, 2), [$...$]), + node((0, 1), [$...$]), + arr((2, 2), (3, 2), [$d^v$]), + arr((1, 2), (2, 2), [$d^v$]), + arr((1, 1), (2, 1), [$d^v$]), + arr((2, 1), (3, 1), [$d^v$]), + arr((1, 3), (2, 3), [$d^v$]), + arr((2, 3), (3, 3), [$d^v$]), + arr((1, 2), (1, 1), [$d^h$]), + arr((1, 3), (1, 2), [$d^h$]), + arr((1, 4), (1, 3), []), + arr((2, 4), (2, 3), []), + arr((2, 3), (2, 2), [$d^h$]), + arr((2, 2), (2, 1), [$d^h$]), + arr((3, 2), (3, 1), [$d^h$]), + arr((3, 3), (3, 2), [$d^h$]), + arr((3, 4), (3, 3), []), + arr((3, 3), (4, 3), []), + arr((3, 2), (4, 2), []), + arr((3, 1), (4, 1), []), + arr((3, 1), (3, 0), []), + arr((2, 1), (2, 0), []), + arr((1, 1), (1, 0), []), + arr((0, 3), (1, 3), []), + arr((0, 2), (1, 2), []), + arr((0, 1), (1, 1), []), + ), +) #endlec(10) #example[ Let $f_cx : B_cx -> C_cx$ be a chain map, then the following diagram forms a (two-column) double complex. The reader is welcome to verify that the total complex of this double complex is exactly $cone(f)$, which in particular helps explain why we have defined the differential of $cone(f)$ in that way. -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBGAXVJADcBDAGwFcYkQBhAfUIF9T0mXPkIpyFanSat2AIR4h+g7HgJEyAJkkMWbRJy4AKMAFpyASkUCQGFSKLitNHTP3zjZy0ptDVokqQAzNrSegYeGl7WtsJqYkEhunJGppFWyrH+ZMSJriAAdIXpPnZxyOI5zqHshfnFMX7qpAAsuWG19b728a1VSfodvJIwUADm8ESgAGYAThAAtkiBNDgQSBp9eVMpnsWzC0gArCtriM2bYdsRUdNzi4jiIKtLF+wmUADkCt7798tPp2OUn6IHeXw8Fj2dyQZAB61e+ig32sv3hcLOCJASIhNxAqIeJxhmO2fBR0MQADZCYhiD9yQB2ankOkHDHogAcLPuQOeiAAnENeEA -#align(center, commutative-diagram( - node-padding: (40pt, 40pt), - node((1, 0), text(blue)[$C_n$]), - node((1, 1), [$B_n$]), - node((2, 0), text(red)[$C_(n-1)$]), - node((2, 1), text(blue)[$B_(n-1)$]), - node((3, 0), [$C_(n-2)$]), - node((3, 1), text(red)[$B_(n-2)$]), - node((0, 0), [$...$]), - node((0, 1), [$...$]), - node((4, 0), [$...$]), - node((4, 1), [$...$]), - arr((2, 1), (2, 0), [$-f$]), - arr((3, 1), (3, 0), [$-f$]), - arr((1, 1), (2, 1), [$-d$]), - arr((2, 1), (3, 1), [$-d$]), - arr((1, 0), (2, 0), [$d$]), - arr((2, 0), (3, 0), [$d$]), - arr((1, 1), (1, 0), [$-f$]), - arr((0, 0), (1, 0), []), - arr((0, 1), (1, 1), []), - arr((3, 0), (4, 0), []), - arr((3, 1), (4, 1), []), -)) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBGAXVJADcBDAGwFcYkQBhAfUIF9T0mXPkIpyFanSat2AIR4h+g7HgJEyAJkkMWbRJy4AKMAFpyASkUCQGFSKLitNHTP3zjZy0ptDVokqQAzNrSegYeGl7WtsJqYkEhunJGppFWyrH+ZMSJriAAdIXpPnZxyOI5zqHshfnFMX7qpAAsuWG19b728a1VSfodvJIwUADm8ESgAGYAThAAtkiBNDgQSBp9eVMpnsWzC0gArCtriM2bYdsRUdNzi4jiIKtLF+wmUADkCt7798tPp2OUn6IHeXw8Fj2dyQZAB61e+ig32sv3hcLOCJASIhNxAqIeJxhmO2fBR0MQADZCYhiD9yQB2ankOkHDHogAcLPuQOeiAAnENeEA + #align( + center, + commutative-diagram( + node-padding: (40pt, 40pt), + node((1, 0), text(blue)[$C_n$]), + node((1, 1), [$B_n$]), + node((2, 0), text(red)[$C_(n-1)$]), + node((2, 1), text(blue)[$B_(n-1)$]), + node((3, 0), [$C_(n-2)$]), + node((3, 1), text(red)[$B_(n-2)$]), + node((0, 0), [$...$]), + node((0, 1), [$...$]), + node((4, 0), [$...$]), + node((4, 1), [$...$]), + arr((2, 1), (2, 0), [$-f$]), + arr((3, 1), (3, 0), [$-f$]), + arr((1, 1), (2, 1), [$-d$]), + arr((2, 1), (3, 1), [$-d$]), + arr((1, 0), (2, 0), [$d$]), + arr((2, 0), (3, 0), [$d$]), + arr((1, 1), (1, 0), [$-f$]), + arr((0, 0), (1, 0), []), + arr((0, 1), (1, 1), []), + arr((3, 0), (4, 0), []), + arr((3, 1), (4, 1), []), + ), + ) ] @@ -436,160 +454,179 @@ underbrace(d^v (c_(0, 0)) + d^h (c_(1, -1)), in C_(0, -1)), ... ) in Tot(C)_(-1) + $C$ is an upper half-plane complex with exact columns, or + $C$ is a right half-plane complex with exact rows, then $Tot^Pi (C)$ is acyclic. - If + If 3. $C$ is an upper half-plane complex with exact rows, or 4. $C$ is a right half-lane complex with exact columns, then $Tot^xor (C)$ is acyclic. ] - + #proof[@weibel[Lemma 2.7.3] explains why proving (1) is sufficient to prove all four conditions, so we work on (1) only. - Let $C$ be an upper half-plane bicomplex with exact columns, where we assume $C_(p, q) = 0$ when $q < 0$ (by translating $C$ up or down). It is sufficient to show that + Let $C$ be an upper half-plane bicomplex with exact columns, where we assume $C_(p, q) = 0$ when $q < 0$ (by translating $C$ up or down). It is sufficient to show that $ H_0 (Tot^Pi (C)) = 0, $ since by translating $C$ left and right, this will indicate that $H_n (Tot^Pi (C)) = 0$ for all $n$. - + Let $ c = (..., c_(-2, 2), c_(-1, 1), c_(0, 0)) in product C_(-p, p) = Tot^Pi (C)_0 $ be a $0$-cycle, i.e., $d(c) = 0$. We will use induction to find elements $b_(-p, p+1) in C_(-p, p+1)$ for $p >= -1$ such that $ d^v (b_(-p, p+1)) + d^h (b_(-p+1, p)) = c_(-p, p). $ - For the base case, let $b_(1,0) = 0$ for $p = -1$. Since the $0$-th column is exact, there exists $b_(0,1) in C_(0,1)$ such that $d^v (b_(0,1)) = c_(0,0)$. + For the base case, let $b_(1,0) = 0$ for $p = -1$. Since the $0$-th column is exact, there exists $b_(0,1) in C_(0,1)$ such that $d^v (b_(0,1)) = c_(0,0)$. // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAGEB9ACjIEYAlCAC+pdJlz5CKflVqMWbLr3JDR47HgJE+pPnPrNWiDj13E1YkBk1SiZAEwGFxkMRFyYUAObwioADMAJwgAWyRdEBwIJABmakNFEygAPRoRK2CwpDIomMRIxNdU9PUQLPDEB2poiISXNlSACw9hIA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$C_(0,1)$]), - node((1, 0), [$C_(0,0)$]), - node((1, 1), [$C_(1,0)$]), - node((2, 0), [$0$]), - arr((1, 0), (2, 0), [$d^v$]), - arr((0, 0), (1, 0), [$d^v$]), - arr((1, 1), (1, 0), [$d^h$]), -)) + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$C_(0,1)$]), + node((1, 0), [$C_(0,0)$]), + node((1, 1), [$C_(1,0)$]), + node((2, 0), [$0$]), + arr((1, 0), (2, 0), [$d^v$]), + arr((0, 0), (1, 0), [$d^v$]), + arr((1, 1), (1, 0), [$d^h$]), + ), + ) By induction, suppose we have found $b_(-p+1, p)$ and want to find $b_(-p, p+1)$. // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAGEB9ACgFo1SAAjQBqAIwBKEAF9S6TLnyEUZMVVqMWbLnwFops+djwEiY0mur1mrRBx79xpfTLkgMxpUTIAmdda07HX5ncQN1GCgAc3giUAAzACcIAFskcxAcCCQAZitNWxAoAD0aVwTktMQyTOzEDIDCkrLDECTUpB9qLPT8mzYSgAsZCmkgA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$C_(-p, p+1)$]), - node((1, 0), [$C_(-p,p)$]), - node((1, 1), [$C_(-p+1,p)$]), - node((2, 0), [$C_(-p,p-1)$]), - arr((1, 0), (2, 0), [$d^v$]), - arr((0, 0), (1, 0), [$d^v$]), - arr((1, 1), (1, 0), [$d^h$]), -)) - - We compute that -$ d^v lr((c_(minus p comma p) minus d^h lr((b_(minus p plus 1 comma p))))) & eq d^v lr((c_(minus p, p))) plus d^h d^v lr((b_(minus p plus 1 comma p)))\ - & eq d^v lr((c_(minus p, p))) plus d^h lr((c_(minus p plus 1 comma p minus 1))) minus d^h d^h \(b_(minus p plus 2 comma p minus 1 )) \ - & eq 0, $ - - where $d^v lr((c_(minus p, p))) plus d^h lr((c_(minus p plus 1 comma p minus 1))) = 0$ because $d(c) = 0$. Thus - $ c_(minus p comma p) minus d^h lr((b_(minus p plus 1 comma p))) in Ker(d^v : C_(-p, p) -> C_(-p, p-1)) = IM (d^v : C_(-p, p+1) -> C_(-p, p)), $ - - since the $(minus p)$-th column is exact. So there exists -$b_(minus p comma p plus 1)$ such that -$ d^v lr((b_(minus p comma p plus 1))) eq c_(minus p comma p) minus d^h lr((b_(minus p plus 1 comma p))) $ -as desired. Now assembling all $b_(-p, p+1)$ gives - -$ b = (..., b_(-1, 2), b_(0, 1), b_(1, 0)) in product C_(-p, p+1) = Tot^Pi (C)_(1) $ such that $d (b) = c$, which proves that $H_0 (Tot^Pi (C)) = 0$. + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$C_(-p, p+1)$]), + node((1, 0), [$C_(-p,p)$]), + node((1, 1), [$C_(-p+1,p)$]), + node((2, 0), [$C_(-p,p-1)$]), + arr((1, 0), (2, 0), [$d^v$]), + arr((0, 0), (1, 0), [$d^v$]), + arr((1, 1), (1, 0), [$d^h$]), + ), + ) + + We compute that + $ + d^v lr((c_(minus p comma p) minus d^h lr((b_(minus p plus 1 comma p))))) & eq d^v lr((c_(minus p, p))) plus d^h d^v lr((b_(minus p plus 1 comma p)))\ + & eq d^v lr((c_(minus p, p))) plus d^h lr((c_(minus p plus 1 comma p minus 1))) minus d^h d^h \(b_(minus p plus 2 comma p minus 1 )) \ + & eq 0, + $ + + where $d^v lr((c_(minus p, p))) plus d^h lr((c_(minus p plus 1 comma p minus 1))) = 0$ because $d(c) = 0$. Thus + $ + c_(minus p comma p) minus d^h lr((b_(minus p plus 1 comma p))) in Ker(d^v : C_(-p, p) -> C_(-p, p-1)) = IM (d^v : C_(-p, p+1) -> C_(-p, p)), + $ + + since the $(minus p)$-th column is exact. So there exists + $b_(minus p comma p plus 1)$ such that + $ + d^v lr((b_(minus p comma p plus 1))) eq c_(minus p comma p) minus d^h lr((b_(minus p plus 1 comma p))) + $ + as desired. Now assembling all $b_(-p, p+1)$ gives + + $ + b = (..., b_(-1, 2), b_(0, 1), b_(1, 0)) in product C_(-p, p+1) = Tot^Pi (C)_(1) + $ such that $d (b) = c$, which proves that $H_0 (Tot^Pi (C)) = 0$. ] #remark[ - This lemma is also a consequence of spectral sequences. + This lemma is also a consequence of spectral sequences. ] -A variant of the above lemma is the following, whose proof is similar @notes[Lemma 8.8]. +A variant of the above lemma is the following, whose proof is similar @notes[Lemma 8.8]. #lemma[ - Let $C$ be a double complex such that for every $n$, there exist only finitely many pairs $(p, q)$ such that $p + q = n$ and $C_(p, q) != 0 $. If $C$ has exact rows (or if $C$ has exact columns), then $Tot^(xor) (C)$ is acyclic. + Let $C$ be a double complex such that for every $n$, there exist only finitely many pairs $(p, q)$ such that $p + q = n$ and $C_(p, q) != 0 $. If $C$ has exact rows (or if $C$ has exact columns), then $Tot^(xor) (C)$ is acyclic. ] - + == Balancing $Tor$ #definition[ -Suppose $(P_cx, d^((P)))$ is a chain complex in $ModR$ and $(Q_cx, d^((Q)))$ is a chain complex in $RMod$. We can form a double complex of abelian groups which we call the *tensor product double complex*, denoted as $P_cx tpr Q_cx$, where the $(p, q)$ term is $P_p tpr Q_q$ and $d^h_(p, q) = d^((P))_p tp 1$ and $d^v_(p, q) = (-1)^p tp d^((Q))_q$. -It has the *tensor product total complex*, $Tot^xor (P_cx tpr Q_cx)$. -// The sign trick is to make this anticommute. + Suppose $(P_cx, d^((P)))$ is a chain complex in $ModR$ and $(Q_cx, d^((Q)))$ is a chain complex in $RMod$. We can form a double complex of abelian groups which we call the *tensor product double complex*, denoted as $P_cx tpr Q_cx$, where the $(p, q)$ term is $P_p tpr Q_q$ and $d^h_(p, q) = d^((P))_p tp 1$ and $d^v_(p, q) = (-1)^p tp d^((Q))_q$. + It has the *tensor product total complex*, $Tot^xor (P_cx tpr Q_cx)$. + // The sign trick is to make this anticommute. ] #lemma[ - The differentials of $P_cx tpr Q_cx$ anticommute, so $P_cx tpr Q_cx$ is a double complex. + The differentials of $P_cx tpr Q_cx$ anticommute, so $P_cx tpr Q_cx$ is a double complex. ] #proof[ - Notice that $(d^((P)) tp 1) oo (1 tp d^((Q))) = d^((P)) tp d^((Q)) = (1 tp d^((Q))) oo (d^((P)) tp 1)$ by @tp-composition, and alternating the signs for adjacent columns makes each square anticommute. + Notice that $(d^((P)) tp 1) oo (1 tp d^((Q))) = d^((P)) tp d^((Q)) = (1 tp d^((Q))) oo (d^((P)) tp 1)$ by @tp-composition, and alternating the signs for adjacent columns makes each square anticommute. ] #lemma[ - If $P$ is a projective right $R$-module, then the functor $(P tpr -) : RMod -> Ab$ is exact. If $Q$ is a projective left $R$-module, then $(- tpr Q) : ModR -> Ab$ is exact. #footnote[This lemma is the same as saying "every projective module is flat", but we have yet to define flat modules. We will revisit this claim in @projective-flat-2.] + If $P$ is a projective right $R$-module, then the functor $(P tpr -) : RMod -> Ab$ is exact. If $Q$ is a projective left $R$-module, then $(- tpr Q) : ModR -> Ab$ is exact. #footnote[This lemma is the same as saying "every projective module is flat", but we have yet to define flat modules. We will revisit this claim in @projective-flat-2.] ] #proof[ @rotman[Proposition 3.46, p. 132]. We (very concisely) work on the #rrm case. First notice that $(R tpr -)$ is an isomorphism by @r-tpr, so the functor $(R tpr -)$ is exact. Then tensor product preserves direct sums by @tensor-right-exact, so for a family of right $R$-modules $M_i$, $((plus.circle.big M_i) tpr -)$ is exact, if and only if $plus.circle.big (M_i tpr -)$ is exact, if and only if each $(M_i tpr -)$ is exact. Now any free module $F$, being a direct sum of $R$'s, must have that $(F tpr -)$ is exact. Finally, $P$ is projective, hence $P$ is a direct summand of some free module by @projective-summand, which indicates that $(P tpr -)$ is also exact. ] #theorem([Balancing of $Tor$])[ Let $A in ModR$ and $B in RMod$. For all $n$, - $ Tor_n^R (A, B) := L_n (- tpr B)(A) iso L_n (A tpr -)(B). $ + $ Tor_n^R (A, B) := L_n (- tpr B)(A) iso L_n (A tpr -)(B). $ ] #proof[ @weibel[Theorem 2.7.2]. // #align(center,image("../imgs/2023-11-23-03-00-04.png",width:80%)) - (We drop the dots for chain complexes in this proof.) - Choose a projective resolution $P_cx rgt(epsilon) A$ in $ModR$ and a project resolution $Q_cx rgt(eta) B$ in $RMod$. - We can view $A, B$ as chain complexes concentrated in degree $0$. Now consider the double complexes $P tpr Q$, $A tpr Q$ and $P tpr B$, and we have _bicomplex morphisms_ (where it might be helpful to recall the diagram in @resolution-qi): $ epsilon tp id_Q: P tpr Q -> A tpr Q \ id_Q tp eta: P tpr Q -> P tpr B $ which induce chain maps on the total complexes: - $ f : Tot^xor (P tpr Q) -> Tot^xor (A tpr Q) = A tpr Q \ - g : Tot^xor (P tpr Q) -> Tot^xor (P tpr B) = P tpr B $ - We claim that $f$ and $g$ + (We drop the dots for chain complexes in this proof.) + Choose a projective resolution $P_cx rgt(epsilon) A$ in $ModR$ and a project resolution $Q_cx rgt(eta) B$ in $RMod$. + We can view $A, B$ as chain complexes concentrated in degree $0$. Now consider the double complexes $P tpr Q$, $A tpr Q$ and $P tpr B$, and we have _bicomplex morphisms_ (where it might be helpful to recall the diagram in @resolution-qi): $ epsilon tp id_Q: P tpr Q -> A tpr Q \ id_Q tp eta: P tpr Q -> P tpr B $ which induce chain maps on the total complexes: + $ + f : Tot^xor (P tpr Q) -> Tot^xor (A tpr Q) = A tpr Q \ + g : Tot^xor (P tpr Q) -> Tot^xor (P tpr B) = P tpr B + $ + We claim that $f$ and $g$ are quasi-isomorphisms, which would give isomorphisms on homology and thus prove the result, i.e. - $ H_ast (Tot^xor (P tpr Q)) iso H_ast (A tpr Q) = L_ast (A tpr - ) (B) $ - $ H_ast (Tot^xor (P tpr Q)) iso H_ast (P tpr B) = L_ast (- tpr B ) (A) $ + $ H_ast (Tot^xor (P tpr Q)) iso H_ast (A tpr Q) = L_ast (A tpr - ) (B) $ + $ H_ast (Tot^xor (P tpr Q)) iso H_ast (P tpr B) = L_ast (- tpr B ) (A) $ Now we form a double complex $C$, obtained from $P tpr Q$ by adding $A tpr Q$ in the column $p = -1$ using the augmentation $epsilon: P_0 -> A$, - -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAAUB9ABgAIc0vAIqdiIAL6l0mXPkIoyAJiq1GLNlz4DhPCVJAZseAkUWll1es1aIOo-oJHc90o3KIBmcyqvrbXRQcdZ0lXWRMUM0pLNRs7YiCRMVCDGWN5ZC9o1WsNTkDtJJdUtwiSUm4fWLytR3ziw3CMs0qY3P97QvqUxvSibnIq9pAAQUTRBrT3FAHWnL9R8cVJ0oyBi3m4sa6Q-V7pzIqhhYCliRUYKABzeCJQADMAJwgAWyQAdmocCCQANjaFlBOOwgsl9E9XkgACxfH6IAabNhAkHaMEPZ5vRAAVlh0IBcWRoOKEMxZhA3yQZERtkJqOJGKQXnJcLJvgJwKJKRJSARFMQVLZbAS2iBQnpkMQMOZSFZ1VsAFphYJReLMTjpYgmYLbEreCquQzEP8NQjtSBdfrwYbPhqpWbFUFLeiJQBOXGIAAc+KFjs4YoNEuIVL5NrNtMEaJA3P5wbh6rNFr9qqQXo1xFNcvNvv9Volxr5bpADCwYAJdDgAAtLiBvbYYGhsAwCJzc5jeXDU8XS0jy1WoDXqSB643m3SA5jY5SEV2y5Xq7Whw2sE2wJyKOIgA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((1, 1), [$P_0 tp Q_1$]), - node((2, 1), [$P_0 tp Q_0$]), - node((2, 2), [$P_1 tp Q_0$]), - node((2, 3), [$P_2 tp Q_0$]), - node((1, 2), [$P_1 tp Q_1$]), - node((1, 3), [$P_2 tp Q_1$]), - node((0, 1), [$P_0 tp Q_2$]), - node((0, 2), [$P_1 tp Q_2$]), - node((1, 0), [$A tp Q_1$]), - node((0, 0), [$A tp Q_2$]), - node((2, 0), [$A tp Q_0$]), - node((0, 3), [$P_2 tp Q_2$]), - arr((0, 2), (0, 1), [$d_P tp 1$]), - arr((1, 2), (1, 1), [$d_P tp 1$]), - arr((1, 3), (1, 2), [$d_P tp 1$]), - arr((2, 2), (2, 1), [$d_P tp 1$]), - arr((2, 3), (2, 2), [$d_P tp 1$]), - arr((1, 1), (2, 1), [$1 tp d_Q$]), - arr((1, 2), (2, 2), [$-1 tp d_Q$]), - arr((1, 3), (2, 3), [$1 tp d_Q$]), - arr((0, 1), (1, 1), [$1 tp d_Q$]), - arr((0, 2), (1, 2), [$-1 tp d_Q$]), - arr((0, 0), (1, 0), [$-1 tp d_Q$]), - arr((0, 3), (0, 2), [$d_P tp 1$]), - arr((0, 3), (1, 3), [$1 tp d_Q$]), - arr((1, 0), (2, 0), [$-1 tp d_Q$]), - arr((0, 1), (0, 0), [$epsilon tp 1$], "dashed"), - arr((1, 1), (1, 0), [$epsilon tp 1$], "dashed"), - arr((2, 1), (2, 0), [$epsilon tp 1$], "dashed"), -)) + + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRAAUB9ABgAIc0vAIqdiIAL6l0mXPkIoyAJiq1GLNlz4DhPCVJAZseAkUWll1es1aIOo-oJHc90o3KIBmcyqvrbXRQcdZ0lXWRMUM0pLNRs7YiCRMVCDGWN5ZC9o1WsNTkDtJJdUtwiSUm4fWLytR3ziw3CMs0qY3P97QvqUxvSibnIq9pAAQUTRBrT3FAHWnL9R8cVJ0oyBi3m4sa6Q-V7pzIqhhYCliRUYKABzeCJQADMAJwgAWyQAdmocCCQANjaFlBOOwgsl9E9XkgACxfH6IAabNhAkHaMEPZ5vRAAVlh0IBcWRoOKEMxZhA3yQZERtkJqOJGKQXnJcLJvgJwKJKRJSARFMQVLZbAS2iBQnpkMQMOZSFZ1VsAFphYJReLMTjpYgmYLbEreCquQzEP8NQjtSBdfrwYbPhqpWbFUFLeiJQBOXGIAAc+KFjs4YoNEuIVL5NrNtMEaJA3P5wbh6rNFr9qqQXo1xFNcvNvv9Volxr5bpADCwYAJdDgAAtLiBvbYYGhsAwCJzc5jeXDU8XS0jy1WoDXqSB643m3SA5jY5SEV2y5Xq7Whw2sE2wJyKOIgA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((1, 1), [$P_0 tp Q_1$]), + node((2, 1), [$P_0 tp Q_0$]), + node((2, 2), [$P_1 tp Q_0$]), + node((2, 3), [$P_2 tp Q_0$]), + node((1, 2), [$P_1 tp Q_1$]), + node((1, 3), [$P_2 tp Q_1$]), + node((0, 1), [$P_0 tp Q_2$]), + node((0, 2), [$P_1 tp Q_2$]), + node((1, 0), [$A tp Q_1$]), + node((0, 0), [$A tp Q_2$]), + node((2, 0), [$A tp Q_0$]), + node((0, 3), [$P_2 tp Q_2$]), + arr((0, 2), (0, 1), [$d_P tp 1$]), + arr((1, 2), (1, 1), [$d_P tp 1$]), + arr((1, 3), (1, 2), [$d_P tp 1$]), + arr((2, 2), (2, 1), [$d_P tp 1$]), + arr((2, 3), (2, 2), [$d_P tp 1$]), + arr((1, 1), (2, 1), [$1 tp d_Q$]), + arr((1, 2), (2, 2), [$-1 tp d_Q$]), + arr((1, 3), (2, 3), [$1 tp d_Q$]), + arr((0, 1), (1, 1), [$1 tp d_Q$]), + arr((0, 2), (1, 2), [$-1 tp d_Q$]), + arr((0, 0), (1, 0), [$-1 tp d_Q$]), + arr((0, 3), (0, 2), [$d_P tp 1$]), + arr((0, 3), (1, 3), [$1 tp d_Q$]), + arr((1, 0), (2, 0), [$-1 tp d_Q$]), + arr((0, 1), (0, 0), [$epsilon tp 1$], "dashed"), + arr((1, 1), (1, 0), [$epsilon tp 1$], "dashed"), + arr((2, 1), (2, 0), [$epsilon tp 1$], "dashed"), + ), + ) where $C_(-1, q) = A tp Q_q$ and $C_(p, q) = P_p tp Q_q$ for any $p, q >= 0$. - Then + Then $ - (Tot^xor (C)[-1])_n = Tot^xor (C)_(n-1) = Tor^xor (P tpr Q)_(n-1) xor (A tp Q_(n)) + (Tot^xor (C)[-1])_n = Tot^xor (C)_(n-1) = Tor^xor (P tpr Q)_(n-1) xor (A tp Q_(n)) $ - + Meanwhile, the mapping cone of $f : Tot^xor (P tpr Q) -> A tpr Q $ has $ cone(f)_n = Tot^xor (P tpr Q)_(n-1) xor (A tp Q_(n)). $ Also $ d_(cone(f)) = (-(d^((P)) tp 1 + (-1)^p tp d^((Q))), 1 tp d^((Q)) - epsilon tp 1) = -d_(Tot^xor (C)[-1]), $ hence $cone(f) iso Tot^xor (C)[-1]$. - To show that $f$ is a quasi-isomorphism, we need to show $cone(f)$ is acyclic by @cone-qi. As any $Q_p$ is projective, $(- tpr Q_p)$ is exact by @projective-flat-1. Since $P_cx -> A$ is a resolution, every row of $C$ is exact. Since $C$ is upper half-plane, $Tot^xor (C)$ is acyclic by @aal. So $f$ is a quasi-isomorphism. - + To show that $f$ is a quasi-isomorphism, we need to show $cone(f)$ is acyclic by @cone-qi. As any $Q_p$ is projective, $(- tpr Q_p)$ is exact by @projective-flat-1. Since $P_cx -> A$ is a resolution, every row of $C$ is exact. Since $C$ is upper half-plane, $Tot^xor (C)$ is acyclic by @aal. So $f$ is a quasi-isomorphism. + Similarly, we can show that $g$ is a quasi-isomorphism by forming a double complex $C'$ obtained from adding $B tpr P$ in the row $q = -1$ of $P tpr Q$. // ($Q$ means $id_Q$ in proper places) ] @@ -597,12 +634,14 @@ It has the *tensor product total complex*, $Tot^xor (P_cx tpr Q_cx)$. == Balancing $Ext$ #definition[ -Given a chain complex $(P_cx, d^((P)))$ and a cochain complex $(I^cx, d_((I)))$, we can form the *Hom double complex* $ hom(P_cx, I^cx) = {hom (P_p, I^q)}_(p, q) $ -with differentials#footnote[Here we alternate the signs for adjacent rows (instead of adjacent columns, as in the tensor product double complex). This sign convention, following @notes[p. 76], is different from that in @weibel[p. 62].] - $ d^h_(p, q) (f) &= (-1)^q f oo d^((P))_(p+1) in hom ( P_(p+1) , I^q) \ d^v_(p, q) (f) &= d_((I))^q oo f in hom (P_p, I^(q+1)) $ -for $f in hom ( P_p , I^q )$. + Given a chain complex $(P_cx, d^((P)))$ and a cochain complex $(I^cx, d_((I)))$, we can form the *Hom double complex* $ hom(P_cx, I^cx) = {hom (P_p, I^q)}_(p, q) $ + with differentials#footnote[Here we alternate the signs for adjacent rows (instead of adjacent columns, as in the tensor product double complex). This sign convention, following @notes[p. 76], is different from that in @weibel[p. 62].] + $ + d^h_(p, q) (f) &= (-1)^q f oo d^((P))_(p+1) in hom ( P_(p+1) , I^q) \ d^v_(p, q) (f) &= d_((I))^q oo f in hom (P_p, I^(q+1)) + $ + for $f in hom ( P_p , I^q )$. -Then we define the *Hom cochain complex*#footnote[@weibel[p. 62] writes this as $Tor^Pi (hom (P, I))$, but as we will see in this case any diagonal slice has only finite terms, so their product and direct sum are the same.] as + Then we define the *Hom cochain complex*#footnote[@weibel[p. 62] writes this as $Tor^Pi (hom (P, I))$, but as we will see in this case any diagonal slice has only finite terms, so their product and direct sum are the same.] as $ Tot^xor (hom(P, I)) $ ] @@ -610,91 +649,94 @@ Then we define the *Hom cochain complex*#footnote[@weibel[p. 62] writes this as An (anticommutative) diagram for the Hom double complex is as follows. The placeholder in function compositions is written as $square$ (instead of $-$ as in most parts of these notes) so that it is not confused with the minus sign. Note particularly the signs and indices in the horizontal differentials. Also note that each row and each column is a cochain complex. // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBmAXVJADcBDAGwFcYkQALCAWwAIAKAAoB9MrwCSAPWIBKEAF9S6TLnyEUZAEzU6TVuy58ho0hMkBGOYuXY8BImXM6GLNok48BIsVM1WlIBi2akTmpE40Lvruhl7CYWZ+CgFBqvYoYdqRem4eRiIJUpbJNmnqyGFU2a4GnsaF0v6lduWaFM45tfnCbWayJYEqLURtWbo1MXUivUVNg8HpyG0R49F5cTOSSdbzZQ6kxB0TIAB0ZwOpwxkHR2tnJxdDIShth9V35zuXz8jk4be5e6PBblP5jKKAz4pJ6LP5VVaQh7yHQwKAAc3gRFAADMAE48JBkEA4CBIACs71ycAAjsx6LiYLwIBBeFBJPwhDIZPEBniCYgKcTSYgAGyU9g0ukMpkstkcwRcnq8-HcQk0ElIMII9hQYQc8Rc6Qy3iS+lsHZ81UC9XCgAs4vcuv1huIxtNDOV-LFQqQAHYHSAnfwDTIjcyTbSzZ6rVqNYg2trHXrg4bzG7Ix6LSqkAm439EyB3Yzw3LOdzzNGkPm4wAOANF42lhXczSVxD2n2IfMQnXJkMWdNS80BS1+m1IOsFoP9tPhott2N2gMAWgbJfZZZ5Wf5Hbj-oLq4zxdlG+bSu3VtzwoAnBeq+PEOZiHfEJO4+ZzC+38LzJoX-v33IF9vXfW1kXkIA -#align(center, commutative-diagram( - node-padding: (60pt, 60pt), - node((3, 0), text(green)[$hom (P_0, I^0)$]), - node((2, 0), text(red)[$hom (P_0, I^1)$]), - node((1, 0), text(blue)[$hom (P_0, I^2)$]), - node((1, 1), text(orange)[$hom (P_1, I^2)$]), - node((2, 1), text(blue)[$hom (P_1, I^1)$]), - node((3, 1), text(red)[$hom (P_1, I^0)$]), - node((3, 2), text(blue)[$hom (P_2, I^0)$]), - node((2, 2), text(orange)[$hom (P_2, I^1)$]), - node((1, 2), text(navy)[$hom (P_2, I^2)$]), - node((0, 0), [$...$]), - node((0, 1), [$...$]), - node((0, 2), [$...$]), - node((1, 3), [$...$]), - node((2, 3), [$...$]), - node((3, 3), [$...$]), - arr((3, 0), (3, 1), [$square oo d^((P))_1$]), - arr((3, 1), (3, 2), [$square oo d^((P))_2$]), - arr((3, 0), (2, 0), [$d_((I))^0 oo square$]), - arr((3, 1), (2, 1), [$d_((I))^0 oo square$]), - arr((3, 2), (2, 2), [$d_((I))^0 oo square$]), - arr((2, 0), (1, 0), [$d_((I))^1 oo square$]), - arr((1, 0), (1, 1), [$square oo d^((P))_1$]), - arr((1, 1), (1, 2), [$square oo d^((P))_2$]), - arr((2, 1), (1, 1), [$d_((I))^1 oo square$]), - arr((2, 2), (1, 2), [$d_((I))^1 oo square$]), - arr((2, 0), (2, 1), [$-square oo d^((P))_1$]), - arr((2, 1), (2, 2), [$-square oo d^((P))_2$]), - arr((1, 0), (0, 0), []), - arr((1, 1), (0, 1), []), - arr((1, 2), (0, 2), []), - arr((1, 2), (1, 3), []), - arr((2, 2), (2, 3), []), - arr((3, 2), (3, 3), []), -)) +#align( + center, + commutative-diagram( + node-padding: (60pt, 60pt), + node((3, 0), text(green)[$hom (P_0, I^0)$]), + node((2, 0), text(red)[$hom (P_0, I^1)$]), + node((1, 0), text(blue)[$hom (P_0, I^2)$]), + node((1, 1), text(orange)[$hom (P_1, I^2)$]), + node((2, 1), text(blue)[$hom (P_1, I^1)$]), + node((3, 1), text(red)[$hom (P_1, I^0)$]), + node((3, 2), text(blue)[$hom (P_2, I^0)$]), + node((2, 2), text(orange)[$hom (P_2, I^1)$]), + node((1, 2), text(navy)[$hom (P_2, I^2)$]), + node((0, 0), [$...$]), + node((0, 1), [$...$]), + node((0, 2), [$...$]), + node((1, 3), [$...$]), + node((2, 3), [$...$]), + node((3, 3), [$...$]), + arr((3, 0), (3, 1), [$square oo d^((P))_1$]), + arr((3, 1), (3, 2), [$square oo d^((P))_2$]), + arr((3, 0), (2, 0), [$d_((I))^0 oo square$]), + arr((3, 1), (2, 1), [$d_((I))^0 oo square$]), + arr((3, 2), (2, 2), [$d_((I))^0 oo square$]), + arr((2, 0), (1, 0), [$d_((I))^1 oo square$]), + arr((1, 0), (1, 1), [$square oo d^((P))_1$]), + arr((1, 1), (1, 2), [$square oo d^((P))_2$]), + arr((2, 1), (1, 1), [$d_((I))^1 oo square$]), + arr((2, 2), (1, 2), [$d_((I))^1 oo square$]), + arr((2, 0), (2, 1), [$-square oo d^((P))_1$]), + arr((2, 1), (2, 2), [$-square oo d^((P))_2$]), + arr((1, 0), (0, 0), []), + arr((1, 1), (0, 1), []), + arr((1, 2), (0, 2), []), + arr((1, 2), (1, 3), []), + arr((2, 2), (2, 3), []), + arr((3, 2), (3, 3), []), + ), +) #remark[ - There are a few technicalities to be addressed here. They are not conceptually difficult but can be bewildering when first encountered. + There are a few technicalities to be addressed here. They are not conceptually difficult but can be bewildering when first encountered. Notice that in our original definition of a double complex, we would draw the arrows pointing downwards and to the left, which we refer to as a *canonical ordering*. However, when we draw the diagram for a Hom double complex, the arrows point upwards and to the right. -// // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBmAXVJADcBDAGwFcYkQALCAWwAIAKAAoB9MrwCSAPWIBKEAF9S6TLnyEUZAEzU6TVuy58ho0hMma5i5djwEiZAIw6GLNok48BIsVIsKlIBg2akQOpE40Lvruhl7CYWZ+VoEqturIYdqRem4eRiIJUg6WAUGqdihhVNmuBp7GhdIl1uXpmhTOOXX5wu1msv4taUTtWbq1MfUifUXNKcEVyO0R49F5cTPmc2XDGqTEnRMgAHSng-OtofuHa6fH5zshKO0HNbdnyY+L5OE3uXcPVJPZA-MZRf4fUpA74dN4Q+7yHQwKAAc3gRFAADMAE48JBkEA4CBIACsyRxeMQJJoRKQADZybjuPiacTEA5GZTqYS2QAWTnMxB01lIADsAqQYR5SE0EsQ7WliHIcp+ioAHHLeSKlXLRdqNQEKYKpbTEPzDUykFrFeKLZSFaaAJwq7UOYhytWujl2wWexUOWU+sWu5VBoWu-mUeRAA -// #align(center, commutative-diagram( -// node-padding: (50pt, 50pt), -// node((3, 0), text(green)[$hom (P_0, I^0)$]), -// node((2, 0), text(red)[$hom (P_0, I^1)$]), -// node((1, 0), text(blue)[$hom (P_0, I^2)$]), -// node((1, 1), text(orange)[$hom (P_1, I^2)$]), -// node((2, 1), text(blue)[$hom (P_1, I^1)$]), -// node((3, 1), text(red)[$hom (P_1, I^0)$]), -// node((3, 2), text(blue)[$hom (P_2, I^0)$]), -// node((2, 2), text(orange)[$hom (P_2, I^1)$]), -// node((1, 2), text(navy)[$hom (P_2, I^2)$]), -// node((0, 0), [$...$]), -// node((0, 1), [$...$]), -// node((0, 2), [$...$]), -// node((1, 3), [$...$]), -// node((2, 3), [$...$]), -// node((3, 3), [$...$]), -// arr((3, 0), (3, 1), []), -// arr((3, 1), (3, 2), []), -// arr((3, 0), (2, 0), []), -// arr((3, 1), (2, 1), []), -// arr((3, 2), (2, 2), []), -// arr((2, 0), (1, 0), []), -// arr((1, 0), (1, 1), []), -// arr((1, 1), (1, 2), []), -// arr((2, 1), (1, 1), []), -// arr((2, 2), (1, 2), []), -// arr((2, 0), (2, 1), []), -// arr((2, 1), (2, 2), []), -// arr((1, 0), (0, 0), []), -// arr((1, 1), (0, 1), []), -// arr((1, 2), (0, 2), []), -// arr((1, 2), (1, 3), []), -// arr((2, 2), (2, 3), []), -// arr((3, 2), (3, 3), []), -// )) -Thus this is, strictly speaking, neither a upper half-plane complex nor a right half-plane complex, because if we would like to turn the diagram into a canonically ordered one, we would need to reflect it to the "third quadrant". This ordering matters mainly because in this case, it would be more convenient to apply @aal-2 instead of @aal[Acyclic Assembly Lemma]. - -Another confusion that can easily arise from a non-canonical ordering is how to form the corresponding total complex. -Apart from converting the diagram to a canonically ordered one by reflection, a simple method is to select any object $A$ in the grid and draw a line $l$ connecting the arrowheads of the two arrows departing from $A$. Then every "diagonal slice", whose direct sum is a term of the total complex, must be parallel to this line $l$. This is simply because each arrow must point from one diagonal slice to another. For example, each diagonal slice of the Hom double complex has a distinct colour in the above diagram, and hence we see -$ - Tot^xor (hom (P, I))^n = plus.circle.big_(p + q = n) hom(P_p, I^q) -$ -This total complex is a _cochain_ complex#footnote[In fact, whether a total complex is a chain complex or a cochain complex can seem arbitrary, because this actually depends on how we index the diagonals. Here we see the Hom total complex as a cochain complex because it is more convenient in later proofs. + // // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBmAXVJADcBDAGwFcYkQALCAWwAIAKAAoB9MrwCSAPWIBKEAF9S6TLnyEUZAEzU6TVuy58ho0hMma5i5djwEiZAIw6GLNok48BIsVIsKlIBg2akQOpE40Lvruhl7CYWZ+VoEqturIYdqRem4eRiIJUg6WAUGqdihhVNmuBp7GhdIl1uXpmhTOOXX5wu1msv4taUTtWbq1MfUifUXNKcEVyO0R49F5cTPmc2XDGqTEnRMgAHSng-OtofuHa6fH5zshKO0HNbdnyY+L5OE3uXcPVJPZA-MZRf4fUpA74dN4Q+7yHQwKAAc3gRFAADMAE48JBkEA4CBIACsyRxeMQJJoRKQADZybjuPiacTEA5GZTqYS2QAWTnMxB01lIADsAqQYR5SE0EsQ7WliHIcp+ioAHHLeSKlXLRdqNQEKYKpbTEPzDUykFrFeKLZSFaaAJwq7UOYhytWujl2wWexUOWU+sWu5VBoWu-mUeRAA + // #align(center, commutative-diagram( + // node-padding: (50pt, 50pt), + // node((3, 0), text(green)[$hom (P_0, I^0)$]), + // node((2, 0), text(red)[$hom (P_0, I^1)$]), + // node((1, 0), text(blue)[$hom (P_0, I^2)$]), + // node((1, 1), text(orange)[$hom (P_1, I^2)$]), + // node((2, 1), text(blue)[$hom (P_1, I^1)$]), + // node((3, 1), text(red)[$hom (P_1, I^0)$]), + // node((3, 2), text(blue)[$hom (P_2, I^0)$]), + // node((2, 2), text(orange)[$hom (P_2, I^1)$]), + // node((1, 2), text(navy)[$hom (P_2, I^2)$]), + // node((0, 0), [$...$]), + // node((0, 1), [$...$]), + // node((0, 2), [$...$]), + // node((1, 3), [$...$]), + // node((2, 3), [$...$]), + // node((3, 3), [$...$]), + // arr((3, 0), (3, 1), []), + // arr((3, 1), (3, 2), []), + // arr((3, 0), (2, 0), []), + // arr((3, 1), (2, 1), []), + // arr((3, 2), (2, 2), []), + // arr((2, 0), (1, 0), []), + // arr((1, 0), (1, 1), []), + // arr((1, 1), (1, 2), []), + // arr((2, 1), (1, 1), []), + // arr((2, 2), (1, 2), []), + // arr((2, 0), (2, 1), []), + // arr((2, 1), (2, 2), []), + // arr((1, 0), (0, 0), []), + // arr((1, 1), (0, 1), []), + // arr((1, 2), (0, 2), []), + // arr((1, 2), (1, 3), []), + // arr((2, 2), (2, 3), []), + // arr((3, 2), (3, 3), []), + // )) + Thus this is, strictly speaking, neither a upper half-plane complex nor a right half-plane complex, because if we would like to turn the diagram into a canonically ordered one, we would need to reflect it to the "third quadrant". This ordering matters mainly because in this case, it would be more convenient to apply @aal-2 instead of @aal[Acyclic Assembly Lemma]. + + Another confusion that can easily arise from a non-canonical ordering is how to form the corresponding total complex. + Apart from converting the diagram to a canonically ordered one by reflection, a simple method is to select any object $A$ in the grid and draw a line $l$ connecting the arrowheads of the two arrows departing from $A$. Then every "diagonal slice", whose direct sum is a term of the total complex, must be parallel to this line $l$. This is simply because each arrow must point from one diagonal slice to another. For example, each diagonal slice of the Hom double complex has a distinct colour in the above diagram, and hence we see + $ + Tot^xor (hom (P, I))^n = plus.circle.big_(p + q = n) hom(P_p, I^q) + $ + This total complex is a _cochain_ complex#footnote[In fact, whether a total complex is a chain complex or a cochain complex can seem arbitrary, because this actually depends on how we index the diagonals. Here we see the Hom total complex as a cochain complex because it is more convenient in later proofs. // because later on we would like to establish an isomorphism between the total complex and the cone complex of a cochain map (which is a cochain complex). ] because the differentials point from $Tot^xor (hom (P, I))^n$ to $Tot^xor (hom (P, I))^(n+1)$. ] @@ -703,7 +745,7 @@ This total complex is a _cochain_ complex#footnote[In fact, whether a total comp #remark[ Let $I^cx$ be a cochain complex of abelian groups and let $P_cx$ (resp. $Q_cx$) be a chain complex of right (resp. left) $R$-modules, then there is a natural isomorphism -$ hom_Ab (Tot^xor (P tp Q), I) iso hom_R (P , Tot^Pi (hom_Ab (Q, I))). $ + $ hom_Ab (Tot^xor (P tp Q), I) iso hom_R (P , Tot^Pi (hom_Ab (Q, I))). $ ] @@ -711,122 +753,134 @@ $ hom_Ab (Tot^xor (P tp Q), I) iso hom_R (P , Tot^Pi (hom_Ab (Q, I))). $ #theorem([Balancing of $Ext$])[ For all $n$, $ Ext^n_R (A, B) = R^n hom_R (A, -) (B) iso R^n hom_R (-, B) (A) $ -] +] #proof[@weibel[Theorem 2.7.6, p.63]. // #align(center,image("../imgs/2023-11-23-03-27-44.png",width:80%)) - Take projective resolution $P_cx ->^epsilon A$ and injective resolution $B ->^eta I^cx$. We can view $A$ and $B$ as complexes concentrated at degree $0$. We can form double cochain complexes $hom(P, I)$, $hom(A, I)$ and $hom(P, B)$. As in the proof of @balance-tor, we need to show the maps on Hom cochain complexes - $ f: hom(A, I) -> Tot^xor ( hom(P, I)) \ g: hom(P, B) -> Tot^xor (hom(P, I)) $ are quasi-isomorphisms. This is equivalent to $cone(f)$ and $cone(g)$ being acyclic by (the dual of) @cone-qi. + Take projective resolution $P_cx ->^epsilon A$ and injective resolution $B ->^eta I^cx$. We can view $A$ and $B$ as complexes concentrated at degree $0$. We can form double cochain complexes $hom(P, I)$, $hom(A, I)$ and $hom(P, B)$. As in the proof of @balance-tor, we need to show the maps on Hom cochain complexes + $ + f: hom(A, I) -> Tot^xor ( hom(P, I)) \ g: hom(P, B) -> Tot^xor (hom(P, I)) + $ are quasi-isomorphisms. This is equivalent to $cone(f)$ and $cone(g)$ being acyclic by (the dual of) @cone-qi. Let $C$ be the double complex $hom(P, I)$ with $hom(A, I)$ added to the column $p=-1$ using $epsilon : P_0 -> A$. We make it so that every added differential has a minus sign, as shown in the diagram. -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoBmAXVJADcBDAGwFcYkQALCAWwAIAKAAoB9AAyleASQB6ogJQgAvqXSZc+QijIAmanSat2XPkLESZxBctXY8BImWJ6GLNok48BI8VOnarKiAYthpE2qRONC6G7sZewmS+-kqBwer2KOG6UQZuHiYiiRYBNumayOFUOa5GnqZFsiVBanbl5BTOubUFwuG+8imlrUTt2fo1sXUifcWDzSEZyO2R4zH58TN+TWnDWqSinRMgAHSnczuhmfuHa6fH5y2XS9fVt2fW82VEACwRN3l3B4Lcq-MbRAHvVKPRa-KqrCH3D4XRbiOHg7r8ACC5kaQK+KHEYK6k24WJxljxu2Q4hW6JJZKS22h5XEB1eCKUehgUAA5vAiKAAGYAJx4SHEIBwECQAFZ2ew4ABHZj0YUwXgQCC8KDSfhCORyBJzEVixByyXSxAANnl7iVKrVGq1Or1ggNvWNou44poUqQZHh7Cgwj1kgNsidvHtqrYHxN3rNvstv0D7mDofDokj0bVntNNotSAA7LaQOn+GG5BHNVHlTG8wmA37EOFU2WQxXw8Rs3Xc3GvUhW832m2c+qay79YbiA2kCPmwAOUtjyOTt2G7SzxAp4el8uV6TdmtjrclwuIJdt-ddnsO2OBeP+pNIFN0kAAWhXE91U6N-dNO6Wmeb6fr247Oj+64ev+CZDpaACcMFzs+iDEKISEXihxDEBhl7NsQ2gYWe+HkBhBb4d8GHEOa+EFm+15Vlmx5gVuxDkZaxDAcS7YZlWR5aieVHERxC5CShrZvl+WowGg2CMPYNCMFgYB5FA9BwBw3KsexT5tqBd6RjJckKSASkqUG6maVArE0ZaEqSWBhmyVg8mEIolCKEAA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((3, 1), [$hom (P_0, I^0)$]), - node((2, 1), [$hom (P_0, I^1)$]), - node((1, 1), [$hom (P_0, I^2)$]), - node((1, 2), [$hom (P_1, I^2)$]), - node((2, 2), [$hom (P_1, I^1)$]), - node((3, 2), [$hom (P_1, I^0)$]), - node((3, 3), [$hom (P_2, I^0)$]), - node((2, 3), [$hom (P_2, I^1)$]), - node((1, 3), [$hom (P_2, I^2)$]), - node((0, 1), [$...$]), - node((0, 2), [$...$]), - node((0, 3), [$...$]), - node((1, 4), [$...$]), - node((2, 4), [$...$]), - node((3, 4), [$...$]), - node((3, 0), [$hom(A, I^0)$]), - node((2, 0), [$hom(A, I^1)$]), - node((1, 0), [$hom(A, I^2)$]), - node((0, 0), [$...$]), - arr((3, 1), (3, 2), [$square oo d^((P))_1$]), - arr((3, 2), (3, 3), [$square oo d^((P))_2$]), - arr((3, 1), (2, 1), [$d_((I))^0 oo square$]), - arr((3, 2), (2, 2), [$d_((I))^0 oo square$]), - arr((3, 3), (2, 3), [$d_((I))^0 oo square$]), - arr((2, 1), (1, 1), [$d_((I))^1 oo square$]), - arr((1, 1), (1, 2), [$square oo d^((P))_1$]), - arr((1, 2), (1, 3), [$square oo d^((P))_2$]), - arr((2, 2), (1, 2), [$d_((I))^1 oo square$]), - arr((2, 3), (1, 3), [$d_((I))^1 oo square$]), - arr((2, 1), (2, 2), [$-square oo d^((P))_1$]), - arr((2, 2), (2, 3), [$-square oo d^((P))_2$]), - arr((1, 1), (0, 1), []), - arr((1, 2), (0, 2), []), - arr((1, 3), (0, 3), []), - arr((1, 3), (1, 4), []), - arr((2, 3), (2, 4), []), - arr((3, 3), (3, 4), []), - arr((3, 0), (2, 0), [$-d_((I))^0 oo square$]), - arr((2, 0), (1, 0), [$-d_((I))^1 oo square$]), - arr((1, 0), (0, 0), []), - arr((1, 0), (1, 1), [$-square oo epsilon$], "dashed"), - arr((2, 0), (2, 1), [$-square oo epsilon$], "dashed"), - arr((3, 0), (3, 1), [$-square oo epsilon$], "dashed"), -)) - We observe that $cone(f) iso Tot^xor (C)$ (both their terms and differentials match). Every $hom(-, I^q)$ is exact, so every row of $C$ is exact, then we can see that $Tot^xor (C)$ is acyclic by @aal-2. Similarly, we can show that $cone(g)$ is acyclic. - Then applying cohomology yields - - $ R^ast hom(A, -) (B) &= H^ast hom (A, I) \ &iso H^ast Tot^xor ( hom(P, I)) \ &iso H^ast hom(P, B) = R^ast hom(-, B) (A). $ + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoBmAXVJADcBDAGwFcYkQALCAWwAIAKAAoB9AAyleASQB6ogJQgAvqXSZc+QijIAmanSat2XPkLESZxBctXY8BImWJ6GLNok48BI8VOnarKiAYthpE2qRONC6G7sZewmS+-kqBwer2KOG6UQZuHiYiiRYBNumayOFUOa5GnqZFsiVBanbl5BTOubUFwuG+8imlrUTt2fo1sXUifcWDzSEZyO2R4zH58TN+TWnDWqSinRMgAHSnczuhmfuHa6fH5y2XS9fVt2fW82VEACwRN3l3B4Lcq-MbRAHvVKPRa-KqrCH3D4XRbiOHg7r8ACC5kaQK+KHEYK6k24WJxljxu2Q4hW6JJZKS22h5XEB1eCKUehgUAA5vAiKAAGYAJx4SHEIBwECQAFZ2ew4ABHZj0YUwXgQCC8KDSfhCORyBJzEVixByyXSxAANnl7iVKrVGq1Or1ggNvWNou44poUqQZHh7Cgwj1kgNsidvHtqrYHxN3rNvstv0D7mDofDokj0bVntNNotSAA7LaQOn+GG5BHNVHlTG8wmA37EOFU2WQxXw8Rs3Xc3GvUhW832m2c+qay79YbiA2kCPmwAOUtjyOTt2G7SzxAp4el8uV6TdmtjrclwuIJdt-ddnsO2OBeP+pNIFN0kAAWhXE91U6N-dNO6Wmeb6fr247Oj+64ev+CZDpaACcMFzs+iDEKISEXihxDEBhl7NsQ2gYWe+HkBhBb4d8GHEOa+EFm+15Vlmx5gVuxDkZaxDAcS7YZlWR5aieVHERxC5CShrZvl+WowGg2CMPYNCMFgYB5FA9BwBw3KsexT5tqBd6RjJckKSASkqUG6maVArE0ZaEqSWBhmyVg8mEIolCKEAA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((3, 1), [$hom (P_0, I^0)$]), + node((2, 1), [$hom (P_0, I^1)$]), + node((1, 1), [$hom (P_0, I^2)$]), + node((1, 2), [$hom (P_1, I^2)$]), + node((2, 2), [$hom (P_1, I^1)$]), + node((3, 2), [$hom (P_1, I^0)$]), + node((3, 3), [$hom (P_2, I^0)$]), + node((2, 3), [$hom (P_2, I^1)$]), + node((1, 3), [$hom (P_2, I^2)$]), + node((0, 1), [$...$]), + node((0, 2), [$...$]), + node((0, 3), [$...$]), + node((1, 4), [$...$]), + node((2, 4), [$...$]), + node((3, 4), [$...$]), + node((3, 0), [$hom(A, I^0)$]), + node((2, 0), [$hom(A, I^1)$]), + node((1, 0), [$hom(A, I^2)$]), + node((0, 0), [$...$]), + arr((3, 1), (3, 2), [$square oo d^((P))_1$]), + arr((3, 2), (3, 3), [$square oo d^((P))_2$]), + arr((3, 1), (2, 1), [$d_((I))^0 oo square$]), + arr((3, 2), (2, 2), [$d_((I))^0 oo square$]), + arr((3, 3), (2, 3), [$d_((I))^0 oo square$]), + arr((2, 1), (1, 1), [$d_((I))^1 oo square$]), + arr((1, 1), (1, 2), [$square oo d^((P))_1$]), + arr((1, 2), (1, 3), [$square oo d^((P))_2$]), + arr((2, 2), (1, 2), [$d_((I))^1 oo square$]), + arr((2, 3), (1, 3), [$d_((I))^1 oo square$]), + arr((2, 1), (2, 2), [$-square oo d^((P))_1$]), + arr((2, 2), (2, 3), [$-square oo d^((P))_2$]), + arr((1, 1), (0, 1), []), + arr((1, 2), (0, 2), []), + arr((1, 3), (0, 3), []), + arr((1, 3), (1, 4), []), + arr((2, 3), (2, 4), []), + arr((3, 3), (3, 4), []), + arr((3, 0), (2, 0), [$-d_((I))^0 oo square$]), + arr((2, 0), (1, 0), [$-d_((I))^1 oo square$]), + arr((1, 0), (0, 0), []), + arr((1, 0), (1, 1), [$-square oo epsilon$], "dashed"), + arr((2, 0), (2, 1), [$-square oo epsilon$], "dashed"), + arr((3, 0), (3, 1), [$-square oo epsilon$], "dashed"), + ), + ) + We observe that $cone(f) iso Tot^xor (C)$ (both their terms and differentials match). Every $hom(-, I^q)$ is exact, so every row of $C$ is exact, then we can see that $Tot^xor (C)$ is acyclic by @aal-2. Similarly, we can show that $cone(g)$ is acyclic. + Then applying cohomology yields + + $ + R^ast hom(A, -) (B) &= H^ast hom (A, I) \ &iso H^ast Tot^xor ( hom(P, I)) \ &iso H^ast hom(P, B) = R^ast hom(-, B) (A). + $ ] // #TODO Tot and everything should be cochain instead of chain complex !!! => so that we can take cohomology... // #TODO mapping cone of a *cochain* complex -Now that we have gained some experience with non-canonically ordered double complexes, we introduce another form of a Hom double complex. +Now that we have gained some experience with non-canonically ordered double complexes, we introduce another form of a Hom double complex. #definition[ - Given two chain complexes $(P_cx, d^((P)))$ and $(Q_cx, d^((Q)))$, we can form the *Hom double complex* + Given two chain complexes $(P_cx, d^((P)))$ and $(Q_cx, d^((Q)))$, we can form the *Hom double complex* $ hom (P_cx, Q_cx) = { hom(P_p, Q_q) }_(p, q) $ - with differentials - $ d^h_(p, q) (f) &= (-1)^q f oo d^((P))_(p+1) in hom ( P_(p+1) , Q_q) \ d^v_(p, q) (f) &= d^((Q))_q oo f in hom (P_p, Q_(q-1)) $ -for $f in hom ( P_p , Q_q )$. -Then we define the *Hom cochain complex* as - $Tot^Pi (hom(P, Q)). $ + with differentials + $ + d^h_(p, q) (f) &= (-1)^q f oo d^((P))_(p+1) in hom ( P_(p+1) , Q_q) \ d^v_(p, q) (f) &= d^((Q))_q oo f in hom (P_p, Q_(q-1)) + $ + for $f in hom ( P_p , Q_q )$. + Then we define the *Hom cochain complex* as + $Tot^Pi (hom(P, Q)).$ ] -We draw the (non-canonically ordered) double complex $hom (P, Q)$ as follows. Note that each row is a cochain complex, while each column is a chain complex. +We draw the (non-canonically ordered) double complex $hom (P, Q)$ as follows. Note that each row is a cochain complex, while each column is a chain complex. // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBmAXVJADcBDAGwFcYkQALCAWwAoAFAPpkABAEVhAShABfUuky58hFAEYK1Ok1bsufIevFTZ8kBmx4CRAEwaaDFm0SceAwbaPFpchReVEya00HHWc9N1EJVW9TcyUrNVIg+20nF31BQyiY33iVZFtkrUddVyEPbJNcy3yyVWDU0ozI9xyzRRqidXqUkrCyzNIjaza4zpRbHuLQ9LcK1qr2vwSSUmIGvpAAOh3Fsf9E9d6Zna29joOCtY2T3Z8lvKJyUimQtNPz5fznorf2D-u+xWzyox3ed00MCgAHN4ERQAAzABOPCQZBAOAgSHU0zScAAjsx6EiYCIIBARFAAHq8ASSSSZRbI1GIHGYpC2XHsAlEklkinU2n8enuJko7hIZ4YrGIAAsYPYAFoecTSeTKTS6QzVGKWfLpUgAKw0Rj0ABGMEY-AuCRAjBgCJwIAVzmVhNV-I1QpF1l1EsQADYaOzEAB2F0gFV89WCrWM+7M-3hg2IAAcEajaoFmuFDN9CfFSCDKalf2csbEPs9mb9kuDMvRZZAFZFqmr7pJtbD9aQ+qbLbz7d5bALep7rIjA8yQ9VXfTKeNXPLmsrg-VNdH-sXIc5-ZXrZnnc3SAAnOOA8fWeiQ6HL6o2TLU5f5yHVNZL9uZapyJfOa-ZTIlAyEAA -#align(center, commutative-diagram( - node-padding: (60pt, 60pt), - node((3, 0), text(blue)[$hom(P_0, Q_0)$]), - node((3, 1), text(red)[$hom(P_1, Q_0)$]), - node((3, 2), text(green)[$hom(P_2, Q_0)$]), - node((2, 0), text(orange)[$hom(P_0, Q_1)$]), - node((2, 1), text(blue)[$hom(P_1, Q_1)$]), - node((2, 2), text(red)[$hom(P_2, Q_1)$]), - node((1, 0), text(navy)[$hom(P_0, Q_2)$]), - node((1, 1), text(orange)[$hom(P_1, Q_2)$]), - node((1, 2), text(blue)[$hom(P_2, Q_2)$]), - node((0, 0), [$...$]), - node((0, 1), [$...$]), - node((0, 2), [$...$]), - node((1, 3), [$...$]), - node((2, 3), [$...$]), - node((3, 3), [$...$]), - arr((3, 0), (3, 1), [$square oo d^((P))_1$]), - arr((3, 1), (3, 2), [$square oo d^((P))_2$]), - arr((2, 0), (2, 1), [$-square oo d^((P))_1$]), - arr((2, 1), (2, 2), [$-square oo d^((P))_2$]), - arr((1, 0), (1, 1), [$square oo d^((P))_1$]), - arr((1, 1), (1, 2), [$square oo d^((P))_2$]), - arr((1, 0), (2, 0), [$d^((Q))_2 oo square$]), - arr((2, 0), (3, 0), [$d^((Q))_1 oo square$]), - arr((1, 1), (2, 1), [$d^((Q))_2 oo square$]), - arr((2, 1), (3, 1), [$d^((Q))_1 oo square$]), - arr((1, 2), (2, 2), [$d^((Q))_2 oo square$]), - arr((2, 2), (3, 2), [$d^((Q))_1 oo square$]), - arr((0, 0), (1, 0), []), - arr((0, 1), (1, 1), []), - arr((0, 2), (1, 2), []), - arr((1, 2), (1, 3), []), - arr((2, 2), (2, 3), []), - arr((3, 2), (3, 3), []), -)) +#align( + center, + commutative-diagram( + node-padding: (60pt, 60pt), + node((3, 0), text(blue)[$hom(P_0, Q_0)$]), + node((3, 1), text(red)[$hom(P_1, Q_0)$]), + node((3, 2), text(green)[$hom(P_2, Q_0)$]), + node((2, 0), text(orange)[$hom(P_0, Q_1)$]), + node((2, 1), text(blue)[$hom(P_1, Q_1)$]), + node((2, 2), text(red)[$hom(P_2, Q_1)$]), + node((1, 0), text(navy)[$hom(P_0, Q_2)$]), + node((1, 1), text(orange)[$hom(P_1, Q_2)$]), + node((1, 2), text(blue)[$hom(P_2, Q_2)$]), + node((0, 0), [$...$]), + node((0, 1), [$...$]), + node((0, 2), [$...$]), + node((1, 3), [$...$]), + node((2, 3), [$...$]), + node((3, 3), [$...$]), + arr((3, 0), (3, 1), [$square oo d^((P))_1$]), + arr((3, 1), (3, 2), [$square oo d^((P))_2$]), + arr((2, 0), (2, 1), [$-square oo d^((P))_1$]), + arr((2, 1), (2, 2), [$-square oo d^((P))_2$]), + arr((1, 0), (1, 1), [$square oo d^((P))_1$]), + arr((1, 1), (1, 2), [$square oo d^((P))_2$]), + arr((1, 0), (2, 0), [$d^((Q))_2 oo square$]), + arr((2, 0), (3, 0), [$d^((Q))_1 oo square$]), + arr((1, 1), (2, 1), [$d^((Q))_2 oo square$]), + arr((2, 1), (3, 1), [$d^((Q))_1 oo square$]), + arr((1, 2), (2, 2), [$d^((Q))_2 oo square$]), + arr((2, 2), (3, 2), [$d^((Q))_1 oo square$]), + arr((0, 0), (1, 0), []), + arr((0, 1), (1, 1), []), + arr((0, 2), (1, 2), []), + arr((1, 2), (1, 3), []), + arr((2, 2), (2, 3), []), + arr((3, 2), (3, 3), []), + ), +) // #align(center,image("../imgs/2023-11-23-22-22-07.png",width:80%)) // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBmAXVJADcBDAGwFcYkQALCAWwAoAFAPpkABAEVhAShABfUuky58hFAEYK1Ok1bsufIevFTZ8kBmx4CRAEwaaDFm0SceAwbaPFpchReVEya00HHWc9N1EJVW9TcyUrNVIg+20nF31BQyiY33iVZFtkrUddVyEPbJNcy3yyVWDU0ozI9xyzRRqidXqUkrCyzNIjaza4zpRbHuLQ9LcK1qr2vwSSUmIGvpAAOh3Fsf9E9d6Zna29joOCtY2T3Z8lvKJyUimQtNPz5fznorf2D-u+xWzyox3ed00MCgAHN4ERQAAzABOPCQZBAOAgSFU92RqMQ6gxWMQ1lxKO4SGeRKQABYyfiaTRMUgAKz0imIABsTOJAHZ2UheTykAAOAVc4WIcjiqnMxDEcVC6mIOmmPEcxnKnFq8miyVsnX4lmS0mGjkATklnPFqnRcv5ZuxhLlYsdiBFktUpsRusQxq10rdti1dMoMiAA // #align(center, commutative-diagram( @@ -866,11 +920,11 @@ We draw the (non-canonically ordered) double complex $hom (P, Q)$ as follows. No // arr((3, 2), (3, 3), []), // )) -The $n$-th term of the total cochain complex is +The $n$-th term of the total cochain complex is $ [Tot^Pi (hom (P_cx, Q_cx))]^n = product_(p >= max{0, n}) hom (P_p, Q_(p - n)), $ -which is the product of infinitely many terms. +which is the product of infinitely many terms. It turns out that this construction leads to a further way to compute $Ext$: @@ -884,61 +938,64 @@ It turns out that this construction leads to a further way to compute $Ext$: #proof[ @notes[Lemma 8.16]. The proof is similar to previous ones, so we present it briefly here. // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBoBmAXVJADcBDAGwFcYkQALCAWwAoAFAPpkABAEVhAShABfUuky58hFAEYK1Ok1bsufIevFTZ8kBmx4CRAEwaaDFm0SceAwbaPFpchReVEya00HHWc9N1EJVW9TcyUrNVIg+20nF31BQyiY33iVZFtkrUddVyEPbJNcy3yyVWDU0ozI9xyzRRqidXqUkrCyzNIjaza4zpRbHuLQ9LcK1qr2vwSSUmIGvpAAOh3Fsf9E9d6Zna29joOCtY2T3Z8lvKJyUimQtNPz5fznorf2D-u+xWzyox3ed1iFxWZAALDc0noRBEhgAhUZQ-LqOFgppIgyo9FfGykbHTBE8PHuAmfR4oZ6kv7OWSaGBQADm8CIoAAZgAnHhIMggHAQJDqMnsOAAR2Y9F5MBEEAgIigAD1eAJJJJMos+QLEOKRUhbBLnNLZfLFcq1Rr+Fr3Lr+dwkM9haLEDCcc4ALTmuUKpUq9Wa7WqR36z1upAAVhojHoACMYIx+Bj2IwYNycCAvSBfTL-Vag7b7dZw87EAA2GhGxAAdlzfstgZtIZ19z1FYbUcQAA5GwXm9bg3btWWO06kNWe67GSBW2JS0Wm2wJ-rXbWhXOF-bVMvB6vTJ2kN3a5Ht8HF2P9xbDzzJx6a+7xReNVfMjf-eWkP2e7HTfOl5LoGK7fog-61iar68O+e4gQeYEAJxPlOa4VqoQq1nWaFioa7q9jhfYoQa1iERBz7kIRJq1qoMKEZhz7-owWBgGkUD0HAHCsjmAEwDg9CfvKYF4WK07Max7DsZx3G5nxAnwbeYHUc+3biWxHFcVAPFznJgl3iAx4GuRom5vmt5Fq2o7tkeD6qNONHdnOZmFi2I6lsJp7PgRlAyEAA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((3, 0), [$hom(P_0, Q_0)$]), - node((3, 1), [$hom(P_1, Q_0)$]), - node((3, 2), [$hom(P_2, Q_0)$]), - node((2, 0), [$hom(P_0, Q_1)$]), - node((2, 1), [$hom(P_1, Q_1)$]), - node((2, 2), [$hom(P_2, Q_1)$]), - node((1, 0), [$hom(P_0, Q_2)$]), - node((1, 1), [$hom(P_1, Q_2)$]), - node((1, 2), [$hom(P_2, Q_2)$]), - node((0, 0), [$...$]), - node((0, 1), [$...$]), - node((0, 2), [$...$]), - node((1, 3), [$...$]), - node((2, 3), [$...$]), - node((3, 3), [$...$]), - node((4, 0), [$hom (P_0, B)$]), - node((4, 1), [$hom (P_1, B)$]), - node((4, 2), [$hom (P_2, B)$]), - node((4, 3), []), - arr((3, 0), (3, 1), [$square oo d^((P))_1$]), - arr((3, 1), (3, 2), [$square oo d^((P))_2$]), - arr((2, 0), (2, 1), [$-square oo d^((P))_1$]), - arr((2, 1), (2, 2), [$-square oo d^((P))_2$], label-pos: left), - arr((1, 0), (1, 1), [$square oo d^((P))_1$]), - arr((1, 1), (1, 2), [$square oo d^((P))_2$]), - arr((1, 0), (2, 0), [$d^((Q))_2 oo square$]), - arr((2, 0), (3, 0), [$d^((Q))_1 oo square$]), - arr((1, 1), (2, 1), [$d^((Q))_2 oo square$]), - arr((2, 1), (3, 1), [$d^((Q))_1 oo square$]), - arr((1, 2), (2, 2), [$d^((Q))_2 oo square$]), - arr((2, 2), (3, 2), [$d^((Q))_1 oo square$]), - arr((0, 0), (1, 0), []), - arr((0, 1), (1, 1), []), - arr((0, 2), (1, 2), []), - arr((1, 2), (1, 3), []), - arr((2, 2), (2, 3), []), - arr((3, 2), (3, 3), []), - arr((3, 0), (4, 0), [$eta oo square$], "dashed"), - arr((3, 1), (4, 1), [$eta oo square$], "dashed"), - arr((3, 2), (4, 2), [$eta oo square$], "dashed"), - arr((4, 0), (4, 1), [$-square oo d^((P))_1$]), - arr((4, 1), (4, 2), [$-square oo d^((P))_2$]), - arr((4, 2), (4, 3), []), -)) - Let $C$ be the double complex obtained by adding $hom(P, B)$ to the row $q = -1$ of the double complex $hom(P, Q)$. Since each $P_p$ is projective, $hom (P_p, -)$ is exact and so each column of $C$ is exact. $C$ can be turned into a (canonically ordered) upper half-plane complex (by reflecting it to the "second quadrant"), so @aal applies and $Tot^Pi (C)$ is acyclic. Again, observe that $Tot^Pi (C) iso cone(f)$ where + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((3, 0), [$hom(P_0, Q_0)$]), + node((3, 1), [$hom(P_1, Q_0)$]), + node((3, 2), [$hom(P_2, Q_0)$]), + node((2, 0), [$hom(P_0, Q_1)$]), + node((2, 1), [$hom(P_1, Q_1)$]), + node((2, 2), [$hom(P_2, Q_1)$]), + node((1, 0), [$hom(P_0, Q_2)$]), + node((1, 1), [$hom(P_1, Q_2)$]), + node((1, 2), [$hom(P_2, Q_2)$]), + node((0, 0), [$...$]), + node((0, 1), [$...$]), + node((0, 2), [$...$]), + node((1, 3), [$...$]), + node((2, 3), [$...$]), + node((3, 3), [$...$]), + node((4, 0), [$hom (P_0, B)$]), + node((4, 1), [$hom (P_1, B)$]), + node((4, 2), [$hom (P_2, B)$]), + node((4, 3), []), + arr((3, 0), (3, 1), [$square oo d^((P))_1$]), + arr((3, 1), (3, 2), [$square oo d^((P))_2$]), + arr((2, 0), (2, 1), [$-square oo d^((P))_1$]), + arr((2, 1), (2, 2), [$-square oo d^((P))_2$], label-pos: left), + arr((1, 0), (1, 1), [$square oo d^((P))_1$]), + arr((1, 1), (1, 2), [$square oo d^((P))_2$]), + arr((1, 0), (2, 0), [$d^((Q))_2 oo square$]), + arr((2, 0), (3, 0), [$d^((Q))_1 oo square$]), + arr((1, 1), (2, 1), [$d^((Q))_2 oo square$]), + arr((2, 1), (3, 1), [$d^((Q))_1 oo square$]), + arr((1, 2), (2, 2), [$d^((Q))_2 oo square$]), + arr((2, 2), (3, 2), [$d^((Q))_1 oo square$]), + arr((0, 0), (1, 0), []), + arr((0, 1), (1, 1), []), + arr((0, 2), (1, 2), []), + arr((1, 2), (1, 3), []), + arr((2, 2), (2, 3), []), + arr((3, 2), (3, 3), []), + arr((3, 0), (4, 0), [$eta oo square$], "dashed"), + arr((3, 1), (4, 1), [$eta oo square$], "dashed"), + arr((3, 2), (4, 2), [$eta oo square$], "dashed"), + arr((4, 0), (4, 1), [$-square oo d^((P))_1$]), + arr((4, 1), (4, 2), [$-square oo d^((P))_2$]), + arr((4, 2), (4, 3), []), + ), + ) + Let $C$ be the double complex obtained by adding $hom(P, B)$ to the row $q = -1$ of the double complex $hom(P, Q)$. Since each $P_p$ is projective, $hom (P_p, -)$ is exact and so each column of $C$ is exact. $C$ can be turned into a (canonically ordered) upper half-plane complex (by reflecting it to the "second quadrant"), so @aal applies and $Tot^Pi (C)$ is acyclic. Again, observe that $Tot^Pi (C) iso cone(f)$ where $ f: Tot^Pi (hom (P,Q)) -> hom (P, B) $ - is the cochain map induced by $eta: Q_cx -> B$. Hence $f$ is a quasi-isomorphism, but $H^ast hom (P, B) iso Ext^ast_R (A, B)$ by the proof of @balance-ext, so the result follows. + is the cochain map induced by $eta: Q_cx -> B$. Hence $f$ is a quasi-isomorphism, but $H^ast hom (P, B) iso Ext^ast_R (A, B)$ by the proof of @balance-ext, so the result follows. ] -// Applying cohomology to this total cochain complex yields $Ext^ast _R (M, N)$. +// Applying cohomology to this total cochain complex yields $Ext^ast _R (M, N)$. // #TODO modify in balancing Tor how you write the differentials e.g. it should be $d^((P))$ \ No newline at end of file diff --git a/ha/8-ext.typ b/ha/8-ext.typ index b75e0b6..d612761 100644 --- a/ha/8-ext.typ +++ b/ha/8-ext.typ @@ -3,13 +3,13 @@ = Ring Structure on $Ext$ - == Reinterpreting $Ext$ -Let $A, B in RMod$ with projective resolutions $P_cx -> A$ and $Q_cx -> B$. Write the total cochain complex $ Tot^Pi (hom (P, Q)) =: T$. Then @balance-ext-2 implies that +== Reinterpreting $Ext$ +Let $A, B in RMod$ with projective resolutions $P_cx -> A$ and $Q_cx -> B$. Write the total cochain complex $ Tot^Pi (hom (P, Q)) =: T$. Then @balance-ext-2 implies that $ - Ext^n _R (A, B) iso H^n (T). + Ext^n_R (A, B) iso H^n (T). $ Recall that $T^n = product homr (P_i, Q_(i-n)) in Ab$. -If $phi in T^n$, then we can write $phi = product phi_i$ where $phi_i : P_i -> Q_(i - n)$. Therefore, an element $phi$ in $T^n$ can be seen as a chain map $P_cx -> Q_cx [-n]$ once we can show that $phi$ commutes with the differentials of $P_cx$ and $Q_cx [-n]$. We will show that this commuting condition is (almost) equivalent to $phi$ being a cocycle in $T^n$. Further, if $phi$ is a chain map $P_cx -> Q_cx [-n]$, then $phi$ being null homotopic is (almost) equivalent to $phi$ being a coboundary in $T^n$. These equivalences ultimately give rise to a new interpretation of $Ext$. +If $phi in T^n$, then we can write $phi = product phi_i$ where $phi_i : P_i -> Q_(i - n)$. Therefore, an element $phi$ in $T^n$ can be seen as a chain map $P_cx -> Q_cx [-n]$ once we can show that $phi$ commutes with the differentials of $P_cx$ and $Q_cx [-n]$. We will show that this commuting condition is (almost) equivalent to $phi$ being a cocycle in $T^n$. Further, if $phi$ is a chain map $P_cx -> Q_cx [-n]$, then $phi$ being null homotopic is (almost) equivalent to $phi$ being a coboundary in $T^n$. These equivalences ultimately give rise to a new interpretation of $Ext$. The word "almost" in the last paragraph is due to some sign issues of $phi$. To address this, we define $ @@ -29,7 +29,7 @@ It turns out that we need to replace some $phi$ with $tilde(phi)$ in our previou // i.e., $T^n iso tilde(T^n)$, where an arbitrary element of $tilde(T^n)$ is $tilde(phi) = product tilde(phi)_i = product epsilon_(n-i) phi_i$. #proposition[ - // The map $phi |-> tilde(phi)$ restricts to an isomorphism + // The map $phi |-> tilde(phi)$ restricts to an isomorphism // $ // Z^n (T) iso hom_(Ch(RMod)) (P_cx, Q_cx [-n]) // $ @@ -38,51 +38,66 @@ It turns out that we need to replace some $phi$ with $tilde(phi)$ in our previou ] #proof[ As discussed above, the latter is equivalent to $tilde(phi)$ commuting with the differentials, i.e., for all $i$, - #math.equation(block: true, numbering: "(1)", supplement: "Equation", - $ - tilde(phi)_i oo d_(i+1)^((P)) = d_(i+1-n)^((Q)) oo tilde(phi)_(i+1). - $) - Using the definition of $tilde(phi)$, @phi-commute can reduced to - #math.equation(block: true, numbering: "(1)", supplement: "Equation", - $ - phi_i oo d_(i+1)^((P)) = (-1)^(i+1-n) d_(i+1-n)^((Q)) oo phi_(i+1). - $) - + #math.equation( + block: true, + numbering: "(1)", + supplement: "Equation", + $ + tilde(phi)_i oo d_(i+1)^((P)) = d_(i+1-n)^((Q)) oo tilde(phi)_(i+1). + $, + ) + Using the definition of $tilde(phi)$, @phi-commute can reduced to + #math.equation( + block: true, + numbering: "(1)", + supplement: "Equation", + $ + phi_i oo d_(i+1)^((P)) = (-1)^(i+1-n) d_(i+1-n)^((Q)) oo phi_(i+1). + $, + ) + On the other hand, $phi in T^n$ is a cocycle, i.e., $d^((T))_n (phi) = 0$, if and only if for all $i$, - #math.equation(block: true, numbering: "(1)", supplement: "Equation", - $ - d^h (phi_i) + d^v (phi_(i+1)) = 0. - $) + #math.equation( + block: true, + numbering: "(1)", + supplement: "Equation", + $ + d^h (phi_i) + d^v (phi_(i+1)) = 0. + $, + ) Using the definition of $d^h$ and $d^v$, we see that @phi-commute-3 is equivalent to @phi-commute-2. ] #proposition[ - $phi in Z^n (T)$ is a coboundary in $B^n (T)$ if and only if the chain map $tilde(phi) : P_cx -> Q_cx [-n]$ is null homotopic. + $phi in Z^n (T)$ is a coboundary in $B^n (T)$ if and only if the chain map $tilde(phi) : P_cx -> Q_cx [-n]$ is null homotopic. ] #proof[ "$=>$". Suppose $phi$ is a coboundary. Then $phi = d (psi)$ for some $psi = product psi_i in T^(n-1)$, where $psi_i : P_i -> Q_(i - n +1)$. We also write $tilde(psi_i) = epsilon_(i -n +1) psi_i$. // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQALCAWwH0AKAAq8spAAQBFAVgC0YANTEAlEpABfUuky58hFGWLU6TVuy7cxQkeKn9ZYFes0gM2PASLlShmgxZtETh4rOxllG2k5RzUjGCgAc3giUAAzACceJAAmGhwIJDJjf3Z+MKUAPVCHMTgAR2Z6NJgxCAgxKBFKoWjndMzELxA8gt8TAJAOqsUK-n4JFRa2uoam9Uo1IA -#align(center, commutative-diagram( - node-padding: (90pt, 50pt), - node((0, 1), [$hom (P_i, Q_(i-n+1))$]), - node((1, 1), [$hom (P_i, Q_(i-n))$]), - node((1, 0), [$hom(P_(i-1), Q_(i-n))$]), - arr((1, 0), (1, 1), [$(-1)^(i-n) square oo d_i^((P))$]), - arr((0, 1), (1, 1), [$d_(i-n+1)^((Q)) oo square$]), -)) + #align( + center, + commutative-diagram( + node-padding: (90pt, 50pt), + node((0, 1), [$hom (P_i, Q_(i-n+1))$]), + node((1, 1), [$hom (P_i, Q_(i-n))$]), + node((1, 0), [$hom(P_(i-1), Q_(i-n))$]), + arr((1, 0), (1, 1), [$(-1)^(i-n) square oo d_i^((P))$]), + arr((0, 1), (1, 1), [$d_(i-n+1)^((Q)) oo square$]), + ), + ) Considering each $phi_i$, we see that $ phi_i = d^h (psi_(i-1)) + d^v (psi_i) = (-1)^(i-n) psi_(i-1) oo d_i^((P)) + d_(i-n+1)^((Q)) oo psi_i. $ - Using @epsilon-lemma, we can reduce this to + Using @epsilon-lemma, we can reduce this to $ tilde(phi)_i = (-1)^(i-n) tilde(psi)_(i-1) oo d_i^((P)) + (-1)^(i-n+1) d_(i-n+1)^((Q)) oo tilde(psi)_i. $ Then we see that $(-1)^(i-n+1) tilde(psi)_i : P_i -> Q_(i - n +1)$ is a chain homotopy between $tilde(phi)$ and $0$. - "$arrow.l.double$". Suppose that $h_i : P_i -> Q_(i - n +1)$ is a chain homotopy between $tilde(phi)$ and $0$ for each $i$, so that + "$arrow.l.double$". Suppose that $h_i : P_i -> Q_(i - n +1)$ is a chain homotopy between $tilde(phi)$ and $0$ for each $i$, so that $ - tilde(phi)_i = h_(i-1) oo d_i^((P)) + d_(i-n+1)^((Q)) oo h_i. + tilde(phi)_i = h_(i-1) oo d_i^((P)) + d_(i-n+1)^((Q)) oo h_i. $ Then we can define for each $i$, $ tilde(psi)_i &= (-1)^(i-n+1) h_i, quad psi_i &= epsilon_(i-n+1) tilde(psi)_i, $ which gives $psi &= product psi_i in T^(n-1)$. Again with @epsilon-lemma, we can reveal that $d(psi) = phi$, so $phi$ is a coboundary. ] @@ -93,30 +108,30 @@ It turns out that we need to replace some $phi$ with $tilde(phi)$ in our previou #proof[ $Ext_R^n (A, B) iso H^n (T) = Z^n (T) over B^n (T)$, but now $Z^n (T)$ is isomorphic to the group of chain maps $P_cx -> Q_cx [-n]$ and $B^n (T)$ is isomorphic to the subgroup of null homotopic chain maps. ] -// A detailed proof can be seen @notes[Section 9.1]. -// To see this intuitively, notice a chain map $P_cx -> Q_cx [-n]$ is a collection of +// A detailed proof can be seen @notes[Section 9.1]. +// To see this intuitively, notice a chain map $P_cx -> Q_cx [-n]$ is a collection of // $hom (P_p, Q_(p - n)) -// $ for all suitable index $p$, subject to commuting with the differentials. +// $ for all suitable index $p$, subject to commuting with the differentials. // Hence, it is an element of $[Tot^Pi (hom_R (P_cx, Q_cx))]^n =: T^n$. -// One can show that the commuting condition for a chain map is equivalent to being a cycle in $T^n$. +// One can show that the commuting condition for a chain map is equivalent to being a cycle in $T^n$. // Further, the chain map is null homotopic if and only if it is a boundary in $T^n$. - == Yoneda Product +== Yoneda Product #proposition[ -Given left $R$-modules $A, B, C$, for any $i, j$, there is a well-defined map, called the *Yoneda product*, -$ ⌣ : Ext_R^i (A, B) times Ext_R^j (B, C) -> Ext^(i+j)_R (A, C), $ -which is associative and biadditive. + Given left $R$-modules $A, B, C$, for any $i, j$, there is a well-defined map, called the *Yoneda product*, + $ ⌣ : Ext_R^i (A, B) times Ext_R^j (B, C) -> Ext^(i+j)_R (A, C), $ + which is associative and biadditive. ] #proof[ Write projective resolutions $P_cx -> A$, $ Q_cx -> B$, $ T_cx-> C$. - Take $x in Ext^i_R\(A, B)$ and $y in Ext^j_R\(B, C)$. + Take $x in Ext^i_R\(A, B)$ and $y in Ext^j_R\(B, C)$. By @ext-homotopy, - we see that $x$ (resp. $y$) corresponds to some $[phi]$ (resp. $[psi]$) which is a chain homotopy class (of chain maps) $P_cx -> Q_cx [-i]$ (resp. $Q_cx -> T_cx [-j]$). - Note that $ hom(Q_cx, T_cx [-j]) iso hom(Q_cx [-i], T_cx [-i - j]) $ because the translation functor is an isomorphism on $Ch(RMod)$ and preserves chain homotopy. - Hence $[psi]$ can be also viewed as a chain homotopy class $Q_cx [-i] -> T_cx [-i - j]$. Since chain homotopy commutes with composition, we can obtain $[psi oo phi] = [psi] oo [phi]$, which is a chain homotopy class $P_cx -> T_cx [-i-j]$. Then we define $x ⌣ y in Ext^(i+j)_R (A, C)$ to be the corresponding element of $[psi oo phi]$. + we see that $x$ (resp. $y$) corresponds to some $[phi]$ (resp. $[psi]$) which is a chain homotopy class (of chain maps) $P_cx -> Q_cx [-i]$ (resp. $Q_cx -> T_cx [-j]$). + Note that $ hom(Q_cx, T_cx [-j]) iso hom(Q_cx [-i], T_cx [-i - j]) $ because the translation functor is an isomorphism on $Ch(RMod)$ and preserves chain homotopy. + Hence $[psi]$ can be also viewed as a chain homotopy class $Q_cx [-i] -> T_cx [-i - j]$. Since chain homotopy commutes with composition, we can obtain $[psi oo phi] = [psi] oo [phi]$, which is a chain homotopy class $P_cx -> T_cx [-i-j]$. Then we define $x ⌣ y in Ext^(i+j)_R (A, C)$ to be the corresponding element of $[psi oo phi]$. We can see that $⌣$ is associative and biadditive because the composition of chain maps is associative and biadditive. ] @@ -125,86 +140,94 @@ which is associative and biadditive. // ] #corollary[For any $A, B in RMod$, -$ Ext_R^ast (A, A) = plus.circle.big_i Ext_R^i (A, A) $ is a graded ring, and $ Ext_R^ast (A , B) = plus.circle.big_i Ext^i (A, B) $ is a graded module over $Ext_R^ast (A, A)$. + $ + Ext_R^ast (A, A) = plus.circle.big_i Ext_R^i (A, A) + $ is a graded ring, and $ Ext_R^ast (A , B) = plus.circle.big_i Ext^i (A, B) $ is a graded module over $Ext_R^ast (A, A)$. ] #example[ - Let $k$ be a field and $R = k[x] over (x^2)$. View $k$ as the $R$-module $R over x R$. We now calculate the graded ring structure of $Ext_R^ast (k, k)$. + Let $k$ be a field and $R = k[x] over (x^2)$. View $k$ as the $R$-module $R over x R$. We now calculate the graded ring structure of $Ext_R^ast (k, k)$. - First, observe that we have a projective resolution of $k$: + First, observe that we have a projective resolution of $k$: $ ... ->^x R ->^x R ->^x R -> k -> 0, $ - which we denote as $P_cx -> k -> 0$. If we apply $hom_R (-, k)$ to $P_cx$, then $hom_R (R, k) iso k$ and all differentials vanish, so we can quickly use the balancing of $Ext$ to reveal that $Ext_R^n (k, k) iso k$ for all $n >= 0$. We however need to find the generator explicitly for the ring structure. - + which we denote as $P_cx -> k -> 0$. If we apply $hom_R (-, k)$ to $P_cx$, then $hom_R (R, k) iso k$ and all differentials vanish, so we can quickly use the balancing of $Ext$ to reveal that $Ext_R^n (k, k) iso k$ for all $n >= 0$. We however need to find the generator explicitly for the ring structure. + Now by @ext-homotopy, $Ext_R^n (k, k)$ is isomorphic to the chain homotopy classes of chain maps $P_cx -> P_cx [-n]$. A chain map $P_cx -> P_cx [-n]$ is a collection of $R$-homomorphisms $f_i : R-> R$ for $i >= n$ such that the following diagram commutes: // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQAlEAX1PU1z5CKAEwVqdJq3Zde-bHgJEAzOJoMWbRJx58QGBUKIAWNZM0zd8wUpQBWMxunaAdG6v6Bi4cnKOpWiBuLh4GNj6qxBJOgbJ6Yd5EYlHqAZZynoa2JKQp5s46GQlGKKZ5MezkoV4lvrnRaa7u3BIwUADm8ESgAGYAThAAtkhiIDgQSABsqRbaPQD6hBn9Q0hkYxOIAOwzBQsAFGAA1MQAlB4rw4h+G0gAHLuBB8ci58sDVzfja4-sAB4XD4-W6IUYVbQA96rUE0b6IVT5QKQvSXJAIuHGKFXaYggCcWKQOxBOPBIGRvSBiAeIKJpPJIFRiAcIJudMB0OIX021LZLW4QA -#align(center, commutative-diagram( - node-padding: (50pt, 30pt), - node((0, 1), [$R$]), - node((0, 2), [$R$]), - node((0, 3), [$R$]), - node((0, 4), [$R$]), - node((0, 5), [$...$]), - node((0, 0), [$...$]), - node((1, 3), [$R$]), - node((1, 2), [$R$]), - node((1, 1), [$R$]), - node((1, 4), [$0$]), - node((1, 0), [$...$]), - arr((0, 3), (1, 3), [$f_n$]), - arr((0, 2), (1, 2), [$f_(n+1)$]), - arr((0, 1), (1, 1), [$f_(n+2)$]), - arr((0, 1), (0, 2), [$x$]), - arr((0, 2), (0, 3), [$x$]), - arr((0, 3), (0, 4), [$x$]), - arr((0, 4), (0, 5), []), - arr((1, 3), (1, 4), []), - arr((1, 2), (1, 3), [$x$]), - arr((1, 1), (1, 2), [$x$]), - arr((0, 0), (0, 1), [$x$]), - arr((1, 0), (1, 1), [$x$]), -)) -Note that each $f_i$ is uniquely determined by $f_i (1) in R$. We write $f_i (1) = a_i + b_i x$ for $a_i, b_i in k$ and then we only need to look at $a_i, b_i$ for each $i$. The commutativity of the above diagram indicates that $x (a_i + b_i x) = x (a_(i+1) + b_(i+1) x)$ for each $i$, i.e. $a_i = a_(i+1)$, so all the $a_i$'s are equal. - -We now consider when the chain map $f_ast$ is null homotopic. By definition, that is when there is a collection of $R$-homomorphisms $h_i : R -> R$ for $i >= n-1$ such that $f_i = h_(i-1) oo x + x oo h_i$. -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQAlEAX1PU1z5CKAEwVqdJq3Zde-bHgJEAzOJoMWbRJx58QGBUKIAWNZM0zd8wUpQBWMxunaAdG6v6Bi4cnKOpWiBuLh4GNj6qxBJOgbJ6Yd5EYlHqAZZynoa2JKQp5s46GQlGKKZ5MezkoV4lvrnRaa7u3BIwUADm8ESgAGYAThAAtkhiIDgQSABsqRbaPQD6hBn9Q0hkYxOIAOwzBQsAFGAA1MQAlB4rw4h+G0gAHLuBB8ci58sDVzfja4-sAB4XD4-W6IUYVbQA96rUE0b6IVT5QKQvSXJAIuHGKFXaYggCcWKQOxBOPBIGRvSBiAeIKJpPJIFRiAcIJudMB0OIX021LZBMQ6zh1MYWDAgSg9DgAAs2iBftpJfNDic3ijKaM4UThaL2OKpTK5SAFYcVRToejNjitWKJdKoLLEewjWAALRnHiUbhAA -#align(center, commutative-diagram( - node-padding: (60pt, 50pt), - node((0, 1), [$R$]), - node((0, 2), [$R$]), - node((0, 3), [$R$]), - node((0, 4), [$R$]), - node((0, 5), [$...$]), - node((0, 0), [$...$]), - node((1, 3), [$R$]), - node((1, 2), [$R$]), - node((1, 1), [$R$]), - node((1, 4), [$0$]), - node((1, 0), [$...$]), - arr((0, 3), (1, 3), [$f_n$]), - arr((0, 2), (1, 2), [$f_(n+1)$]), - arr((0, 1), (1, 1), [$f_(n+2)$]), - arr((0, 1), (0, 2), [$x$]), - arr((0, 2), (0, 3), [$x$]), - arr((0, 3), (0, 4), [$x$]), - arr((0, 4), (0, 5), []), - arr((1, 3), (1, 4), []), - arr((1, 2), (1, 3), [$x$]), - arr((1, 1), (1, 2), [$x$]), - arr((0, 0), (0, 1), [$x$]), - arr((1, 0), (1, 1), [$x$]), - arr((0, 2), (1, 1), [$h_(n+1)$], "dashed"), - arr((0, 3), (1, 2), [$h_(n)$], "dashed"), - arr((0, 4), (1, 3), [$h_(n-1)$], "dashed"), -)) - In particular, this indicates that $a_i + b_i x = f_i (1) = h_(i-1) (x) + x h_i (1) = x (h_(i-1) (1) + h_(i) (1))$, and thus $a_i = 0$ for all $i$. - -We claim that $a_i = 0$ for all $i$ is a sufficient condition for $f_ast$ to be null homotopic. In this case, $f_i (1) = b_i x$ for each $i >= n$. We construct $h_i: R -> R$ for $i >= n-1$ as follows: $h_(n-1) = 0$ and $h_i (1) = b_i - h_(i-1) (1)$ for all $i >= n$. Then $f_ast$ is null homotopic via $h$. - -Therefore $f_ast$ is null homotopic if and only if $f_i (1) equiv 0 space (mod x)$ for all $i$. So "chain maps modulo homotopy" is the same as "chain maps modulo $x$". In other words, two chain maps $f_ast, g_ast: P_cx -> P_cx [-n]$ are chain homotopic if and only if $f_i (1) equiv g_i (1) space (mod x)$ for all $i$. But we have established that $f_i (1)$'s are all equal modulo $x$. So $Ext_R^ n (k, k) iso k dot f_ast^((n))$, where $f_ast^((n))$ is the chain map $P_cx -> P_cx [-n]$ with $f_i ^((n)) (1) = 1$ for all $i >= n$. - -It is clear that $f_ast ^((m)) oo f_ast ^((n)) = f_ast ^((m+n))$, so the Yoneda product gives $f_ast ^((m)) ⌣ f_ast ^((n)) = f_ast ^((m+n))$. Set $y = f_ast^((1))$, then for each $n$, $f_ast^((n)) = y^n$ (using Yoneda product) and thus $Ext^n_R (k, k) iso k dot y^n$. So as a graded ring, $Ext_R^ast (k, k) iso k[y]$ where $y$ has degree $1$. + #align( + center, + commutative-diagram( + node-padding: (50pt, 30pt), + node((0, 1), [$R$]), + node((0, 2), [$R$]), + node((0, 3), [$R$]), + node((0, 4), [$R$]), + node((0, 5), [$...$]), + node((0, 0), [$...$]), + node((1, 3), [$R$]), + node((1, 2), [$R$]), + node((1, 1), [$R$]), + node((1, 4), [$0$]), + node((1, 0), [$...$]), + arr((0, 3), (1, 3), [$f_n$]), + arr((0, 2), (1, 2), [$f_(n+1)$]), + arr((0, 1), (1, 1), [$f_(n+2)$]), + arr((0, 1), (0, 2), [$x$]), + arr((0, 2), (0, 3), [$x$]), + arr((0, 3), (0, 4), [$x$]), + arr((0, 4), (0, 5), []), + arr((1, 3), (1, 4), []), + arr((1, 2), (1, 3), [$x$]), + arr((1, 1), (1, 2), [$x$]), + arr((0, 0), (0, 1), [$x$]), + arr((1, 0), (1, 1), [$x$]), + ), + ) + Note that each $f_i$ is uniquely determined by $f_i (1) in R$. We write $f_i (1) = a_i + b_i x$ for $a_i, b_i in k$ and then we only need to look at $a_i, b_i$ for each $i$. The commutativity of the above diagram indicates that $x (a_i + b_i x) = x (a_(i+1) + b_(i+1) x)$ for each $i$, i.e. $a_i = a_(i+1)$, so all the $a_i$'s are equal. + + We now consider when the chain map $f_ast$ is null homotopic. By definition, that is when there is a collection of $R$-homomorphisms $h_i : R -> R$ for $i >= n-1$ such that $f_i = h_(i-1) oo x + x oo h_i$. + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQAlEAX1PU1z5CKAEwVqdJq3Zde-bHgJEAzOJoMWbRJx58QGBUKIAWNZM0zd8wUpQBWMxunaAdG6v6Bi4cnKOpWiBuLh4GNj6qxBJOgbJ6Yd5EYlHqAZZynoa2JKQp5s46GQlGKKZ5MezkoV4lvrnRaa7u3BIwUADm8ESgAGYAThAAtkhiIDgQSABsqRbaPQD6hBn9Q0hkYxOIAOwzBQsAFGAA1MQAlB4rw4h+G0gAHLuBB8ci58sDVzfja4-sAB4XD4-W6IUYVbQA96rUE0b6IVT5QKQvSXJAIuHGKFXaYggCcWKQOxBOPBIGRvSBiAeIKJpPJIFRiAcIJudMB0OIX021LZBMQ6zh1MYWDAgSg9DgAAs2iBftpJfNDic3ijKaM4UThaL2OKpTK5SAFYcVRToejNjitWKJdKoLLEewjWAALRnHiUbhAA + #align( + center, + commutative-diagram( + node-padding: (60pt, 50pt), + node((0, 1), [$R$]), + node((0, 2), [$R$]), + node((0, 3), [$R$]), + node((0, 4), [$R$]), + node((0, 5), [$...$]), + node((0, 0), [$...$]), + node((1, 3), [$R$]), + node((1, 2), [$R$]), + node((1, 1), [$R$]), + node((1, 4), [$0$]), + node((1, 0), [$...$]), + arr((0, 3), (1, 3), [$f_n$]), + arr((0, 2), (1, 2), [$f_(n+1)$]), + arr((0, 1), (1, 1), [$f_(n+2)$]), + arr((0, 1), (0, 2), [$x$]), + arr((0, 2), (0, 3), [$x$]), + arr((0, 3), (0, 4), [$x$]), + arr((0, 4), (0, 5), []), + arr((1, 3), (1, 4), []), + arr((1, 2), (1, 3), [$x$]), + arr((1, 1), (1, 2), [$x$]), + arr((0, 0), (0, 1), [$x$]), + arr((1, 0), (1, 1), [$x$]), + arr((0, 2), (1, 1), [$h_(n+1)$], "dashed"), + arr((0, 3), (1, 2), [$h_(n)$], "dashed"), + arr((0, 4), (1, 3), [$h_(n-1)$], "dashed"), + ), + ) + In particular, this indicates that $a_i + b_i x = f_i (1) = h_(i-1) (x) + x h_i (1) = x (h_(i-1) (1) + h_(i) (1))$, and thus $a_i = 0$ for all $i$. + + We claim that $a_i = 0$ for all $i$ is a sufficient condition for $f_ast$ to be null homotopic. In this case, $f_i (1) = b_i x$ for each $i >= n$. We construct $h_i: R -> R$ for $i >= n-1$ as follows: $h_(n-1) = 0$ and $h_i (1) = b_i - h_(i-1) (1)$ for all $i >= n$. Then $f_ast$ is null homotopic via $h$. + + Therefore $f_ast$ is null homotopic if and only if $f_i (1) equiv 0 space (mod x)$ for all $i$. So "chain maps modulo homotopy" is the same as "chain maps modulo $x$". In other words, two chain maps $f_ast, g_ast: P_cx -> P_cx [-n]$ are chain homotopic if and only if $f_i (1) equiv g_i (1) space (mod x)$ for all $i$. But we have established that $f_i (1)$'s are all equal modulo $x$. So $Ext_R^ n (k, k) iso k dot f_ast^((n))$, where $f_ast^((n))$ is the chain map $P_cx -> P_cx [-n]$ with $f_i ^((n)) (1) = 1$ for all $i >= n$. + + It is clear that $f_ast ^((m)) oo f_ast ^((n)) = f_ast ^((m+n))$, so the Yoneda product gives $f_ast ^((m)) ⌣ f_ast ^((n)) = f_ast ^((m+n))$. Set $y = f_ast^((1))$, then for each $n$, $f_ast^((n)) = y^n$ (using Yoneda product) and thus $Ext^n_R (k, k) iso k dot y^n$. So as a graded ring, $Ext_R^ast (k, k) iso k[y]$ where $y$ has degree $1$. ] diff --git a/ha/9-tor.typ b/ha/9-tor.typ index 35c4b42..1dceb7d 100644 --- a/ha/9-tor.typ +++ b/ha/9-tor.typ @@ -6,7 +6,7 @@ == Flat Modules #definition[ - A #lrm $B$ is *flat* if $ (- tpr B)$ is exact. A #rrm $A$ is *flat* if $ (A tpr -)$ is exact. + A #lrm $B$ is *flat* if $ (- tpr B)$ is exact. A #rrm $A$ is *flat* if $ (A tpr -)$ is exact. ] // #remark[ @@ -19,7 +19,7 @@ // Free modules are flat. // ] // #proof[ -// Take free module $plus.circle.big _I R$ and any module $M$, then +// Take free module $plus.circle.big _I R$ and any module $M$, then // $ // M tpr plus.circle.big _I R iso plus.circle.big_I M tpr R iso plus.circle.big_I M // $ @@ -34,70 +34,76 @@ // ] // #remark[ -// We already used that projective modules are flat. First we have free modules are flat. Second, if $P xor Q$ is free (i.e. $P$ is projective) then $- tpr P$ is exact. +// We already used that projective modules are flat. First we have free modules are flat. Second, if $P xor Q$ is free (i.e. $P$ is projective) then $- tpr P$ is exact. // ] #proposition[ - Let $B$ a #lrm. - The following are equivalent: + Let $B$ a #lrm. + The following are equivalent: + $B$ is flat; - + $Tor_n^R (A, B) = 0$ for all $n > 0$ and all $A$; + + $Tor_n^R (A, B) = 0$ for all $n > 0$ and all $A$; + $Tor_1^R (A, B) = 0$ for all $A$. Similarly, let $A$ be a #rrm. The following are equivalent: - + $A$ is flat; + + $A$ is flat; + $Tor_n^R (A, B) = 0$ for all $n > 0$ and all $B$; + $Tor_1^R (A, B) = 0$ for all $B$. ] - -#proof[@notes[Lemma 6.26]. We prove the #lrm case. + +#proof[@notes[Lemma 6.26]. We prove the #lrm case. -(1) $=>$ (2). Suppose that $B$ is flat. Let $F_cx arrow.r A$ be a free -resolution of $A$. Since $(minus times.circle_R B)$ is exact, the sequence -$ dots.h arrow.r F_2 times.circle_R B arrow.r F_1 times.circle_R B arrow.r F_0 times.circle_R B arrow.r A times.circle_R B arrow.r 0 $ -is exact, so the homology of -$ dots.h arrow.r F_2 times.circle_R B arrow.r F_1 times.circle_R B arrow.r F_0 times.circle_R B arrow.r 0 $ -vanishes in positive degree. + (1) $=>$ (2). Suppose that $B$ is flat. Let $F_cx arrow.r A$ be a free + resolution of $A$. Since $(minus times.circle_R B)$ is exact, the sequence + $ + dots.h arrow.r F_2 times.circle_R B arrow.r F_1 times.circle_R B arrow.r F_0 times.circle_R B arrow.r A times.circle_R B arrow.r 0 + $ + is exact, so the homology of + $ + dots.h arrow.r F_2 times.circle_R B arrow.r F_1 times.circle_R B arrow.r F_0 times.circle_R B arrow.r 0 + $ + vanishes in positive degree. -(2) $arrow.r.double$ (3). Trivial. + (2) $arrow.r.double$ (3). Trivial. -(3) $arrow.r.double$ (1). For any short exact sequence -$0 arrow.r X arrow.r Y arrow.r A arrow.r 0$ in $ModR$, we have the long -exact sequence of $Tor$ by @tor-les, -$ 0 eq "Tor"_1^R lr((A comma B)) arrow.r X times.circle_R B arrow.r Y times.circle_R B arrow.r A times.circle_R B arrow.r 0, $ -which shows that $(- tpr B)$ is exact. + (3) $arrow.r.double$ (1). For any short exact sequence + $0 arrow.r X arrow.r Y arrow.r A arrow.r 0$ in $ModR$, we have the long + exact sequence of $Tor$ by @tor-les, + $ + 0 eq "Tor"_1^R lr((A comma B)) arrow.r X times.circle_R B arrow.r Y times.circle_R B arrow.r A times.circle_R B arrow.r 0, + $ + which shows that $(- tpr B)$ is exact. -Note that #rrm case relies on the balancing of $Tor$, but the proof is very similar. + Note that #rrm case relies on the balancing of $Tor$, but the proof is very similar. ] #corollary[Every projective module is flat. In particular, every free module is flat. #footnote[We have already proven this claim in @projective-flat-1, because we needed it for the balancing of $Tor$ (@balance-tor). This second proof actually relies on the balancing of $Tor$ so we could not use it previously, but it is presented here regardless.]] #proof[ -If a left $R$-module $P$ is projective, by @balance-tor and @projective-left-zero, $"Tor"_n^R lr((A comma P)) iso L_n (A tpr -) (P) eq 0$ for all $A$ and all -$n gt.eq 1$. Then applying @flat-tor gives the result. The case where $P$ is a projective #rrm is similar. + If a left $R$-module $P$ is projective, by @balance-tor and @projective-left-zero, $"Tor"_n^R lr((A comma P)) iso L_n (A tpr -) (P) eq 0$ for all $A$ and all + $n gt.eq 1$. Then applying @flat-tor gives the result. The case where $P$ is a projective #rrm is similar. ] // Another way to prove the corollary is found @rotman[Propositin 3.46]. - // Recall that since the tensor product is left adjoint, it commutes with all colimits. Thus $ (colim_I A_i) tpr B iso colim_I (A_i tpr B) $ +// Recall that since the tensor product is left adjoint, it commutes with all colimits. Thus $ (colim_I A_i) tpr B iso colim_I (A_i tpr B) $ #definition[ - A category $I$ is called *filtered* if + A category $I$ is called *filtered* if + $I$ is non-empty; - + For any $i, j in I$, there exists $k in I$ with morphisms $f : i -> k$ and $g : j -> k$; + + For any $i, j in I$, there exists $k in I$ with morphisms $f : i -> k$ and $g : j -> k$; + For any $i, j in I$ with a pair of morphisms $u, v : i -> j$, there exists $k in I$ with morphism $w : j -> k$ such that $w oo u = w oo v$. ] #example[ - A non-empty partially ordered set (poset) $I$, viewed as a small category, is *filtered* if for any $i, j in I$, there exists $k$ such that $i <= k$ and $j <= k$. This is because condition (3) above is automatically satisifed, as there is at most one morphism $i -> j$ for any $i, j in I$. + A non-empty partially ordered set (poset) $I$, viewed as a small category, is *filtered* if for any $i, j in I$, there exists $k$ such that $i <= k$ and $j <= k$. This is because condition (3) above is automatically satisifed, as there is at most one morphism $i -> j$ for any $i, j in I$. ] #proposition[ - // For any small category $I$ and any functor $I -> ModR$, we have - Let $I$ be a filtered category. Then the functor $ colim_I: Fun(I, RMod) -> RMod $ is exact. + // For any small category $I$ and any functor $I -> ModR$, we have + Let $I$ be a filtered category. Then the functor $ colim_I: Fun(I, RMod) -> RMod $ is exact. ] #proof[@weibel[Theorem 2.6.15, p.57].] @@ -107,17 +113,17 @@ $n gt.eq 1$. Then applying @flat-tor gives the result. The case where $P$ is a p ] #notation[ - Let $I$ be a small category and $A : I -> RMod$ be a diagram. We denote $A_i = A(i)$ for each $i in I$ and we would write $colim_I A_i$ to mean $colim_I A$. - ] + Let $I$ be a small category and $A : I -> RMod$ be a diagram. We denote $A_i = A(i)$ for each $i in I$ and we would write $colim_I A_i$ to mean $colim_I A$. +] #corollary[ Let $I$ be a filtered category and $A : I -> ModR$ be a diagram. Let $B in RMod$. Then $Tor_n^R (colim_I A_i, B) iso colim_I Tor_n^R (A_i, B)$. In other words, filtered colimits commute with $Tor$. ] #proof[ - Let $P_cx -> B$ be a projective resolution. Then + Let $P_cx -> B$ be a projective resolution. Then $ - Tor_n^R (colim_I A_i , B ) &= H_n ((colim_I A_i) tpr P) + Tor_n^R (colim_I A_i , B ) &= H_n ((colim_I A_i) tpr P) \ &iso H_n (colim_I (A_i tpr P)) \ &iso colim_I H_n (A_i tpr P) \ &= colim_I Tor_n^R (A_i, B), @@ -126,13 +132,13 @@ $n gt.eq 1$. Then applying @flat-tor gives the result. The case where $P$ is a p ] #corollary[ - Let $I$ be a filtered category and $A : I -> ModR$ be a diagram. Suppose $A_i$ is flat for all $i in I$. Then $colim_I A_i$ is also flat. - In other words, a filtered colimit of flat $R$-modules is flat. + Let $I$ be a filtered category and $A : I -> ModR$ be a diagram. Suppose $A_i$ is flat for all $i in I$. Then $colim_I A_i$ is also flat. + In other words, a filtered colimit of flat $R$-modules is flat. ] #proof[ Take any $B in RMod$. - Since each $A_i$ is flat, we know that $Tor_1 (A_i , B) = 0$ by @flat-tor. Then + Since each $A_i$ is flat, we know that $Tor_1 (A_i , B) = 0$ by @flat-tor. Then $ Tor_1 (colim_I A_i, B) = colim_I Tor_1 (A_i, B) = 0 $ @@ -140,19 +146,19 @@ $n gt.eq 1$. Then applying @flat-tor gives the result. The case where $P$ is a p ] // #proof[ -// In $RMod$, let $A = colim_I A_i$ where $I$ is a filtered poset and $A_i$ is flat for all $i in I$. We want to show $A$ is flat. If we have #sest $ ses(B_1, B_2, B_3) $ then for all $i in I$, +// In $RMod$, let $A = colim_I A_i$ where $I$ is a filtered poset and $A_i$ is flat for all $i in I$. We want to show $A$ is flat. If we have #sest $ ses(B_1, B_2, B_3) $ then for all $i in I$, // $ // ses(A_i tpr B_1, A_i tpr B_2, A_i tpr B_3) // $ -// Taking $colim_I$, which is exact as $I$ is a filtered poset by @colim-exact, yields +// Taking $colim_I$, which is exact as $I$ is a filtered poset by @colim-exact, yields // $ // ses(colim_I (A_i tpr B_1), colim_I (A_i tpr B_2), colim_I (A_i tpr B_3)) // $ -// By @tensor-right-exact, $colim_I$ commutes with tensor products, hence +// By @tensor-right-exact, $colim_I$ commutes with tensor products, hence // $ // ses((colim_I A_i) tpr B_1, (colim_I A_i) tpr B_2, (colim_I A_i) tpr B_3) // $ -// which is just +// which is just // $ // ses( A tpr B_1, A tpr B_2, A tpr B_3) // $ @@ -170,26 +176,26 @@ We now take a look at the case in $Ab$ and we shall show that a module in $Ab$ i $Tor_0^ZZ (ZZ over p ZZ, B) = B over p B$ and $Tor_1 ^ZZ (ZZ over p ZZ, B) = {b in B : p b = 0}.$ ] #proof[ - Use the definition of $Tor$, the projective resolution $0 -> ZZ ->^p ZZ -> ZZ over p ZZ -> 0$, and $B tpz ZZ iso B$. + Use the definition of $Tor$, the projective resolution $0 -> ZZ ->^p ZZ -> ZZ over p ZZ -> 0$, and $B tpz ZZ iso B$. ] #lemma[ An abelian group is a filtered colimit of its finitely generated subgroups. ] #proof[ -$A = union A_i = colim_I A_i $ where $I$ is a filtered poset representing the inclusion relations of the finitely generated subgroups of $A$. -// Hence torsion-free abelian groups are flat. + $A = union A_i = colim_I A_i $ where $I$ is a filtered poset representing the inclusion relations of the finitely generated subgroups of $A$. + // Hence torsion-free abelian groups are flat. ] #lemma[ - Let $A, B in Ab$. - Then $Tor_1^ZZ (A, B)$ is a torsion abelian group. + Let $A, B in Ab$. + Then $Tor_1^ZZ (A, B)$ is a torsion abelian group. ] #remark[ This is likely why $Tor$ is called $Tor$. ] #proof[ - By writing $A = colim_I A_i$ for finitely genreated subgroups $A_i$ of $A$, we see that it suffices to show that each $Tor^ZZ_1 (A_i, B)$ is torsion. We can write $A_i$ as a direct sum of its torsion part and free part using the classification theorem for finitely generated abelian groups, i.e. $A_i = ZZ over p_1 ZZ ds ZZ over p_2 ZZ ds ... ds ZZ over p_m ZZ ds ZZ^r$. Notice that $Tor$ commutes with direct sums and the free part $ZZ^r$ vanishes with $Tor$, so + By writing $A = colim_I A_i$ for finitely genreated subgroups $A_i$ of $A$, we see that it suffices to show that each $Tor^ZZ_1 (A_i, B)$ is torsion. We can write $A_i$ as a direct sum of its torsion part and free part using the classification theorem for finitely generated abelian groups, i.e. $A_i = ZZ over p_1 ZZ ds ZZ over p_2 ZZ ds ... ds ZZ over p_m ZZ ds ZZ^r$. Notice that $Tor$ commutes with direct sums and the free part $ZZ^r$ vanishes with $Tor$, so $ - Tor_1 ^ZZ (A_i, B) iso plus.circle.big_(k=1)^m Tor_1^ZZ (ZZ over p_k ZZ, B) iso plus.circle.big_(k=1)^m B over p_k B, + Tor_1^ZZ (A_i, B) iso plus.circle.big_(k=1)^m Tor_1^ZZ (ZZ over p_k ZZ, B) iso plus.circle.big_(k=1)^m B over p_k B, $ which is clearly a torsion abelian group. ] @@ -198,19 +204,19 @@ $A = union A_i = colim_I A_i $ where $I$ is a filtered poset representing the in Let $B in Ab$. Then $Tor_1 ^ZZ (QQ over ZZ, B)$ is the torsion subgroup of $B$, i.e. ${b in B : "there exists" n in ZZ "such that" n b = 0 }.$ ] #proof[ - $QQ over ZZ$ can be written as the filtered colimit $QQ over ZZ iso colim_I ZZ over p ZZ$, where $I$ is the poset representing the divisibility of natural numbers. Then + $QQ over ZZ$ can be written as the filtered colimit $QQ over ZZ iso colim_I ZZ over p ZZ$, where $I$ is the poset representing the divisibility of natural numbers. Then $ - Tor_1 ^ZZ (QQ over ZZ, B) iso Tor_1^ZZ ( colim_I ZZ over p ZZ, B) iso colim_I Tor_1^ZZ (ZZ over p ZZ, B) iso colim_I {b in B : p b = 0}, + Tor_1^ZZ (QQ over ZZ, B) iso Tor_1^ZZ ( colim_I ZZ over p ZZ, B) iso colim_I Tor_1^ZZ (ZZ over p ZZ, B) iso colim_I {b in B : p b = 0}, $ which is the torsion subgroup of $B$. ] // #example[ -// A torsion-free abelian group is a flat $ZZ$-module. +// A torsion-free abelian group is a flat $ZZ$-module. // ] // #proof[ // // @weibel[Poposition 3.1.4, p.67]. -// Let $A$ be a torsion-free abelian group, then $A = union A_i$ where $A_i$ are finitely generated subgroups of $A$, so by +// Let $A$ be a torsion-free abelian group, then $A = union A_i$ where $A_i$ are finitely generated subgroups of $A$, so by // ] #proposition[ A $ZZ$-module is flat if and only if it is torsion-free. @@ -234,29 +240,29 @@ $A = union A_i = colim_I A_i $ where $I$ is a filtered poset representing the in ] #lemma("Flat Resolution Lemma")[ - Let $F_cx -> A$ be a flat resolution of $A$. Then + Let $F_cx -> A$ be a flat resolution of $A$. Then $ Tor_ast^R (A, B) iso H_ast (F_cx tpr B ) $ - Similarly, if $F'_cx -> B$ is a flat resolution, then + Similarly, if $F'_cx -> B$ is a flat resolution, then $ Tor_ast^R (A, B) iso H_ast (A tpr F'_cx) $ ] #proof[ - By induction. - When $n = 0$, we need to show that $A tpr B iso H_0 (F_cx tpr B)$. We see that $ H_0 (F_cx tpr B) = (F_0 tpr B) / IM(F_1 tpr B) = Coker(F_1 tpr B -> F_0 tpr B) $ On the other hand, $A = Coker(F_1 -> F_0)$, and since $(- tpr B)$ is right exact and preserves cokernels, we get the result. - + By induction. + When $n = 0$, we need to show that $A tpr B iso H_0 (F_cx tpr B)$. We see that $ H_0 (F_cx tpr B) = (F_0 tpr B) / IM(F_1 tpr B) = Coker(F_1 tpr B -> F_0 tpr B) $ On the other hand, $A = Coker(F_1 -> F_0)$, and since $(- tpr B)$ is right exact and preserves cokernels, we get the result. + When $n >= 1$, we have the short exact sequence $ ses(K, F_0, A, f:ker(epsilon), g:epsilon) - $ If we write $E_cx = (... -> F_2 -> F_1 -> 0)$, then $E_cx ->^(d_1) K$ is a flat resolution of $K$, where $d_1 : F_1 -> F_0$ has $IM(d_1) = Ker(epsilon) = K$ by the exactness at $F_0$ of the resolution $F_cx -> A$. Now we can write the #lest induced by $Tor$: + $ If we write $E_cx = (... -> F_2 -> F_1 -> 0)$, then $E_cx ->^(d_1) K$ is a flat resolution of $K$, where $d_1 : F_1 -> F_0$ has $IM(d_1) = Ker(epsilon) = K$ by the exactness at $F_0$ of the resolution $F_cx -> A$. Now we can write the #lest induced by $Tor$: $ - ... -> Tor_n (F_0 , B) -> Tor_n (A , B) -> Tor_(n-1) (K , B) -> Tor_(n-1) (F_0 , B) -> ... + ... -> Tor_n (F_0 , B) -> Tor_n (A , B) -> Tor_(n-1) (K , B) -> Tor_(n-1) (F_0 , B) -> ... $ - But $Tor_n (F_0, B) = 0$ for $n >= 1$ by @flat-tor. - Thus, + But $Tor_n (F_0, B) = 0$ for $n >= 1$ by @flat-tor. + Thus, $ Tor_n (A, B) iso cases(Ker (K tp B -> F_0 tp B) quad &n = 1, Tor_(n-1) (K, B) quad &n >= 2) $ @@ -264,7 +270,7 @@ $A = union A_i = colim_I A_i $ where $I$ is a filtered poset representing the in $ Tor_1 (A, B) iso Ker (K tp B -> F_0 tp B) = Ker ((F_1 tp B) / IM(F_2 tp B) -> F_0 tp B) = H_1 (F_cx tp B) $ - For $n >= 2$, + For $n >= 2$, $ Tor_n (A, B) iso Tor_(n-1) (K, B) iso H_(n-1) (E_cx tp B) = H_n (F_cx tp B) $ @@ -275,12 +281,12 @@ $A = union A_i = colim_I A_i $ where $I$ is a filtered poset representing the in Why have we not defined $Tor$ with flat resolutions in the first place? The problem is that we have to show it is well defined regardless of the choice of flat resolutions. This may not be as convenient as using projective resolutions. Nevertheless, now we are free to use flat resolutions, a larger class than projective resolutions, for calculations. ] -A generalisation to flat modules is the following. +A generalisation to flat modules is the following. #definition[ -If $F$ is a right exact functor, an object $Q$ is *$F$-acyclic* if $L_i F(Q) = 0$ for all $i != 0$. + If $F$ is a right exact functor, an object $Q$ is *$F$-acyclic* if $L_i F(Q) = 0$ for all $i != 0$. ] #proposition[ -If $Q_cx -> A$ is a resolution where $Q_n$ is $F$-acyclic for all $n$, then $L_i F(A) = H_i (F (Q_cx))$. + If $Q_cx -> A$ is a resolution where $Q_n$ is $F$-acyclic for all $n$, then $L_i F(A) = H_i (F (Q_cx))$. ] #proof[ The proof is exactly the same as above. @@ -290,16 +296,16 @@ If $Q_cx -> A$ is a resolution where $Q_n$ is $F$-acyclic for all $n$, then $L_i == Universal Coefficient Theorem -Let $P_cx$ be a chain complex of right $R$-modules and let $M$ be a left $R$-module. +Let $P_cx$ be a chain complex of right $R$-modules and let $M$ be a left $R$-module. In this section, we investigate how the homology of $P_cx$ is related to the homology of $P_cx tp M$, under certain flatness assumptions about $P_cx$. We first need an auxiliary result. #lemma[ - Let $ses(X, Y, Z)$ be a #sest in $ModR$ such that $Y$ and $Z$ are flat, then $X$ is also flat. + Let $ses(X, Y, Z)$ be a #sest in $ModR$ such that $Y$ and $Z$ are flat, then $X$ is also flat. ] #proof[ Let $B in RMod$. - Write the #lest induced by $Tor$: + Write the #lest induced by $Tor$: $ ... -> Tor_(n+1)^R (Z, B) -> Tor_n^R (X, B) -> Tor_n^R (Y, B) -> ... $ @@ -307,21 +313,25 @@ We first need an auxiliary result. ] The main result is the following. #theorem("Künneth Formula")[ - Let $P_cx$ be a chain complex of flat right $R$-modules such that each submodule $d(P_n)$ of $P_(n-1)$ is also flat. Then for every $n$ and every left $R$-module $M$, there is a #sest - + Let $P_cx$ be a chain complex of flat right $R$-modules such that each submodule $d(P_n)$ of $P_(n-1)$ is also flat. Then for every $n$ and every left $R$-module $M$, there is a #sest + $ ses(H_n (P) tpr M, H_n (P_cx tpr M), Tor_1^R (H_(n-1)(P), M)). $ ] #proof[@rotman[Theorem 7.55], @weibel[Theorem 3.6.1]. - Let $Z_n = Ker (P_n ->^d P_(n-1))$, then we have a #sest - #math.equation(block: true, numbering: "(1)", supplement: "Short Exact Sequence", - $ - ses(Z_n, P_n, d(P_n)). - $) - - // The associated #lest in $Tor$ shows that $Z_n$ is also flat, as $ Tor_k (P_n, M) = Tor_k (d(P_n), M) = 0 $ for all $k >= 1$. (#TODO In general, if two terms in a #sest are flat then the third one is also flat. ) + Let $Z_n = Ker (P_n ->^d P_(n-1))$, then we have a #sest + #math.equation( + block: true, + numbering: "(1)", + supplement: "Short Exact Sequence", + $ + ses(Z_n, P_n, d(P_n)). + $, + ) + + // The associated #lest in $Tor$ shows that $Z_n$ is also flat, as $ Tor_k (P_n, M) = Tor_k (d(P_n), M) = 0 $ for all $k >= 1$. (#TODO In general, if two terms in a #sest are flat then the third one is also flat. ) Since $P_n$ and $d(P_n)$ are both flat, @two-flats shows that $Z_n$ is also flat. Also, since $d(P_n)$ is flat, $Tor_1^R (d(P_n), M) = 0 @@ -330,31 +340,39 @@ The main result is the following. $ ses(Z_n tp M, P_n tp M, d(P_n) tp M), $ - from which we yield a #sest of chain complexes + from which we yield a #sest of chain complexes $ ses(Z_cx tp M , P_cx tp M, d(P)_cx tp M). $ - We now look at the #lest induced by homology: - #math.equation(block: true, numbering: "(1)", supplement: "Long Exact Sequence", - $ - ... -> H_(n+1) (d(P)_cx tp M ) ->^diff H_n (Z_cx tp M) \ -> H_n (P_cx tp M) -> H_n (d(P)_cx tp M) ->^diff H_(n-1) (Z_cx tp M) -> ... - $) - Note that the differentials on the chain complexes $Z_cx$ and $d(P)_cx$ are all zero, and hence the differentials on $Z_cx tp M$ and $d(P)_cx tp M$ are also all zero, which gives + We now look at the #lest induced by homology: + #math.equation( + block: true, + numbering: "(1)", + supplement: "Long Exact Sequence", + $ + ... -> H_(n+1) (d(P)_cx tp M ) ->^diff H_n (Z_cx tp M) \ -> H_n (P_cx tp M) -> H_n (d(P)_cx tp M) ->^diff H_(n-1) (Z_cx tp M) -> ... + $, + ) + Note that the differentials on the chain complexes $Z_cx$ and $d(P)_cx$ are all zero, and hence the differentials on $Z_cx tp M$ and $d(P)_cx tp M$ are also all zero, which gives $ H_n (d(P)_cx tp M) = d(P_n) tp M quad "and" quad H_n (Z_cx tp M ) = Z_n tp M. $ // #TODO A theorem saying differential zero gives homology equals chain complex. - Hence @eq1 now becomes + Hence @eq1 now becomes $ ... -> d(P_(n+1)) tp M ->^(diff_(n+1)) Z_n tp M -> H_n (P_cx tp M) -> d(P_(n)) tp M ->^(diff_n) Z_(n-1) tp M -> ... $ Apply @connecting and we can find the connecting homomorphism $diff_(n+1) = i_n tp id_M$, where $i_n : d(P_(n+1)) -> Z_n$ is the inclusion map. By @five-to-ses, we have a #sest - #math.equation(block: true, numbering: "(1)", supplement: "Short Exact Sequence", - $ - ses(Coker(i_n tp id_M), H_n (P_cx tp M), Ker(i_(n-1) tp id_M)). - $) - Now it remains to calculate the two flanking terms of @ses-1. + #math.equation( + block: true, + numbering: "(1)", + supplement: "Short Exact Sequence", + $ + ses(Coker(i_n tp id_M), H_n (P_cx tp M), Ker(i_(n-1) tp id_M)). + $, + ) + Now it remains to calculate the two flanking terms of @ses-1. Note that we have a flat resolution for $H_n (P_cx)$: $ ses(d(P_(n+1)), Z_n, H_n (P_cx), f: i_n). @@ -363,15 +381,15 @@ The main result is the following. $ D_cx = (... -> 0 -> d(P_(n+1)) tp M ->^(i_n tp id_M) Z_n tp M -> 0) $ - Hence + Hence $ H_n (P_cx) tp M = Tor_0 (H_n (P_cx), M) = H_0 (D) = Coker (i_n tp id_M) - $ and + $ and $ Tor_1^R (H_n (P_cx), M) = H_1 (D) = Ker (i_n tp id_M). $ Combining the last two equations with @ses-1 gives the result. -] +] #remark[ These are the games you play with the machine. ] @@ -386,38 +404,46 @@ In particular, we can consider the case of $Ab$, where we have the following: #proof[ @rotman[Corollary 7.56, p. 450], @weibel[Theorem 3.6.2, p. 87]. Since each $P_n$ is a free abelian group, its subgroup -$d (P_n)$ is also free abelian by @sub-pid. Therefore $d (P_n)$ is projective, so the short exact -sequence - -$ 0 arrow.r Z_n arrow.r^(i_n) P_n arrow.r d( P_n) arrow.r 0 $ - -splits by @projective-split. Applying $(- tp M)$ (which commutes with direct sums), we see that the #sest -$ 0 arrow.r Z_n tp M arrow.r^(i_n tp id_M) P_n tp M arrow.r d( P_n) tp M arrow.r 0 $ -also splits, so $Z_n tp M$ is a direct summand of $P_n tp M$. Now notice we have the inclusions -$ - IM (d_(n+1) tp id_M) subset.eq IM (i_n tp id_M) subset.eq Ker (d_n tp id_M) subset.eq P_n tp M -$ -By @split-sub, $Z_n tp M$ is a direct summand of $Ker (d_n tp id_M)$. Modding out by $IM (d_(n+1) tp id_M)$ on both of them, again by @split-sub, we see that -#math.equation(block: true, numbering: "(1)", supplement: "Equation", -$ - H_n (P) tp M= (Z_n tp M) / IM(d_(n+1) tp id_M) -$) - is a direct summand of $ H_n (P_cx tp M) = Ker(d_n tp id_M) / IM(d_(n+1) tp id_M). $ - -To see why @hnptpm holds, let $j_n : d(P_(n+1)) -> Z_n$ be the inclusion map, and by the proof of @kunneth, $ H_n (P) tp M &= Coker (j_n tp id_M : d(P_(n+1)) tp M -> Z_n tp M) \ &= (Z_n tp M) / (IM (j_n tp id_M)) = (Z_n tp M) / IM(d_(n+1) tp id_M). $ - -Since each $P_n$ and $d(P_n)$ are projective and thus flat, by @kunneth we have a #sest -$ 0 arrow.r H_n lr((P)) times.circle M arrow.r H_n lr((P_cx times.circle M)) arrow.r "Tor"_1^ZZ lr((H_(n minus 1) lr((P)) comma M)) arrow.r 0, $ -which is therefore split. + $d (P_n)$ is also free abelian by @sub-pid. Therefore $d (P_n)$ is projective, so the short exact + sequence + + $ 0 arrow.r Z_n arrow.r^(i_n) P_n arrow.r d( P_n) arrow.r 0 $ + + splits by @projective-split. Applying $(- tp M)$ (which commutes with direct sums), we see that the #sest + $ + 0 arrow.r Z_n tp M arrow.r^(i_n tp id_M) P_n tp M arrow.r d( P_n) tp M arrow.r 0 + $ + also splits, so $Z_n tp M$ is a direct summand of $P_n tp M$. Now notice we have the inclusions + $ + IM (d_(n+1) tp id_M) subset.eq IM (i_n tp id_M) subset.eq Ker (d_n tp id_M) subset.eq P_n tp M + $ + By @split-sub, $Z_n tp M$ is a direct summand of $Ker (d_n tp id_M)$. Modding out by $IM (d_(n+1) tp id_M)$ on both of them, again by @split-sub, we see that + #math.equation( + block: true, + numbering: "(1)", + supplement: "Equation", + $ + H_n (P) tp M= (Z_n tp M) / IM(d_(n+1) tp id_M) + $, + ) + is a direct summand of $ H_n (P_cx tp M) = Ker(d_n tp id_M) / IM(d_(n+1) tp id_M). $ + + To see why @hnptpm holds, let $j_n : d(P_(n+1)) -> Z_n$ be the inclusion map, and by the proof of @kunneth, $ H_n (P) tp M &= Coker (j_n tp id_M : d(P_(n+1)) tp M -> Z_n tp M) \ &= (Z_n tp M) / (IM (j_n tp id_M)) = (Z_n tp M) / IM(d_(n+1) tp id_M). $ + + Since each $P_n$ and $d(P_n)$ are projective and thus flat, by @kunneth we have a #sest + $ + 0 arrow.r H_n lr((P)) times.circle M arrow.r H_n lr((P_cx times.circle M)) arrow.r "Tor"_1^ZZ lr((H_(n minus 1) lr((P)) comma M)) arrow.r 0, + $ + which is therefore split. // #TODO - // Note: $P_n -> d(P_n)$ splits. + // Note: $P_n -> d(P_n)$ splits. ] We also demonstrate a more general result, known as the Full Künneth Formula. Now it can be helpful to recall @tp-dc, the tensor product double complex, as well as @homology-double. #theorem("Full Künneth Formula")[ - Let $P_cx$ and $Q_cx$ be right and left $R$-modules, respectively. - If $P_n$ and $d(P_n)$ are flat for each $n$, then there is a #sest + Let $P_cx$ and $Q_cx$ be right and left $R$-modules, respectively. + If $P_n$ and $d(P_n)$ are flat for each $n$, then there is a #sest $ ses(plus.circle.big _(i+j=n) H_i (P) tp H_j (Q), H_n (P tpr Q), plus.circle.big_(i+j = n-1) Tor_1^R (H_i (P), H_j (Q))) $ @@ -430,7 +456,7 @@ We also demonstrate a more general result, known as the Full Künneth Formula. N It is worth mentioning that there is also a version of the Universal Coefficient Theorem for cohomology that involves $Ext$ and $hom$: #theorem("Universal Coefficient Theorem for Cohomology")[ - Let $P_cx$ be a chain complex of projective $R$-modules such that each $d(P_n)$ is also projective. Then for any $n$ and every $R$-module $M$, there is a non-canonically split exact sequence + Let $P_cx$ be a chain complex of projective $R$-modules such that each $d(P_n)$ is also projective. Then for any $n$ and every $R$-module $M$, there is a non-canonically split exact sequence $ 0 -> Ext_R^1 (H_(n-1) (P), M) -> H^n (homr (P, M)) -> homr (H_n (P), M) -> 0. $ @@ -441,9 +467,9 @@ It is worth mentioning that there is also a version of the Universal Coefficient These results yield important consequences in algebraic topology, as briefly discussed below. More can be seen in the Algebraic Topology course. -#example[ @weibel[Application 3.6.4]. - Let $X$ be a topological space. - Let $C_cx (X)$ be the singular chain complex of $X$, then each $C_n (X)$ is a free abelian group. Let $M$ be an abelian group, then we define the $n$-th (singular) homology of $X$ with _coefficients_ in $M$ as +#example[ @weibel[Application 3.6.4]. + Let $X$ be a topological space. + Let $C_cx (X)$ be the singular chain complex of $X$, then each $C_n (X)$ is a free abelian group. Let $M$ be an abelian group, then we define the $n$-th (singular) homology of $X$ with _coefficients_ in $M$ as $ H_n (X ; M) := H_n (C_cx (X) tp M). $ @@ -451,19 +477,19 @@ These results yield important consequences in algebraic topology, as briefly dis $ H_n (X; M) iso (H_n (X) tp M )ds Tor_1^ZZ (H_(n-1) (X), M). $ - For cohomology, we could make a similar definition, i.e. + For cohomology, we could make a similar definition, i.e. $ H^n (X; M) := H^n (hom_ZZ (C_cx (X), M)) $ with $H^n (X) = H^n (X; ZZ)$, - and the Universal Coefficient Theorem would indicate that + and the Universal Coefficient Theorem would indicate that $ H^n (X; M) iso hom_ZZ (H_n (X), M) ds Ext_ZZ^1 (H_(n-1) (X), M). $ - (If we further assume that $M = ZZ$ and that each $H_n (X)$ is finitely generated such that $H_n (X) iso F_n ds T_n$ with free part $F_n$ and torsion part $T_n$, then we can show that + (If we further assume that $M = ZZ$ and that each $H_n (X)$ is finitely generated such that $H_n (X) iso F_n ds T_n$ with free part $F_n$ and torsion part $T_n$, then we can show that $H^n (X) iso F_n ds T_(n-1).$) - - Let $Y$ be another topological space with singular chain complex $C_cx (Y)$. By Eilenberg–Zilber theorem, $H_n (X times Y) iso H_n (C_cx (X) tp C_cx (Y))$. Then the Full Künneth Formula indicates that + + Let $Y$ be another topological space with singular chain complex $C_cx (Y)$. By Eilenberg–Zilber theorem, $H_n (X times Y) iso H_n (C_cx (X) tp C_cx (Y))$. Then the Full Künneth Formula indicates that $ H_n (X times Y) iso (plus.circle.big_(p=1)^n H_p (X) tp H_(n-p) (Y)) xor (plus.circle.big_(p=1)^n Tor_1^ZZ (H_(p-1) (X), H_(n-p) (Y))). $ diff --git a/ha/a-kc.typ b/ha/a-kc.typ index 39cbb3b..b99ee4b 100644 --- a/ha/a-kc.typ +++ b/ha/a-kc.typ @@ -8,44 +8,50 @@ We generally follow @weibel[Section 4.5]. In this section, by an $R$-module we m == Koszul Complexes #definition[ -Let $R$ be a ring and let $x in Z lr((R))$ be a central element. Then we -define the *Koszul complex* $K_cx lr((x))$ of $x$ to be the chain complex -$ 0 arrow.r R dot e_x arrow.r^x R arrow.r 0 $ concentrated in degrees $1$ and $0$, where $e_x$ is a symbol to denote the generator of $K_1 lr((x))$, and the differential $R dot e_x ->^x R$ is multiplication by $x$, i.e. $d(e_x) = x$. + Let $R$ be a ring and let $x in Z lr((R))$ be a central element. Then we + define the *Koszul complex* $K_cx lr((x))$ of $x$ to be the chain complex + $ + 0 arrow.r R dot e_x arrow.r^x R arrow.r 0 + $ concentrated in degrees $1$ and $0$, where $e_x$ is a symbol to denote the generator of $K_1 lr((x))$, and the differential $R dot e_x ->^x R$ is multiplication by $x$, i.e. $d(e_x) = x$. ] #definition[ If $bd(x) = (x_1, ..., x_n)$ is a finite sequence of central elements of $R$, then by above, we have Koszul complexes $K(x_1), ..., K(x_n)$, where we write $e_i = e_(x_i)$. Then the chain complex $K(bd(x))$ is defined as follows. -The -symbols -$ e_(i_1) and dots.h.c and e_(i_p) eq underbrace(1 times.circle dots.h.c times.circle 1 times.circle e_(i_1) times.circle dots.h.c times.circle e_(i_p) times.circle dots.h.c times.circle 1, n" terms") quad lr((1 <= i_1 lt dots.h.c lt i_p <= n)) dot.basic $ -generate the free $R$-module $K_p (bd(x))$, and - the differential -$K_p lr((bold(bd(x)))) arrow.r K_(p minus 1) lr((bold(x)))$ sends -$e_(i_1) and dots.h.c and e_(i_p)$ to -$ sum_(k=1)^p lr((minus 1))^(k plus 1) x_(i_k) e_(i_1) and dots.h.c and hat(e)_(i_k) and dots.h.c and e_(i_p). $ + The + symbols + $ + e_(i_1) and dots.h.c and e_(i_p) eq underbrace(1 times.circle dots.h.c times.circle 1 times.circle e_(i_1) times.circle dots.h.c times.circle e_(i_p) times.circle dots.h.c times.circle 1, n" terms") quad lr((1 <= i_1 lt dots.h.c lt i_p <= n)) dot.basic + $ + generate the free $R$-module $K_p (bd(x))$, and + the differential + $K_p lr((bold(bd(x)))) arrow.r K_(p minus 1) lr((bold(x)))$ sends + $e_(i_1) and dots.h.c and e_(i_p)$ to + $ + sum_(k=1)^p lr((minus 1))^(k plus 1) x_(i_k) e_(i_1) and dots.h.c and hat(e)_(i_k) and dots.h.c and e_(i_p). + $ ] #remark[ Alternatively, we could define $K(bd(x))$ as the total tensor product complex -$ - Tot^xor (K(x_1) tpr K(x_2) tpr ... tpr K(x_n)) -$ -by which we mean an inductive relation $ + $ + Tot^xor (K(x_1) tpr K(x_2) tpr ... tpr K(x_n)) + $ + by which we mean an inductive relation $ K(bd(x)) = Tot^xor (K(x_1, x_2, ..., x_(n-1)), K(x_n)). $ We omit the proof that this is an equivalent definition. One may also understand the alternative definition by regarding $C := K(x_1) tpr ... tpr K(x_n)$ as an "$n$-dimensional complex", a generalisation of a double complex. In particular, $C$ has in total $2^n$ terms, and a typical term in $C$ is indexed by an $n$-tuple of $0$ and $1$, whose total degree is the sum of this $n$-tuple. For example, if $n = 4$, $C$ has a term $ C_(0, 1, 1, 0) = R tpr (R dot e_(2)) tpr (R dot e_(3)) tpr R, $ -which has total degree $2$ and is generated by $e_2 and e_3$. -Then $K(bd(x))$ is the total complex of $C$, where $K_p (bd(x))$ is the direct sum of all terms in $C$ which has total degree $p$. For example, when $n = 4$, $K_2 (bd(x))$ is a free module generated by $e_1 and e_2$, $e_1 and e_3$, $e_1 and e_4$, $e_2 and e_3$, $e_2 and e_4$, $e_3 and e_4$ with rank $6$. -Further, -$K_p lr((bd(x)))$ is in fact isomorphic to the $p$-th exterior -product $Lambda^p R^n$ of $R^n$, so $K (bd(x))$ -is often called the *exterior algebra complex*. -// This discussion also explains the following @kpx-free. + which has total degree $2$ and is generated by $e_2 and e_3$. + Then $K(bd(x))$ is the total complex of $C$, where $K_p (bd(x))$ is the direct sum of all terms in $C$ which has total degree $p$. For example, when $n = 4$, $K_2 (bd(x))$ is a free module generated by $e_1 and e_2$, $e_1 and e_3$, $e_1 and e_4$, $e_2 and e_3$, $e_2 and e_4$, $e_3 and e_4$ with rank $6$. + Further, + $K_p lr((bd(x)))$ is in fact isomorphic to the $p$-th exterior + product $Lambda^p R^n$ of $R^n$, so $K (bd(x))$ + is often called the *exterior algebra complex*. + // This discussion also explains the following @kpx-free. // However, since we do not wish to define the differential rules on an "$n$-dimensional complex" in general, it is more convenient to stick to the inductive definition for the proofs. ] #proposition[ - $K(bd(x))$ is indeed a chain complex and + $K(bd(x))$ is indeed a chain complex and $K_p (bd(x))$ is a free $R$-module with rank $vec(n, p)$. ] @@ -56,55 +62,57 @@ is often called the *exterior algebra complex*. #example[ - As an example, when $n = 2$ and $bd(x)= (x_1 , x_2)$, -// we have the tensor product double complex: -// // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQAKAJQAIoIcPGAH0OAD2HEAlFJ440AJx7c+AoaIkAmGSAC+pdJlz5CKMsWp0mrdiv6CR4yTLmLlvez2l6DIDNjwCInJSCxoGFjZETg81aVclOzipH0MAk2CKSwibaKTBePlE2IcNYW0U3UsYKABzeCJQADMFCABbJBCQHAgkAGZw6yjOCW99ZtaOxDJu3sRNQcj2UdSQFvbOmh6kGZzhgFotVfWpgdmkBasl6KOq3SA -// #align(center, commutative-diagram( -// node-padding: (50pt, 50pt), -// node((0, 1), [$(R dot e_(1)) tpr (R dot e_(2))$]), -// node((1, 1), [$(R dot e_(1)) tpr R.$]), -// node((1, 0), [$R tpr R$]), -// node((0, 0), [$R tpr (R dot e_(2))$]), -// arr((0, 1), (0, 0), [$x_1 tp 1$]), -// arr((1, 1), (1, 0), [$x_1 tp 1$]), -// arr((0, 1), (1, 1), [$-1 tp x_2$]), -// arr((0, 0), (1, 0), [$1 tp x_2$]), -// )) -$K (bd(x))$ is the total complex + As an example, when $n = 2$ and $bd(x)= (x_1 , x_2)$, + // we have the tensor product double complex: + // // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQAKAJQAIoIcPGAH0OAD2HEAlFJ440AJx7c+AoaIkAmGSAC+pdJlz5CKMsWp0mrdiv6CR4yTLmLlvez2l6DIDNjwCInJSCxoGFjZETg81aVclOzipH0MAk2CKSwibaKTBePlE2IcNYW0U3UsYKABzeCJQADMFCABbJBCQHAgkAGZw6yjOCW99ZtaOxDJu3sRNQcj2UdSQFvbOmh6kGZzhgFotVfWpgdmkBasl6KOq3SA + // #align(center, commutative-diagram( + // node-padding: (50pt, 50pt), + // node((0, 1), [$(R dot e_(1)) tpr (R dot e_(2))$]), + // node((1, 1), [$(R dot e_(1)) tpr R.$]), + // node((1, 0), [$R tpr R$]), + // node((0, 0), [$R tpr (R dot e_(2))$]), + // arr((0, 1), (0, 0), [$x_1 tp 1$]), + // arr((1, 1), (1, 0), [$x_1 tp 1$]), + // arr((0, 1), (1, 1), [$-1 tp x_2$]), + // arr((0, 0), (1, 0), [$1 tp x_2$]), + // )) + $K (bd(x))$ is the total complex -$ - 0 -> R dot (e_(1) and e_(2)) ->^(d_2) R dot e_(1) ds R dot e_(2) ->^(d_1) R -> 0, -$ -where $d_2 = vec(x_2, -x_1)$ and $d_1 = (x_1, x_2)$. Note that indeed $d_1 oo d_2 = 0$. - -// #align(center,image("../imgs/2023-11-25-10-34-10.png",width:80%)) -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRGJAF9T1Nd9CKAIzkqtRizYAlLjxAZseAkQBMo6vWatEIKQD0Vs3ooFEAzOvFbpR+XyWDkAFkubJOjt2P9lKMkLE3bRAAHRAAIzpsOEQw2wUfRxEAjQlg4BgAfQAKAA9MoQBKAAI6MChirLzMlRLOePtTFDUUq3cQDJz82tJKroLC+q87E19kC1agtmAhIbEYKABzeCJQADMAJwgAWyQyEBwIJFm5TZ3j6kOkNTbg6pFigFpuwtsz3cQbq8QLW7YaGAAY3uvReby2H1+3ycnAonCAA -// #align(center, commutative-diagram( -// node-padding: (50pt, 30pt), -// node((0, 0), [$0$]), -// node((0, 1), [$R dot (e_(x_1) and e_(x_2))$]), -// node((0, 2), [$R dot e_(x_1) ds R dot e_(x_2)$]), -// node((0, 3), [$R$]), -// node((0, 4), [$0$]), -// // node((1, 0), [$"basis:"$]), -// // node((1, 1), [${e_(x_1) and e_(x_2) }$]), -// // node((1, 2), [${e_(x_1), e_(x_2)}$]), -// // node((1, 3), [${1}$]), -// arr((0, 0), (0, 1), []), -// arr((0, 1), (0, 2), [$(x_1, -x_2)$]), -// arr((0, 2), (0, 3), [$vec(x_1, x_2)$]), -// arr((0, 3), (0, 4), []), -// )) - -// Note that in this special case, we can obtain the same formula for the differentials using @total-complex and @kpx. + $ + 0 -> R dot (e_(1) and e_(2)) ->^(d_2) R dot e_(1) ds R dot e_(2) ->^(d_1) R -> 0, + $ + where $d_2 = vec(x_2, -x_1)$ and $d_1 = (x_1, x_2)$. Note that indeed $d_1 oo d_2 = 0$. + + // #align(center,image("../imgs/2023-11-25-10-34-10.png",width:80%)) + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRGJAF9T1Nd9CKAIzkqtRizYAlLjxAZseAkQBMo6vWatEIKQD0Vs3ooFEAzOvFbpR+XyWDkAFkubJOjt2P9lKMkLE3bRAAHRAAIzpsOEQw2wUfRxEAjQlg4BgAfQAKAA9MoQBKAAI6MChirLzMlRLOePtTFDUUq3cQDJz82tJKroLC+q87E19kC1agtmAhIbEYKABzeCJQADMAJwgAWyQyEBwIJFm5TZ3j6kOkNTbg6pFigFpuwtsz3cQbq8QLW7YaGAAY3uvReby2H1+3ycnAonCAA + // #align(center, commutative-diagram( + // node-padding: (50pt, 30pt), + // node((0, 0), [$0$]), + // node((0, 1), [$R dot (e_(x_1) and e_(x_2))$]), + // node((0, 2), [$R dot e_(x_1) ds R dot e_(x_2)$]), + // node((0, 3), [$R$]), + // node((0, 4), [$0$]), + // // node((1, 0), [$"basis:"$]), + // // node((1, 1), [${e_(x_1) and e_(x_2) }$]), + // // node((1, 2), [${e_(x_1), e_(x_2)}$]), + // // node((1, 3), [${1}$]), + // arr((0, 0), (0, 1), []), + // arr((0, 1), (0, 2), [$(x_1, -x_2)$]), + // arr((0, 2), (0, 3), [$vec(x_1, x_2)$]), + // arr((0, 3), (0, 4), []), + // )) + + // Note that in this special case, we can obtain the same formula for the differentials using @total-complex and @kpx. ] -== Koszul (Co)homology +== Koszul (Co)homology #definition[ -For an $R$-module $A$, we define the *Koszul homology* and *Koszul + For an $R$-module $A$, we define the *Koszul homology* and *Koszul cohomology* to be -$ H_q lr((bd(x) comma A)) & eq H_q lr((K lr((bd(x))) times.circle_R A)) comma\ -H^q lr((bd(x) comma A)) & eq H^q lr(("Hom"_R lr((K lr((bd(x))) comma A)))) dot.basic $ + $ + H_q lr((bd(x) comma A)) & eq H_q lr((K lr((bd(x))) times.circle_R A)) comma\ + H^q lr((bd(x) comma A)) & eq H^q lr(("Hom"_R lr((K lr((bd(x))) comma A)))) dot.basic + $ ] @@ -112,70 +120,76 @@ H^q lr((bd(x) comma A)) & eq H^q lr(("Hom"_R lr((K lr((bd(x))) comma A)))) dot.b // #TODO what is exterior product -// (There are in total $n$ terms of the tensor product and in the degree $p$ part of $K(bd(x))$ there should be $p$ terms that come from the degree $1$ part of $K(x_j)$ and thus are $e_x_(j)$, and the remaining ($n-p$) terms should come from the degree $0$ part and are $1$.) +// (There are in total $n$ terms of the tensor product and in the degree $p$ part of $K(bd(x))$ there should be $p$ terms that come from the degree $1$ part of $K(x_j)$ and thus are $e_x_(j)$, and the remaining ($n-p$) terms should come from the degree $0$ part and are $1$.) #proposition[ -$lr({H_q lr((bd(x) comma minus))})$ is a -homological $delta$-functor and -$lr({H^q lr((bold(x) comma minus))})$ is a cohomological $delta$-functor -with -$ H_0 lr((bold(x) comma A)) eq A slash bd(x) A, quad -H^0 lr((bold(x) comma A)) eq homr lr((R slash bd(x) R comma A)) eq lr({a in A colon x_i a eq 0 upright(" for all ") i}). $ + $lr({H_q lr((bd(x) comma minus))})$ is a + homological $delta$-functor and + $lr({H^q lr((bold(x) comma minus))})$ is a cohomological $delta$-functor + with + $ + H_0 lr((bold(x) comma A)) eq A slash bd(x) A, quad + H^0 lr((bold(x) comma A)) eq homr lr((R slash bd(x) R comma A)) eq lr({a in A colon x_i a eq 0 upright(" for all ") i}). + $ ] #proof[ - Each $K_p (bd(x))$ is free and hence flat and projective, so $(K_p (bd(x)) tpr -)$ and $homr (K_p (bd(x)), -)$ are both exact functors. For any #sest $ses(A, B, C)$, we thus have a #sest of chain complexes, + Each $K_p (bd(x))$ is free and hence flat and projective, so $(K_p (bd(x)) tpr -)$ and $homr (K_p (bd(x)), -)$ are both exact functors. For any #sest $ses(A, B, C)$, we thus have a #sest of chain complexes, $ - ses(K(bd(x)) tpr A, K(bd(x)) tpr B, K(bd(x)) tpr C) + ses(K(bd(x)) tpr A, K(bd(x)) tpr B, K(bd(x)) tpr C) $ - and a #sest of cochain complexes + and a #sest of cochain complexes $ ses(homr (K_p (bd(x)), A), homr (K_p (bd(x)), B), homr (K_p (bd(x)), C)) $ - By @connecting, applying homology and cohomology to them respectively induces two #less. + By @connecting, applying homology and cohomology to them respectively induces two #less. Notice $K_1 (bd(x)) iso R^n$ with generators ${e_(i)}_(1 <= i <= n)$ and $K_0 (bd(x)) = R$. The differential $K_1 (bd(x)) -> K_0 (bd(x))$ sends each $e_(i)$ to $x_i$. The rest should follow easily. ] #proposition[ There are isomorphisms -$H_p lr((bd(x) comma A)) tilde.equiv H^(n minus p) lr((bd(x) comma A))$ for all -$p$. + $H_p lr((bd(x) comma A)) tilde.equiv H^(n minus p) lr((bd(x) comma A))$ for all + $p$. ] #lemma("Künneth Formula for Koszul Complexes")[ -If -$C_cx$ is a chain complex of $R$-modules and $x in R$, there -are exact sequences -$ 0 arrow.r H_0 lr((x comma H_q lr((C)))) arrow.r H_q lr((K lr((x)) times.circle_R C)) arrow.r H_1 lr((x comma H_(q minus 1) lr((C)))) arrow.r 0 $ + If + $C_cx$ is a chain complex of $R$-modules and $x in R$, there + are exact sequences + $ + 0 arrow.r H_0 lr((x comma H_q lr((C)))) arrow.r H_q lr((K lr((x)) times.circle_R C)) arrow.r H_1 lr((x comma H_(q minus 1) lr((C)))) arrow.r 0 + $ ] #proof[ Again recall @homology-double, so the middle term means $H_q (Tot^ds (K(x) tpr C))$. By definition, - $ [Tot^ds (K(x) tpr C)]_n = (K_0 (x) tpr C_n) ds (K_1 (x) tpr C_(n-1)) iso C_n ds C_(n-1), $ + $ + [Tot^ds (K(x) tpr C)]_n = (K_0 (x) tpr C_n) ds (K_1 (x) tpr C_(n-1)) iso C_n ds C_(n-1), + $ where the differential is given by $(c_n, c_(n-1)) |-> (d(c_n) + x c_(n-1), -d(c_(n-1)))$. - Thus we can write a #sest of chain complexes: + Thus we can write a #sest of chain complexes: $ ses(C, Tot^ds (K(x) tpr C), C [-1]), $ - which is associated to the long exact sequence: + which is associated to the long exact sequence: $ H_(q plus 1) lr((C lr([minus 1]))) arrow.r^diff H_q lr((C)) arrow.r H_q lr((K lr((x)) times.circle C)) arrow.r H_q lr((C lr([minus 1]))) arrow.r^diff H_q lr((C)), $ - where $H_(q+1) (C[-1]) = H_q (C)$ and $H_(q) (C[-1]) = H_(q-1) (C)$. By @connecting, we can find that the connecting homomorphism $diff$ is multiplication by $x$. Now we have + where $H_(q+1) (C[-1]) = H_q (C)$ and $H_(q) (C[-1]) = H_(q-1) (C)$. By @connecting, we can find that the connecting homomorphism $diff$ is multiplication by $x$. Now we have $ - H_q lr((C)) arrow.r^x H_q lr((C)) arrow.r H_q lr((K lr((x)) times.circle C)) arrow.r H_(q-1) lr((C)) arrow.r^x H_(q-1) lr((C)), + H_q lr((C)) arrow.r^x H_q lr((C)) arrow.r H_q lr((K lr((x)) times.circle C)) arrow.r H_(q-1) lr((C)) arrow.r^x H_(q-1) lr((C)), $ - which, by @five-to-ses, leads to the #sest + which, by @five-to-ses, leads to the #sest $ ses(Coker(H_q (C) ->^x H_q (C)), H_q lr((K lr((x)) times.circle C)), Ker(H_(q-1) (C) ->^x H_(q-1) (C))). $ - + Now since $ H_q (C) ->^x H_q (C) = (R ->^x R) tpr H_q (C), $ - we find + we find $ Coker(H_q (C) ->^x H_q (C)) = H_0 (x, H_q (C)) space "and " space Ker(H_q (C) ->^x H_q (C)) = H_1 (x, H_(q) (C)), @@ -183,37 +197,39 @@ $ 0 arrow.r H_0 lr((x comma H_q lr((C)))) arrow.r H_q lr((K lr((x)) times.circle and the result follows. ] -Now recall that if $A$ is an $R$-module and $r in R$, then $r$ is a *zero-divisor* on $A$ if there exists non-zero $a in A$ such that $r a = 0$. Therefore, $r$ is a *non-zero-divisor* on $A$ #iff the multiplication $A ->^r A$ is injective. +Now recall that if $A$ is an $R$-module and $r in R$, then $r$ is a *zero-divisor* on $A$ if there exists non-zero $a in A$ such that $r a = 0$. Therefore, $r$ is a *non-zero-divisor* on $A$ #iff the multiplication $A ->^r A$ is injective. #definition[ If $A$ is an $R$-module, a *regular sequence* on $A$ is a sequence of elements $(x_1, ..., x_n)$ where each $x_i in R$ such that $x_1$ is a non-zero-divisor on $A$ and each $x_i$ is a non-zero-divisor on $A over (x_1, ..., x_(i-1)) A$. ] #lemma[ - Let $A$ be an $R$-module. If $x$ is a non-zero-divisor on $A$, then $H_1 (x, A) = 0$. + Let $A$ be an $R$-module. If $x$ is a non-zero-divisor on $A$, then $H_1 (x, A) = 0$. ] #proof[ $K(x) tpr A$ is the chain complex - $0 -> A ->^x A -> 0. - $ - If $x$ is a non-zero-divisor on $A$, then $H_1 (x, A) = Ker x = 0$. + $0 -> A ->^x A -> 0.$ + If $x$ is a non-zero-divisor on $A$, then $H_1 (x, A) = Ker x = 0$. ] #corollary[ - If $bd(x) = (x_1, ... , x_n)$ is a regular sequence on an $R$-module $A$, then $H_q (bd(x), A) = 0$ for $q > 0$. + If $bd(x) = (x_1, ... , x_n)$ is a regular sequence on an $R$-module $A$, then $H_q (bd(x), A) = 0$ for $q > 0$. ] #proof[ By induction on $n$. The base case for $n = 1$ is given in @non-zero-h1. - Let $x = x_n$ and $bd(y) = (x_1, ..., x_(n-1))$, then $K(bd(x)) = Tot^xor (K(x) tpr K(bd(y)))$. By @kunneth-koszul (letting $C = K(bd(y)) tpr A$), we have a #sest - #math.equation(block: true, numbering: "(1)", supplement: "Short Exact Sequence", - $ - ses(H_0(x, H_q (bd(y), A)), H_q (bd(x), A), H_1 (x, H_(q-1) (bd(y), A))). - - $) - - For $q >= 2$, the flanking terms of @h0xhq are both $0$ by induction and hence $H_q (bd(x), A) = 0$. - For $q = 1$, by induction the left term of @h0xhq is $0$, so we get + Let $x = x_n$ and $bd(y) = (x_1, ..., x_(n-1))$, then $K(bd(x)) = Tot^xor (K(x) tpr K(bd(y)))$. By @kunneth-koszul (letting $C = K(bd(y)) tpr A$), we have a #sest + #math.equation( + block: true, + numbering: "(1)", + supplement: "Short Exact Sequence", + $ + ses(H_0(x, H_q (bd(y), A)), H_q (bd(x), A), H_1 (x, H_(q-1) (bd(y), A))). + $, + ) + + For $q >= 2$, the flanking terms of @h0xhq are both $0$ by induction and hence $H_q (bd(x), A) = 0$. + For $q = 1$, by induction the left term of @h0xhq is $0$, so we get $ H_1 (bd(x), A) iso H_1 (x, H_(0) (bd(y), A)) = H_1 (x, A over (x_1, ..., x_(n-1)) A) = 0 $ @@ -228,7 +244,7 @@ Now recall that if $A$ is an $R$-module and $r in R$, then $r$ is a *zero-diviso is exact everywhere. Thus $K(bd(x))$ is a free resolution of $R over I$. ] #corollary[ - If $bd(x) = (x_1, ..., x_n)$ is a regular sequence on $R$, $I =(x_1, ..., x_n) R$ and $B$ is an $R$-module, then + If $bd(x) = (x_1, ..., x_n)$ is a regular sequence on $R$, $I =(x_1, ..., x_n) R$ and $B$ is an $R$-module, then $ H_p (bd(x), B) = Tor_p^R (R over I, B), \ H^p (bd(x), B) = Ext_p^R (R over I, B). \ @@ -239,11 +255,11 @@ Now recall that if $A$ is an $R$-module and $r in R$, then $r$ is a *zero-diviso ] #example[ - Let $k$ be a field, $R = k[x, y]$ and $I = (x, y) R$. Then $k iso R over I$ and has Koszul resolution + Let $k$ be a field, $R = k[x, y]$ and $I = (x, y) R$. Then $k iso R over I$ and has Koszul resolution $ 0 -> R ->^vec(y, -x) R^2 ->^((x, y)) R -> k -> 0. $ - To calculate $Tor_ast^R (k, k)$, we could simply use the definition of $Tor$: delete $k$ from the sequence, apply $(k tpr -)$, and we get + To calculate $Tor_ast^R (k, k)$, we could simply use the definition of $Tor$: delete $k$ from the sequence, apply $(k tpr -)$, and we get $ 0 -> k ->^0 k^2 ->^0 k -> 0, $ @@ -262,9 +278,9 @@ Now recall that if $A$ is an $R$-module and $r in R$, then $r$ is a *zero-diviso // Koszul resolution -// Let $x in R$ be a central element. Let $K(x)$ be the chain complex +// Let $x in R$ be a central element. Let $K(x)$ be the chain complex // $ // 0->R->^x R ->0 -// $ -// in degrees $0,1$. We call the generator in degree $1$ $e_x$ so $d(e_x) = x$. +// $ +// in degrees $0,1$. We call the generator in degree $1$ $e_x$ so $d(e_x) = x$. diff --git a/ha/b-ext1.typ b/ha/b-ext1.typ index 16d130b..76c8c11 100644 --- a/ha/b-ext1.typ +++ b/ha/b-ext1.typ @@ -6,51 +6,54 @@ == Extensions #definition[ - Let $A$ and $B$ be $R$-modules. An *extension* of $A$ by $B$ is a #sest + Let $A$ and $B$ be $R$-modules. An *extension* of $A$ by $B$ is a #sest $ ses(B, X, A). $ - Two extensions are *equivalent* if there is a commutative diagram + Two extensions are *equivalent* if there is a commutative diagram // #align(center,image("../imgs/2023-11-25-13-22-33.png",width:50%)) // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRGJAF9T1Nd9CKAIzkqtRizYAhLjxAZseAkQBMo6vWatEIABqzeigUQDM68VrYBBA-L5LByACznNknR26H+ylGSFibtrstgo+jiIBGhLBMl52Rr7IalEW7noA5KH2xihmqUHW2YmOLgUxbJ5iMFAA5vBEoABmAE4QALZIZCA4EEhC8a0d-dS9SCqDbZ2Iaj19iCaTwwuj805L0yJzSABs0ZY6ALy2Q9OzY4gA7PvpWHB9G0hm24gAHDfBx4+IAKyru989i9Lt9ri9Xt93i8AJycCicIA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$0$]), - node((0, 1), [$B$]), - node((0, 2), [$X$]), - node((0, 3), [$A$]), - node((0, 4), [$0$]), - node((1, 0), [$0$]), - node((1, 1), [$B$]), - node((1, 2), [$X'$]), - node((1, 3), [$A$]), - node((1, 4), [$0$]), - arr((0, 0), (0, 1), []), - arr((0, 1), (0, 2), []), - arr((0, 2), (0, 3), []), - arr((0, 3), (0, 4), []), - arr((0, 1), (1, 1), [$=$]), - arr((0, 2), (1, 2), [$iso$]), - arr((0, 3), (1, 3), [$=$]), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), []), - arr((1, 2), (1, 3), []), - arr((1, 3), (1, 4), []), -)) - - This is an equivalence relation. We denote $e(A, B)$ as the equivalence classes of extensions of $A$ by $B$. - - - An extension is *split* if it is equivalent to + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$0$]), + node((0, 1), [$B$]), + node((0, 2), [$X$]), + node((0, 3), [$A$]), + node((0, 4), [$0$]), + node((1, 0), [$0$]), + node((1, 1), [$B$]), + node((1, 2), [$X'$]), + node((1, 3), [$A$]), + node((1, 4), [$0$]), + arr((0, 0), (0, 1), []), + arr((0, 1), (0, 2), []), + arr((0, 2), (0, 3), []), + arr((0, 3), (0, 4), []), + arr((0, 1), (1, 1), [$=$]), + arr((0, 2), (1, 2), [$iso$]), + arr((0, 3), (1, 3), [$=$]), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), []), + arr((1, 2), (1, 3), []), + arr((1, 3), (1, 4), []), + ), + ) + + This is an equivalence relation. We denote $e(A, B)$ as the equivalence classes of extensions of $A$ by $B$. + + + An extension is *split* if it is equivalent to $ ses(B, A xor B, A). $ ] #lemma[ - If $Ext^1 (A, B) = 0$, then every extension of $A$ by $B$ is split. + If $Ext^1 (A, B) = 0$, then every extension of $A$ by $B$ is split. ] #proof[ - We look at the #lest of $Ext^ast (A, -)$: + We look at the #lest of $Ext^ast (A, -)$: $ hom (A, X) -> hom (A, A) ->^diff Ext^1 (A, B) = 0. $ @@ -58,131 +61,143 @@ $id_A in hom (A, A)$ can always lift to a splitting $sigma: A -> X$. (It is helpful to recall the proof of @projective-split.) ] -From the above proof, we also see that $diff(id_A) in Ext^1 (A, B)$ is the obstruction to the extension of $A$ by $B$ being split: the extension is split if and only if $id_A$ lifts to some element in $hom (A, X)$, if and only if $0 = diff (id_A)$. +From the above proof, we also see that $diff(id_A) in Ext^1 (A, B)$ is the obstruction to the extension of $A$ by $B$ being split: the extension is split if and only if $id_A$ lifts to some element in $hom (A, X)$, if and only if $0 = diff (id_A)$. #endlec(14) #lemma[ - Let $ses(B, X, A)$ be an extension of $A$ by $B$, and let $k : C -> A$. Then there exists an extension $ses(B, Y, C)$ of $C$ by $B$, unique up to extension equivalence, such that the following diagram commutes: + Let $ses(B, X, A)$ be an extension of $A$ by $B$, and let $k : C -> A$. Then there exists an extension $ses(B, Y, C)$ of $C$ by $B$, unique up to extension equivalence, such that the following diagram commutes: // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRACEQBfU9TXfIRQAmclVqMWbABrdeIDNjwEiAZjHV6zVohABBOXyWCiABg0TtbU4YX9lQ5ABYLWqbps8jAlSjKnxNx0OW0UfR3UAzUlggGFQ+xMRUijLdxAATQTjX2RzVKDrbPCiFwKYoq5xGCgAc3giUAAzACcIAFskADZqHAgkUTTggGtbVo6kAFZe-sRzIbYsKAB9Ti8Qcc7EdRA+pFN1zf2ZpGJDtq2yXdnhc4nEQb3EJzutgHYTxDP5I8Rp66Qb1egM+XWBiAAHJ9JuCegDEABOKpcIA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((1, 1), [$B$]), - node((1, 2), [$X$]), - node((1, 3), [$A$]), - node((1, 0), [$0$]), - node((1, 4), [$0$]), - node((0, 1), [$B$]), - node((0, 3), [$C$]), - node((0, 2), [$Y$]), - node((0, 0), [$0$]), - node((0, 4), [$0$]), - arr((0, 3), (1, 3), [$k$]), - arr((0, 1), (1, 1), [$id_B$]), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), []), - arr((1, 2), (1, 3), []), - arr((1, 3), (1, 4), []), - arr((0, 2), (1, 2), []), - arr((0, 1), (0, 2), []), - arr((0, 2), (0, 3), []), - arr((0, 0), (0, 1), []), - arr((0, 3), (0, 4), []), -)) + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((1, 1), [$B$]), + node((1, 2), [$X$]), + node((1, 3), [$A$]), + node((1, 0), [$0$]), + node((1, 4), [$0$]), + node((0, 1), [$B$]), + node((0, 3), [$C$]), + node((0, 2), [$Y$]), + node((0, 0), [$0$]), + node((0, 4), [$0$]), + arr((0, 3), (1, 3), [$k$]), + arr((0, 1), (1, 1), [$id_B$]), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), []), + arr((1, 2), (1, 3), []), + arr((1, 3), (1, 4), []), + arr((0, 2), (1, 2), []), + arr((0, 1), (0, 2), []), + arr((0, 2), (0, 3), []), + arr((0, 0), (0, 1), []), + arr((0, 3), (0, 4), []), + ), + ) ] #proof[ -@rotman[Lemma 7.29]. + @rotman[Lemma 7.29]. ] #theorem[ - Given $R$-modules $A$ and $B$, the map + Given $R$-modules $A$ and $B$, the map $ - Theta: e(A, B) &-> Ext_R^1 (A, B) \ + Theta: e(A, B) &-> Ext_R^1 (A, B) \ [ses(B, X, A)] &mapsto diff(id_A) $ - is a bijection, and split extensions correspond to $0 in Ext_R^1 (A, B)$. + is a bijection, and split extensions correspond to $0 in Ext_R^1 (A, B)$. ] #proof(title: "Proof sketch")[ - We first show that $Theta$ is surjective. Let $x in Ext^1_R (A, B)$, and we want to construct some extension $xi = (ses(B, X, A))$ such that $Theta(xi) = x$. - Since $RMod$ has enough injectives, we can find a #sest + We first show that $Theta$ is surjective. Let $x in Ext^1_R (A, B)$, and we want to construct some extension $xi = (ses(B, X, A))$ such that $Theta(xi) = x$. + Since $RMod$ has enough injectives, we can find a #sest $ ses(B, I, N, f:j, g: pi), $ - where $I$ is injective and $pi = coker(j)$. Since $I$ is injective, we have $Ext^1_R (A, I) = 0$ by @ext-injective, so the #lest of $Ext$ gives an exact sequence + where $I$ is injective and $pi = coker(j)$. Since $I$ is injective, we have $Ext^1_R (A, I) = 0$ by @ext-injective, so the #lest of $Ext$ gives an exact sequence $ 0 -> homr (A, B) -> homr (A, I) -> homr (A, N) ->^(delta') Ext^1_R (A, B) -> 0. $ Now $delta'$ is surjective, so $x in Ext^1_R (A, B)$ can be lifted to some $beta in homr (A, N)$ such that $delta' (beta) = x$. Now we have the following: // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRACEQBfU9TXfIRQAmclVqMWbAJLdeIDNjwEiAZjHV6zVohAA5OXyWCiABg0TtbU4YX9lQ5ABYLWqbps8jAlSjKnxNx0OW0UfR3UAzUlggEFucRgoAHN4IlAAMwAnCABbJAA2ahwIJFFLdxAAIxgcOltsvKQAVmLSxHMK4KwoAH1OLxBG-MR1EBKkU0HhybakMi62ACsGnJGFicRyoLY0LFWmrbnEJy4KLiA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((1, 1), [$B$]), - node((1, 2), [$I$]), - node((1, 3), [$N$]), - node((1, 0), [$0$]), - node((1, 4), [$0$]), - node((0, 1), [$B$]), - node((0, 3), [$A$]), - arr((0, 3), (1, 3), [$beta$]), - arr((0, 1), (1, 1), [$id_B$]), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), [$j$]), - arr((1, 2), (1, 3), [$pi$]), - arr((1, 3), (1, 4), []), -)) + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((1, 1), [$B$]), + node((1, 2), [$I$]), + node((1, 3), [$N$]), + node((1, 0), [$0$]), + node((1, 4), [$0$]), + node((0, 1), [$B$]), + node((0, 3), [$A$]), + arr((0, 3), (1, 3), [$beta$]), + arr((0, 1), (1, 1), [$id_B$]), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), [$j$]), + arr((1, 2), (1, 3), [$pi$]), + arr((1, 3), (1, 4), []), + ), + ) We now apply @rotman729 to find a commutative diagram with exact rows that completes the above diagram: // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBpiBdUkANwEMAbAVxiRACEQBfU9TXfIRQAmclVqMWbAJLdeIDNjwEiAZjHV6zVohAA5OXyWCiABg0TtbU4YX9lQ5ABYLWqbps8jAlSjKnxNx0OW0UfR3UAzUlggEFQ+xMRUijLdxAADQTjX2RzVKDrbPCiFwKYoq5xGCgAc3giUAAzACcIAFskADZqHAgkUTTggCMYHDpbVo6kAFZe-sRzIbYsKAB9Ti8QKc7EdRA+pFMtnaP5pDJl3QArSbbdy8PEQcLdNCw76efzxCcT+6QAHYfsR-l85gcFoCwbtgZDujCkAAOH4zRGIHrwxAATiqXCAA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((1, 1), [$B$]), - node((1, 2), [$I$]), - node((1, 3), [$N$]), - node((1, 0), [$0$]), - node((1, 4), [$0$]), - node((0, 1), [$B$]), - node((0, 3), [$A$]), - node((0, 2), [$X$]), - node((0, 0), [$0$]), - node((0, 4), [$0$]), - arr((0, 3), (1, 3), [$beta$]), - arr((0, 1), (1, 1), [$id_B$]), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), [$j$]), - arr((1, 2), (1, 3), [$pi$]), - arr((1, 3), (1, 4), []), - arr((0, 2), (1, 2), []), - arr((0, 1), (0, 2), []), - arr((0, 2), (0, 3), []), - arr((0, 0), (0, 1), []), - arr((0, 3), (0, 4), []), -)) + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((1, 1), [$B$]), + node((1, 2), [$I$]), + node((1, 3), [$N$]), + node((1, 0), [$0$]), + node((1, 4), [$0$]), + node((0, 1), [$B$]), + node((0, 3), [$A$]), + node((0, 2), [$X$]), + node((0, 0), [$0$]), + node((0, 4), [$0$]), + arr((0, 3), (1, 3), [$beta$]), + arr((0, 1), (1, 1), [$id_B$]), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), [$j$]), + arr((1, 2), (1, 3), [$pi$]), + arr((1, 3), (1, 4), []), + arr((0, 2), (1, 2), []), + arr((0, 1), (0, 2), []), + arr((0, 2), (0, 3), []), + arr((0, 0), (0, 1), []), + arr((0, 3), (0, 4), []), + ), + ) where the top row is the extension $xi$ we claim to have $Theta(xi) = x$. To prove that it is indeed the case, notice by naturality of the #lest of $Ext$, there is a commutative diagram // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRAAsIBbACgEFSAAj4BKEAF9S6TLnyEUARnJVajFmwCiADxwA9BfyEAhMZOnY8BImQUr6zVog7dDggHKmpIDBblElttT26k7aegYCgiYSKjBQAObwRKAAZgBO3EhKIDgQSADMQWqOIFhQEl7pmYhkOXmI2cElsAw4dBWpGVxItblIAExFDmwARjBtghAQggC0HSBV3YiDdQVDISAtbQDkMeJAA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$homr(A, A)$]), - node((0, 1), [$Ext^1_R (A, B)$]), - node((1, 0), [$homr(A, N)$]), - node((1, 1), [$Ext^1_R (A, B)$]), - arr((0, 1), (1, 1), [$id$]), - arr((0, 0), (0, 1), [$delta$]), - arr((0, 0), (1, 0), [$beta oo -$]), - arr((1, 0), (1, 1), [$delta'$]), -)) - from which we see + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$homr(A, A)$]), + node((0, 1), [$Ext^1_R (A, B)$]), + node((1, 0), [$homr(A, N)$]), + node((1, 1), [$Ext^1_R (A, B)$]), + arr((0, 1), (1, 1), [$id$]), + arr((0, 0), (0, 1), [$delta$]), + arr((0, 0), (1, 0), [$beta oo -$]), + arr((1, 0), (1, 1), [$delta'$]), + ), + ) + from which we see $ Theta(xi) = delta(id_A) = delta'((beta oo -)(id_A)) = delta'(beta) = x. $ Thus we have shown $Theta$ is surjective. - Now again by @rotman729, the extension $xi$ we have constructed is unique up to equivalence, so we have effectively constructed a well-defined map + Now again by @rotman729, the extension $xi$ we have constructed is unique up to equivalence, so we have effectively constructed a well-defined map $ Phi : Ext^1_R (A, B) -> e(A, B) $ - with $Theta(Phi(x)) = x$ (if we can show that $Phi$ is independent of the choices of $I$ and $beta$). - - The rest of the proof is to show that $Phi(Theta([xi])) = [xi]$ for any extension class $[xi] in e(A, B)$. + with $Theta(Phi(x)) = x$ (if we can show that $Phi$ is independent of the choices of $I$ and $beta$). + + The rest of the proof is to show that $Phi(Theta([xi])) = [xi]$ for any extension class $[xi] in e(A, B)$. ] == Baer Sum @@ -190,28 +205,36 @@ From the above proof, we also see that $diff(id_A) in Ext^1 (A, B)$ is the obstr When a set $X$ has a bijection with the underlying map of a group $G$, then in general $X$ can be also equipped with a group structure. We are therefore interested in characterising the group structure on $e(A, B)$, in view of its bijection with the group $Ext^1(A, B)$. The natural addition operation on $e(A, B)$ was first explicitly ascertained by R. Baer. #definition[ -Let -$ xi_1 colon 0 arrow.r B arrow.r^(i_1) X_1 arrow.r^(pi_1) A arrow.r 0 comma quad xi_2 colon 0 arrow.r B arrow.r^(i_2) X_2 arrow.r^(pi_2) A arrow.r 0 $ -be extensions of $A$ by $B$. Let -$ X^(prime prime) eq X_1 times_A X_2 eq lr({lr((x_1 comma x_2)) in X_1 times X_2 colon pi_1 lr((x_1)) eq pi_2 lr((x_2))}) $ -and let -$ Y eq X^(prime prime) / lr({lr((i_1 lr((b)) comma minus i_2 lr((b)))) colon b in B}). $ Then the sequence $ 0 arrow.r B arrow.r^i Y arrow.r^pi A arrow.r 0 $ is -called the *Baer sum* of $xi$ and $xi^prime$, where we have maps -$ i colon B &arrow.r Y \ b &arrow.r.bar lr((i_1 lr((b)) comma 0)) $ -and -$ pi colon Y &arrow.r A \ lr((x_1 comma x_2)) &arrow.r.bar pi_1 lr((x_1)) plus pi_2 lr((x_2)). $ + Let + $ + xi_1 colon 0 arrow.r B arrow.r^(i_1) X_1 arrow.r^(pi_1) A arrow.r 0 comma quad xi_2 colon 0 arrow.r B arrow.r^(i_2) X_2 arrow.r^(pi_2) A arrow.r 0 + $ + be extensions of $A$ by $B$. Let + $ + X^(prime prime) eq X_1 times_A X_2 eq lr({lr((x_1 comma x_2)) in X_1 times X_2 colon pi_1 lr((x_1)) eq pi_2 lr((x_2))}) + $ + and let + $ + Y eq X^(prime prime) / lr({lr((i_1 lr((b)) comma minus i_2 lr((b)))) colon b in B}). + $ Then the sequence $ 0 arrow.r B arrow.r^i Y arrow.r^pi A arrow.r 0 $ is + called the *Baer sum* of $xi$ and $xi^prime$, where we have maps + $ i colon B &arrow.r Y \ b &arrow.r.bar lr((i_1 lr((b)) comma 0)) $ + and + $ + pi colon Y &arrow.r A \ lr((x_1 comma x_2)) &arrow.r.bar pi_1 lr((x_1)) plus pi_2 lr((x_2)). + $ ] #lemma[ -The Baer sum is -a well-defined extension of $A$ by $B$. + The Baer sum is + a well-defined extension of $A$ by $B$. ] #lemma[ The set of -equivalence classes of extensions of $A$ by $B$ is an abelian group -under the Baer sum, and the map $Theta$ is an isomorphism of abelian -groups. + equivalence classes of extensions of $A$ by $B$ is an abelian group + under the Baer sum, and the map $Theta$ is an isomorphism of abelian + groups. ] @@ -223,49 +246,54 @@ in any abelian category, not necessarily with enough projectives or injectives. We call this the Yoneda $Ext$ group. #definition[ -We define the Yoneda $"Ext"^n lr((A comma B))$ to be the -equivalence classes of exact sequences - -$ xi colon 0 arrow.r B arrow.r X_n arrow.r dots.h arrow.r X_1 arrow.r A arrow.r 0 $ - -under the equivalence relation generated by $xi tilde.op xi^prime$ if -there is a diagram - -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRGJAF9T1Nd9CKAIzkqtRizYAhLjxAZseAkQBMo6vWatEIABoB9Qt16KBRAMzrxWtgDp7sk-2UoALFc2SdBoY-l8lQWQAVg8JbRAAQT8FZyCANjCbHQ5jf1MXElIhMU8I1LlYwKIRHI1w6RiAsxQ1MusvPQByQyqMoMt6vLsHNKKa5Hcuiu8W3z7qzNDh5Ki2uKJEmcbUsRgoAHN4IlAAMwAnCABbJDIQHAgkITSD46vqC6QVG8OTxDVzy8RzF7vvh6+rl+b3cnyQwWB4IBSHikMQAHZoYgABxw5FIgCccIxSKExDheNx1zktzeQhEYMQQmeJNeVw+jypP1pfwpjPRDQiAF4-KSnpi4aDGeS4aFKdTyrMeZwKJwgA -#align(center, commutative-diagram( - node-padding: (50pt, 50pt), - node((0, 0), [$0$]), - node((0, 1), [$B$]), - node((0, 2), [$X_n$]), - node((0, 3), [$...$]), - node((0, 4), [$X_1$]), - node((0, 5), [$A$]), - node((0, 6), [$0$]), - node((1, 0), [$0$]), - node((1, 1), [$B$]), - node((1, 2), [$X'_n$]), - node((1, 3), [$...$]), - node((1, 4), [$X'_1$]), - node((1, 5), [$A$]), - node((1, 6), [$0$]), - arr((0, 0), (0, 1), []), - arr((0, 1), (0, 2), []), - arr((0, 2), (0, 3), []), - arr((0, 3), (0, 4), []), - arr((0, 4), (0, 5), []), - arr((0, 5), (0, 6), []), - arr((1, 0), (1, 1), []), - arr((1, 1), (1, 2), []), - arr((1, 2), (1, 3), []), - arr((1, 3), (1, 4), []), - arr((1, 4), (1, 5), []), - arr((1, 5), (1, 6), []), - arr((0, 1), (1, 1), [$=$]), - arr((0, 2), (1, 2), []), - arr((0, 4), (1, 4), []), - arr((0, 5), (1, 5), [$=$]), -)) -// #align(center, img("2023_10_29_1d9afce33fbce6757ca2g-099(1)", width: 80%)) + We define the Yoneda $"Ext"^n lr((A comma B))$ to be the + equivalence classes of exact sequences + + $ + xi colon 0 arrow.r B arrow.r X_n arrow.r dots.h arrow.r X_1 arrow.r A arrow.r 0 + $ + + under the equivalence relation generated by $xi tilde.op xi^prime$ if + there is a diagram + + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRGJAF9T1Nd9CKAIzkqtRizYAhLjxAZseAkQBMo6vWatEIABoB9Qt16KBRAMzrxWtgDp7sk-2UoALFc2SdBoY-l8lQWQAVg8JbRAAQT8FZyCANjCbHQ5jf1MXElIhMU8I1LlYwKIRHI1w6RiAsxQ1MusvPQByQyqMoMt6vLsHNKKa5Hcuiu8W3z7qzNDh5Ki2uKJEmcbUsRgoAHN4IlAAMwAnCABbJDIQHAgkITSD46vqC6QVG8OTxDVzy8RzF7vvh6+rl+b3cnyQwWB4IBSHikMQAHZoYgABxw5FIgCccIxSKExDheNx1zktzeQhEYMQQmeJNeVw+jypP1pfwpjPRDQiAF4-KSnpi4aDGeS4aFKdTyrMeZwKJwgA + #align( + center, + commutative-diagram( + node-padding: (50pt, 50pt), + node((0, 0), [$0$]), + node((0, 1), [$B$]), + node((0, 2), [$X_n$]), + node((0, 3), [$...$]), + node((0, 4), [$X_1$]), + node((0, 5), [$A$]), + node((0, 6), [$0$]), + node((1, 0), [$0$]), + node((1, 1), [$B$]), + node((1, 2), [$X'_n$]), + node((1, 3), [$...$]), + node((1, 4), [$X'_1$]), + node((1, 5), [$A$]), + node((1, 6), [$0$]), + arr((0, 0), (0, 1), []), + arr((0, 1), (0, 2), []), + arr((0, 2), (0, 3), []), + arr((0, 3), (0, 4), []), + arr((0, 4), (0, 5), []), + arr((0, 5), (0, 6), []), + arr((1, 0), (1, 1), []), + arr((1, 1), (1, 2), []), + arr((1, 2), (1, 3), []), + arr((1, 3), (1, 4), []), + arr((1, 4), (1, 5), []), + arr((1, 5), (1, 6), []), + arr((0, 1), (1, 1), [$=$]), + arr((0, 2), (1, 2), []), + arr((0, 4), (1, 4), []), + arr((0, 5), (1, 5), [$=$]), + ), + ) + // #align(center, img("2023_10_29_1d9afce33fbce6757ca2g-099(1)", width: 80%)) ] Note that the arrows $X_i arrow.r X_i^prime$ do not have to be @@ -273,114 +301,128 @@ isomorphisms. At first glance, this seems different to our previous definition o equivalence for extensions of $A$ by $B$. However, by the Five Lemma, when $n = 1$, the morphism $X_1 -> X'_1$ is necessarily an isomorphism. #definition[ -We again define a notion of a Baer sum. Let $xi$ and $xi^prime$ be -representatives of elements of $"Ext"^n lr((A comma B))$. Let -$X_1^(prime prime)$ be the pullback of -// https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQANAfWJAF9S6TLnyEUZYtTpNW7AIL9BIDNjwEi5UpJoMWbRJx4ByflJhQA5vCKgAZgCcIAWySaQOCEmIC7jl4gAmGg8vPko+IA -#align(center, commutative-diagram( - node-padding: (40pt, 40pt), - node((0, 1), [$X_1$]), - node((1, 1), [$A$]), - node((1, 0), [$X'_1$]), - arr((0, 1), (1, 1), []), - arr((1, 0), (1, 1), []), -)) -// #block[ -// #box(width: textwidth, img("2023_10_29_1d9afce33fbce6757ca2g-099(2)", width: 15%)) - -// ] -and let $X_n^(prime prime)$ be the pushout of - // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRACEQBfU9TXfIRQBGclVqMWbABoB9Qjz7Y8BImWHj6zVohDSA5PO7iYUAObwioAGYAnCAFskZEDghJhikHcfPqbpAAmLgouIA -#align(center, commutative-diagram( - node-padding: (40pt, 40pt), - node((0, 0), [$B$]), - node((0, 1), [$X_n$]), - node((1, 0), [$X'_n$]), - arr((0, 0), (0, 1), []), - arr((0, 0), (1, 0), []), -)) -// #block[ -// #box(width: textwidth, img("2023_10_29_1d9afce33fbce6757ca2g-099", width: 15%)) - -// ] -Let $Y_n$ be the quotient of $X_n^(prime prime)$ by the antidiagonal. -Then the Baer sum is + We again define a notion of a Baer sum. Let $xi$ and $xi^prime$ be + representatives of elements of $"Ext"^n lr((A comma B))$. Let + $X_1^(prime prime)$ be the pullback of + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZARgBoAGAXVJADcBDAGwFcYkQANAfWJAF9S6TLnyEUZYtTpNW7AIL9BIDNjwEi5UpJoMWbRJx4ByflJhQA5vCKgAZgCcIAWySaQOCEmIC7jl4gAmGg8vPko+IA + #align( + center, + commutative-diagram( + node-padding: (40pt, 40pt), + node((0, 1), [$X_1$]), + node((1, 1), [$A$]), + node((1, 0), [$X'_1$]), + arr((0, 1), (1, 1), []), + arr((1, 0), (1, 1), []), + ), + ) + // #block[ + // #box(width: textwidth, img("2023_10_29_1d9afce33fbce6757ca2g-099(2)", width: 15%)) + + // ] + and let $X_n^(prime prime)$ be the pushout of + // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZABgBpiBdUkANwEMAbAVxiRACEQBfU9TXfIRQBGclVqMWbABoB9Qjz7Y8BImWHj6zVohDSA5PO7iYUAObwioAGYAnCAFskZEDghJhikHcfPqbpAAmLgouIA + #align( + center, + commutative-diagram( + node-padding: (40pt, 40pt), + node((0, 0), [$B$]), + node((0, 1), [$X_n$]), + node((1, 0), [$X'_n$]), + arr((0, 0), (0, 1), []), + arr((0, 0), (1, 0), []), + ), + ) + // #block[ + // #box(width: textwidth, img("2023_10_29_1d9afce33fbce6757ca2g-099", width: 15%)) + + // ] + Let $Y_n$ be the quotient of $X_n^(prime prime)$ by the antidiagonal. + Then the Baer sum is -$ 0 arrow.r B arrow.r Y_n arrow.r X_(n minus 1) xor X_(n minus 1)^prime arrow.r dots.h arrow.r X_2 xor X_2^prime arrow.r X_1^(prime prime) arrow.r A arrow.r 0. $ + $ + 0 arrow.r B arrow.r Y_n arrow.r X_(n minus 1) xor X_(n minus 1)^prime arrow.r dots.h arrow.r X_2 xor X_2^prime arrow.r X_1^(prime prime) arrow.r A arrow.r 0. + $ ] Suppose that $cal(A)$ has enough projectives and $P_bullet arrow.r A$ is a projective resolution. Consider the diagram // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZANgBoAGAXVJADcBDAGwFcYkQBBEAX1PU1z5CKMgEZqdJq3Zde-bHgJEA7BQkMWbRCHI8+IDAqErS4mhunbdcgwMXDkAVlPqpWkAA0A+tf2HBSigALC7mbuwAdFF68gEOAMyhkprs3oQ2-vZEAExJFu4AQjG2RoFOamEp2gAKPsWZxsEVyZYgURH1do3IiVSVrbUAFGAAtKIAlJ2lDrl9Le616X5dZaLN+exDYADUE1NxROTr4drt+1koa2bz7NYSMFAA5vBEoABmAE4QALZIookgHAQP7ZGyfH4gmhAv6iMFfX6IURrQHAxHkOEQtFQ1EATgxCJx2KQAA58SSiYh0fpwQijiikKDqfCkHToYj+u4ALzFGlIZz0xBBMmIMgCxzC1QC4jC0QhAXKYVytmwpmY5Fs+LcSjcIA -#align(center, commutative-diagram( +#align( + center, + commutative-diagram( node-padding: (40pt, 40pt), - node((0, 6), [$A$]), - node((1, 6), [$A$]), - node((0, 7), [$0$]), - node((1, 7), [$0$]), - node((1, 5), [$X_0$]), - node((1, 4), [$...$]), - node((1, 3), [$X_n$]), - node((1, 2), [$B$]), - node((0, 5), [$P_0$]), - node((0, 4), [$...$]), - node((0, 3), [$P_(n-1)$]), - node((0, 2), [$P_n$]), - node((0, 1), [$P_(n+1)$]), - node((0, 0), [$...$]), - node((1, 1), [$0$]), - arr((0, 0), (0, 1), []), - arr((0, 1), (0, 2), []), - arr((0, 2), (0, 3), []), - arr((0, 3), (0, 4), []), - arr((0, 4), (0, 5), []), - arr((0, 5), (0, 6), []), - arr((0, 6), (0, 7), []), - arr((0, 6), (1, 6), [$=$]), - arr((1, 4), (1, 5), []), - arr((1, 3), (1, 4), []), - arr((1, 2), (1, 3), []), - arr((1, 1), (1, 2), []), - arr((1, 5), (1, 6), []), - arr((1, 6), (1, 7), []), -)) + node((0, 6), [$A$]), + node((1, 6), [$A$]), + node((0, 7), [$0$]), + node((1, 7), [$0$]), + node((1, 5), [$X_0$]), + node((1, 4), [$...$]), + node((1, 3), [$X_n$]), + node((1, 2), [$B$]), + node((0, 5), [$P_0$]), + node((0, 4), [$...$]), + node((0, 3), [$P_(n-1)$]), + node((0, 2), [$P_n$]), + node((0, 1), [$P_(n+1)$]), + node((0, 0), [$...$]), + node((1, 1), [$0$]), + arr((0, 0), (0, 1), []), + arr((0, 1), (0, 2), []), + arr((0, 2), (0, 3), []), + arr((0, 3), (0, 4), []), + arr((0, 4), (0, 5), []), + arr((0, 5), (0, 6), []), + arr((0, 6), (0, 7), []), + arr((0, 6), (1, 6), [$=$]), + arr((1, 4), (1, 5), []), + arr((1, 3), (1, 4), []), + arr((1, 2), (1, 3), []), + arr((1, 1), (1, 2), []), + arr((1, 5), (1, 6), []), + arr((1, 6), (1, 7), []), + ), +) By @comparison, there is a chain map from the top row to the bottom row lifting id : $A arrow.r A$. Setting $M eq Ker d_n^(lr((P)))$ gives a diagram // https://t.yw.je/#N4Igdg9gJgpgziAXAbVABwnAlgFyxMJZAVgBoAGAXVJADcBDAGwFcYkQBBEAX1PU1z5CKMgEZqdJq3Zde-bHgJEAbBQkMWbRCHI8+IDAqErS4mhunbdcgwMXDkAFlPqpWkAA0A+tf2HBSigAzC7mbuwAdFF68gEOAEyhkprs3oQ2-vZEokkW7gBCMbZGgU5qYSnaAAo+RZnGweXJliBREXV2DciJVBUtNQAUYAC0ogCUHSUOOb3N7gCyk3FE5E157L6xWSirZnMbPBIwUADm8ESgAGYAThAAtkiiiSA4EI+iNjf37zSvj+SfW4PRCiVYvN6IACcgO+UN+EIAHDDgQj4UgAfovsCwX9EPFkei0SC+u4ALxFLFIMjgpCOAmIVQ0xDEekAdiJynpohCTNZ9OcTI+mKBjyJQS5OV5JPYACMYDh6BSRSCcRDOcLYaimXTKNwgA -#align(center, commutative-diagram( +#align( + center, + commutative-diagram( node-padding: (40pt, 40pt), - node((0, 5), [$A$]), - node((1, 5), [$A$]), - node((0, 6), [$0$]), - node((1, 6), [$0$]), - node((1, 4), [$X_0$]), - node((1, 3), [$...$]), - node((1, 2), [$X_n$]), - node((1, 1), [$B$]), - node((0, 4), [$P_0$]), - node((0, 3), [$...$]), - node((0, 2), [$P_(n-1)$]), - node((0, 1), [$M$]), - node((0, 0), [$0$]), - node((1, 0), [$0$]), - arr((0, 0), (0, 1), []), - arr((0, 1), (0, 2), []), - arr((0, 2), (0, 3), []), - arr((0, 3), (0, 4), []), - arr((0, 4), (0, 5), []), - arr((0, 5), (0, 6), []), - arr((0, 5), (1, 5), [$=$]), - arr((1, 3), (1, 4), []), - arr((1, 2), (1, 3), []), - arr((1, 1), (1, 2), []), - arr((1, 0), (1, 1), []), - arr((1, 4), (1, 5), []), - arr((1, 5), (1, 6), []), - arr((0, 1), (1, 1), [$beta$]), - arr((0, 2), (1, 2), []), - arr((0, 4), (1, 4), []), -)) + node((0, 5), [$A$]), + node((1, 5), [$A$]), + node((0, 6), [$0$]), + node((1, 6), [$0$]), + node((1, 4), [$X_0$]), + node((1, 3), [$...$]), + node((1, 2), [$X_n$]), + node((1, 1), [$B$]), + node((0, 4), [$P_0$]), + node((0, 3), [$...$]), + node((0, 2), [$P_(n-1)$]), + node((0, 1), [$M$]), + node((0, 0), [$0$]), + node((1, 0), [$0$]), + arr((0, 0), (0, 1), []), + arr((0, 1), (0, 2), []), + arr((0, 2), (0, 3), []), + arr((0, 3), (0, 4), []), + arr((0, 4), (0, 5), []), + arr((0, 5), (0, 6), []), + arr((0, 5), (1, 5), [$=$]), + arr((1, 3), (1, 4), []), + arr((1, 2), (1, 3), []), + arr((1, 1), (1, 2), []), + arr((1, 0), (1, 1), []), + arr((1, 4), (1, 5), []), + arr((1, 5), (1, 6), []), + arr((0, 1), (1, 1), [$beta$]), + arr((0, 2), (1, 2), []), + arr((0, 4), (1, 4), []), + ), +) // #block[ // #box(width: textwidth, img("2023_10_29_1d9afce33fbce6757ca2g-100", width: 80%)) @@ -388,6 +430,6 @@ $M eq Ker d_n^(lr((P)))$ gives a diagram with exact rows. #proposition[There is a natural isomorphism between Yoneda -$Ext ^n$ and the standard $"Ext"^n$.] + $Ext ^n$ and the standard $"Ext"^n$.] diff --git a/ha/c-gc.typ b/ha/c-gc.typ index 596daad..ce89cd7 100644 --- a/ha/c-gc.typ +++ b/ha/c-gc.typ @@ -6,13 +6,13 @@ == Definitions #definition[ - Let $G$ be a group. A *(left) $G$-module* is an abelian group $A$ together with a left group action $rho: G times A -> A$, with $rho(g, a)$ denoted as $g dot a$, such that + Let $G$ be a group. A *(left) $G$-module* is an abelian group $A$ together with a left group action $rho: G times A -> A$, with $rho(g, a)$ denoted as $g dot a$, such that $ g dot (a_1 + a_2) = g dot a_1 + g dot a_2 $ - for all $g in G$ and $a_1, a_2 in A$. + for all $g in G$ and $a_1, a_2 in A$. - A *morphism* $A -> B$ of $G$-modules (or a *$G$-map*) is an abelian group homomorphism (i.e., $ZZ$-linear map) $phi: A -> B$ such that + A *morphism* $A -> B$ of $G$-modules (or a *$G$-map*) is an abelian group homomorphism (i.e., $ZZ$-linear map) $phi: A -> B$ such that $ phi(g dot a) = g dot phi (a) $ @@ -28,93 +28,97 @@ $ where $f_g in ZZ$ is non-zero for only fintely many $g in G$. $ZZ G$ is a ring because the product of two elements of $ZZ G$ is well-defined. ] - #lemma[ - There is an equivalence of categories $GMod iso ZGMod$. - ] +#lemma[ + There is an equivalence of categories $GMod iso ZGMod$. +] This implies that $G$-modules can be seen as a special case of $R$-modules, so all the homological algebra we have developed applies. - // This indicates that $GMod$ is also an abelian category (which we love). - - #definition[ - A $G$-module is *trivial* if $g dot a = a$ for all $g in G$ and $a in A$. - We define a functor $triv: Ab -> GMod$ by sending an abelian group $A$ to a trivial $G$-module $A$. - ] - - #definition[ - Let $A in GMod$. Then the submodule of *invariants* of $A$ is - $ - A^G = {a in A : g dot a = a "for all" g in G} - $ - and the module of *coinvariants* of $A$ is - $ - A_G = A over angle.l g dot a - a : g in G, a in A angle.r. - $ - ] - - #lemma[ - $-^G$ and $-_G$ are functors $GMod -> Ab$. - ] - - #lemma[ - We have adjunctions - $ - -_G tack.l triv tack.l -^G. - $ - ] - #proof[ - We first show - $ - hom_G (triv(A), B) iso hom_Ab (A, B^G) - $ - Take any $f : triv(A) -> B$, then $f$ is a group homomorphism $A -> B$ such that $f(g dot a) = g dot f(a)$ for all $g in G$ and $a in A$. But $g dot a = a$ due to triviality and hence $f(a) = g dot f(a)$, i.e. $f(a) in B^G$ for all $a$. Then $f$ is equivalent to a group homomorphism $A -> B^G$. - - Now we prove - $ - hom_Ab (A_G, B) iso homg (A, triv(B)) - $ - Take any $h : A -> triv(B)$, then $h$ is a group homomorphism $A -> B$ such that for all $g in G$ and $a in A$, $ h (g dot a) = g dot h(a) = h(a) <=> h(g dot a - a) = 0 <=> g dot a - a in Ker(h) $ - which means $h$ is equivalent to a group homomorphism $A_G -> B$. - ] - - #corollary[ - The functor $-_G : GMod -> Ab$ is right exact and the functor $-^G : GMod -> Ab$ is left exact. - ] - - #lemma[ - Let $A$ be any $G$-module and let $ZZ$ be the trivial $G$-module. Then - $ - A_G iso ZZ tpzg A - $ - and - $ - A^G iso hom_(ZZ G) (ZZ , A). - $ - ] - #remark[ - In other words, $(-_G) = (ZZ tpzg -) = (- tpzg ZZ)$ (because the ring $ZZ G$ is commutative) and $(-^G )= hom_(ZZ G) (ZZ, -)$. - ] - #proof[ - We observe that the trivial module functor $triv: ZMod -> ZGMod$ can be seen as the functor -$"Hom"_(bb(Z)) lr((bb(Z) comma minus))$, where we consider $bb(Z)$ as a $bb(Z)$-$ bb(Z) G$ bimodule. By @tensor-right-exact-2, -$(bb(Z) times.circle_(bb(Z) G) -)$ is its left adjoint, which must -agree with its other left adjoint $minus_G$. (See an alternative proof in @notes[Lemma 13.9].) - -For the second claim: -$A^G tilde.equiv "Hom"_(Ab) lr((bb(Z) comma A^G)) tilde.equiv$ -$"Hom"_G lr((bb(Z) comma A))$. - ] +// This indicates that $GMod$ is also an abelian category (which we love). +#definition[ + A $G$-module is *trivial* if $g dot a = a$ for all $g in G$ and $a in A$. + We define a functor $triv: Ab -> GMod$ by sending an abelian group $A$ to a trivial $G$-module $A$. +] #definition[ -Let $A$ be a $G$-module. We define the *homology groups of + Let $A in GMod$. Then the submodule of *invariants* of $A$ is + $ + A^G = {a in A : g dot a = a "for all" g in G} + $ + and the module of *coinvariants* of $A$ is + $ + A_G = A over angle.l g dot a - a : g in G, a in A angle.r. + $ +] + +#lemma[ + $-^G$ and $-_G$ are functors $GMod -> Ab$. +] + +#lemma[ + We have adjunctions + $ + -_G tack.l triv tack.l -^G. + $ +] +#proof[ + We first show + $ + hom_G (triv(A), B) iso hom_Ab (A, B^G) + $ + Take any $f : triv(A) -> B$, then $f$ is a group homomorphism $A -> B$ such that $f(g dot a) = g dot f(a)$ for all $g in G$ and $a in A$. But $g dot a = a$ due to triviality and hence $f(a) = g dot f(a)$, i.e. $f(a) in B^G$ for all $a$. Then $f$ is equivalent to a group homomorphism $A -> B^G$. + + Now we prove + $ + hom_Ab (A_G, B) iso homg (A, triv(B)) + $ + Take any $h : A -> triv(B)$, then $h$ is a group homomorphism $A -> B$ such that for all $g in G$ and $a in A$, $ h (g dot a) = g dot h(a) = h(a) <=> h(g dot a - a) = 0 <=> g dot a - a in Ker(h) $ + which means $h$ is equivalent to a group homomorphism $A_G -> B$. +] + +#corollary[ + The functor $-_G : GMod -> Ab$ is right exact and the functor $-^G : GMod -> Ab$ is left exact. +] + +#lemma[ + Let $A$ be any $G$-module and let $ZZ$ be the trivial $G$-module. Then + $ + A_G iso ZZ tpzg A + $ + and + $ + A^G iso hom_(ZZ G) (ZZ , A). + $ +] +#remark[ + In other words, $(-_G) = (ZZ tpzg -) = (- tpzg ZZ)$ (because the ring $ZZ G$ is commutative) and $(-^G )= hom_(ZZ G) (ZZ, -)$. +] +#proof[ + We observe that the trivial module functor $triv: ZMod -> ZGMod$ can be seen as the functor + $"Hom"_(bb(Z)) lr((bb(Z) comma minus))$, where we consider $bb(Z)$ as a $bb(Z)$-$ bb(Z) G$ bimodule. By @tensor-right-exact-2, + $(bb(Z) times.circle_(bb(Z) G) -)$ is its left adjoint, which must + agree with its other left adjoint $minus_G$. (See an alternative proof in @notes[Lemma 13.9].) + + For the second claim: + $A^G tilde.equiv "Hom"_(Ab) lr((bb(Z) comma A^G)) tilde.equiv$ + $"Hom"_G lr((bb(Z) comma A))$. +] + + +#definition[ + Let $A$ be a $G$-module. We define the *homology groups of $G$ with coefficients in $A$* as the left derived functors of $(-^G)$: -$ H_ast lr((G , A)) = L_ast lr((minus^ G)) lr((A)) tilde.equiv "Tor"_ast^(bb(Z) G) lr((bb(Z) comma A)). $ -By definition, $H_0 lr((G , A)) eq A_G$. + $ + H_ast lr((G , A)) = L_ast lr((minus^ G)) lr((A)) tilde.equiv "Tor"_ast^(bb(Z) G) lr((bb(Z) comma A)). + $ + By definition, $H_0 lr((G , A)) eq A_G$. -Similarly, we define the *cohomology groups of + Similarly, we define the *cohomology groups of $G$ with coefficients in $A$* as the right derived functors of $(-_G)$: -$ H^ast lr((G , A)) = R^ast lr((-_G)) lr((A)) tilde.equiv "Ext"_(bb(Z) G)^ast lr((bb(Z) comma A)). $ -By definition, $H^0 (G, A) = A^G$. + $ + H^ast lr((G , A)) = R^ast lr((-_G)) lr((A)) tilde.equiv "Ext"_(bb(Z) G)^ast lr((bb(Z) comma A)). + $ + By definition, $H^0 (G, A) = A^G$. ] #notation[ @@ -128,25 +132,25 @@ By definition, $H^0 (G, A) = A^G$. == First Homology #note[ -Recall the *commutator subgroup* of a group $G$ is defined as -$ - [G, G] := angle.l g^(-1) h^(-1) g h : g , h in G angle.r -$ -and the *abelianisation* of $G$ is $G over [G, G]$. + Recall the *commutator subgroup* of a group $G$ is defined as + $ + [G, G] := angle.l g^(-1) h^(-1) g h : g , h in G angle.r + $ + and the *abelianisation* of $G$ is $G over [G, G]$. ] -The aim is of this section is to show that $H_1 (G, ZZ) iso G over [G, G]$ for any group $G$. +The aim is of this section is to show that $H_1 (G, ZZ) iso G over [G, G]$ for any group $G$. #definition[ - The *augmentation ideal* $frak(J)$ of $ZZ G$ is defined as the kernel of the ring map + The *augmentation ideal* $frak(J)$ of $ZZ G$ is defined as the kernel of the ring map $ - epsilon: ZZ G &-> ZZ \ - sum_(g in G) f_g g &|-> sum_(g in G) f_g. + epsilon: ZZ G &-> ZZ \ + sum_(g in G) f_g g &|-> sum_(g in G) f_g. $ ] #remark[ - $epsilon$ is obviously a surjection, so $ZZ iso ZZ G over fJ$. Moreover, $epsilon$ can be considered as the start of a resolution of $ZZ$. + $epsilon$ is obviously a surjection, so $ZZ iso ZZ G over fJ$. Moreover, $epsilon$ can be considered as the start of a resolution of $ZZ$. ] #lemma[ @@ -159,8 +163,7 @@ The aim is of this section is to show that $H_1 (G, ZZ) iso G over [G, G]$ for a #lemma[ For any $G$-module $A$, - $H_0(G, A) = A_G iso A over fJ A. - $ + $H_0(G, A) = A_G iso A over fJ A.$ ] #proof[ $A_G iso ZZ tpzg A iso (ZZ G over fJ) tpzg A iso A over fJ A$, where we use the definition of $fJ$ and @tensor-ideal. @@ -168,7 +171,7 @@ The aim is of this section is to show that $H_1 (G, ZZ) iso G over [G, G]$ for a #example[ Regarding $ZZ$, $ZZ G$ and $fJ$ as $G$-modules, we have $H_0 (G, ZZ) = ZZ over fJ ZZ = ZZ$, $H_0 (G, ZZ G) = ZZ G over fJ iso ZZ$, and $H_0 (G, fJ) = fJ over fJ^2$. ] - + #lemma[ $fJ over fJ^2 iso G over [G, G]$. @@ -178,30 +181,30 @@ The aim is of this section is to show that $H_1 (G, ZZ) iso G over [G, G]$ for a ] #proof[ Define map $ - theta : G &-> fJ over fJ^2 \ + theta : G &-> fJ over fJ^2 \ g &|-> g - 1 + fJ^2. $ - Take any $a, b in G$, then we have + Take any $a, b in G$, then we have $ - theta(a b) = a b - 1 + fJ^2 = a b - 1 - (a - 1) (b - 1) + fJ^2 = (a - 1) + (b-1) +fJ^2 = theta(a) +theta(b), + theta(a b) = a b - 1 + fJ^2 = a b - 1 - (a - 1) (b - 1) + fJ^2 = (a - 1) + (b-1) +fJ^2 = theta(a) +theta(b), $ - so $theta$ is a group homomorphism. Since $fJ over fJ^2$ is abelian, we have + so $theta$ is a group homomorphism. Since $fJ over fJ^2$ is abelian, we have $ theta(a b a^(-1) b^(-1)) = theta(a) + theta(b) - theta(a) - theta(b) = 0, $ - so $[G, G] subset.eq Ker theta$, and $theta$ descends to a homomorphism + so $[G, G] subset.eq Ker theta$, and $theta$ descends to a homomorphism $macron(theta) : G over [G, G] -> fJ over fJ^2$. Define group homomorphism $sigma : fJ &-> G over [G, G]$ linearly expanded by $ n(g - 1) &|-> g^n [G, G ]. $ - Then for $a, b in G$, we have + Then for $a, b in G$, we have $ - sigma((a - 1) (b - 1)) = sigma(a b - 1 - (a-1) - (b-1)) = a b a^(-1) b^(-1) [G, G] = [G, G]. + sigma((a - 1) (b - 1)) = sigma(a b - 1 - (a-1) - (b-1)) = a b a^(-1) b^(-1) [G, G] = [G, G]. $ - So $sigma$ descends to a homomorphism $macron(sigma) : fJ over fJ^2 -> G over [G, G]$. + So $sigma$ descends to a homomorphism $macron(sigma) : fJ over fJ^2 -> G over [G, G]$. The result thus follows from the obvious fact that $macron(sigma)$ and $macron(theta)$ are mutual inverses. ] @@ -214,78 +217,82 @@ The aim is of this section is to show that $H_1 (G, ZZ) iso G over [G, G]$ for a // We can define topological space $B G$, the classifying space of $G$ (there is a simplicial object $B . G$ ...?), $H^ast (G, A) = H^ast_"sing" (B G , A)$, because $pi_1(B G, ast) = G$ and $H_1 = pi_1^Ab = G over [G, G] = G^Ab$. This is the meaning of the theorem. // ] #proof[ -We have a short exact sequence + We have a short exact sequence -$ 0 arrow.r fJ arrow.r bb(Z) G arrow.r^epsilon bb(Z) arrow.r 0 $ + $ 0 arrow.r fJ arrow.r bb(Z) G arrow.r^epsilon bb(Z) arrow.r 0 $ -of $G$-modules, where $ZZ$ is viewed as a trivial $G$-module. The #lest of $"Tor"_ast^(bb(Z) G)$ gives + of $G$-modules, where $ZZ$ is viewed as a trivial $G$-module. The #lest of $"Tor"_ast^(bb(Z) G)$ gives -$ H_1 lr((G , bb(Z) G)) arrow.r H_1 lr((G , bb(Z))) arrow.r fJ_G arrow.r lr((bb(Z) G))_G arrow.r^(epsilon_ast) bb(Z)_G arrow.r 0. $ + $ + H_1 lr((G , bb(Z) G)) arrow.r H_1 lr((G , bb(Z))) arrow.r fJ_G arrow.r lr((bb(Z) G))_G arrow.r^(epsilon_ast) bb(Z)_G arrow.r 0. + $ -Since $bb(Z) G$ is a projective and thus flat $bb(Z) G$-module, we have -$H_1 lr((G , bb(Z) G)) eq 0$ by @flat-tor. Notice that $ZZ_G = ZZ$ and -$ (bb(Z) G)_G iso ZZ$ by @group-h0. -Since $epsilon_ast$ is a surjection, we see $epsilon_ast$ must be an isomorphism $ZZ -> ZZ$. So we have -$H_1 lr((G , bb(Z))) tilde.equiv fJ_G eq fJ slash fJ^2 tilde.equiv G slash lr([G comma G]).$ + Since $bb(Z) G$ is a projective and thus flat $bb(Z) G$-module, we have + $H_1 lr((G , bb(Z) G)) eq 0$ by @flat-tor. Notice that $ZZ_G = ZZ$ and + $ (bb(Z) G)_G iso ZZ$ by @group-h0. + Since $epsilon_ast$ is a surjection, we see $epsilon_ast$ must be an isomorphism $ZZ -> ZZ$. So we have + $H_1 lr((G , bb(Z))) tilde.equiv fJ_G eq fJ slash fJ^2 tilde.equiv G slash lr([G comma G]).$ ] -// $ A_G = ZZ tpzg A = Coker(fJ tpzg A -> ZZ G tpzg A) = Coker(fJ tpzg A -> A) $ so $(ZZ G)_G = ZZ G over fJ iso ZZ$. +// $ A_G = ZZ tpzg A = Coker(fJ tpzg A -> ZZ G tpzg A) = Coker(fJ tpzg A -> A) $ so $(ZZ G)_G = ZZ G over fJ iso ZZ$. == Norm Element #definition[ -Let $G$ be a finite group. The *norm element* of $bb(Z) G$ is -$ N eq sum_(g in G) g in bb(Z) G. $ + Let $G$ be a finite group. The *norm element* of $bb(Z) G$ is + $ N eq sum_(g in G) g in bb(Z) G. $ ] #notation[ Somehow the convention here is to use a capital letter $N$ for a _group element_, not a group. ] #lemma[$N$ is a central element of $ZZ G$ and $N in lr((bb(Z) G))^G$.] #proof[ - For every $h in G$, we have $h N = sum_g h g$, but left multiplication by $h$ is nothing but a permutation of $G$ (recall Cayley's Theorem), so $h N = sum_(g') g' = N$ by reindexing. Similarly, $N h = N$. + For every $h in G$, we have $h N = sum_g h g$, but left multiplication by $h$ is nothing but a permutation of $G$ (recall Cayley's Theorem), so $h N = sum_(g') g' = N$ by reindexing. Similarly, $N h = N$. ] #lemma[ -The subgroup -$H^0 lr((G comma bb(Z) G)) eq lr((bb(Z) G))^G $ -is the two-sided ideal $bb(Z) dot N$ of $bb(Z) G$ generated by $N$, and is thus isomorphic to $ZZ$. + The subgroup + $H^0 lr((G comma bb(Z) G)) eq lr((bb(Z) G))^G$ + is the two-sided ideal $bb(Z) dot N$ of $bb(Z) G$ generated by $N$, and is thus isomorphic to $ZZ$. ] #proof[ Take $a = sum_(g in G) n_g g in (ZZ G)^G$. Then for any $h in G$, $a = h a = sum_(g in G) n_g (h g)$. The coefficient for $g$ in $h a$ is $n_(h^(-1) g)$. Thus, for any $g, h in G$, we have $n_g = n_(h^(-1) g)$, which shows that all $n_g$ are the same. Hence $a = n N$ for some $n in ZZ$. -] +] #lemma[ - When group $G$ is finite, + When group $G$ is finite, $ - fJ = Ker(ZZ G ->^N ZZ G) = {a in ZZ G : N a = 0} \ - ZZ dot N = IM(ZZ G ->^N ZZ G). + fJ = Ker(ZZ G ->^N ZZ G) = {a in ZZ G : N a = 0} \ + ZZ dot N = IM(ZZ G ->^N ZZ G). $ ] - + #proof[ - Take $a = sum_(g in G) n_g g in ZZ G$ and write $N = sum_(h in G) h$. We have + Take $a = sum_(g in G) n_g g in ZZ G$ and write $N = sum_(h in G) h$. We have $ N a = (sum_(h in G) h) (sum_(g in G) n_g g) = sum_(h in G) sum_(g in G) n_g (h g) = sum_(g' in G) sum_(g in G) n_g g' \ = sum_(g' in G) (sum_(g in G) n_g) g' = (sum_(g in G) n_g) (sum_(g' in G) g') = (sum_(g in G) n_g) N $ - Therefore $N a = 0$ if and only if $sum_(g in G) n_g = 0$, #iff $a in fJ$. + Therefore $N a = 0$ if and only if $sum_(g in G) n_g = 0$, #iff $a in fJ$. The image of $ZZ G ->^N ZZ G$ is also clear from above, since $(sum_(g in G) n_g)$ can take all values in $ZZ$. ] #corollary[ - For every finite group $G$, there is a #sest + For every finite group $G$, there is a #sest $ ses(fJ, ZZ G, ZZ dot N, g: N). $ ] - + == Finite Cyclic Groups Let $C_m eq ⟨sigma colon sigma^m eq 1⟩$ be the cyclic group of order $m$ generated by $sigma$. Then the norm element of $C_m$ is -$ N = sum_(i = 0)^(m-1) sigma^i = 1 plus sigma plus dots.h plus sigma^(m minus 1) $ +$ + N = sum_(i = 0)^(m-1) sigma^i = 1 plus sigma plus dots.h plus sigma^(m minus 1) +$ We observe @@ -297,39 +304,41 @@ $ 0 eq sigma^m minus 1 eq lr((sigma minus 1)) N $ // #lemma[ // ] // #proof[ - // In view of @j-ker, we only have to verify that $IM(ZZ C_m ->^N ZZ C_m) = ZZ dot N$. Take $a = sum_(j = 0)^(m-1) n_j sigma^j in ZZ C_m$, we compute - // $ - // N a = (sum_(i = 0)^(m-1) sigma^i) (sum_(j = 0)^(m-1) n_j sigma^j) = sum_(i = 0)^(m-1) sum_(j = 0)^(m-1) n_j sigma^(i + j) = sum_(k = 0)^(m-1) - // $ +// In view of @j-ker, we only have to verify that $IM(ZZ C_m ->^N ZZ C_m) = ZZ dot N$. Take $a = sum_(j = 0)^(m-1) n_j sigma^j in ZZ C_m$, we compute +// $ +// N a = (sum_(i = 0)^(m-1) sigma^i) (sum_(j = 0)^(m-1) n_j sigma^j) = sum_(i = 0)^(m-1) sum_(j = 0)^(m-1) n_j sigma^(i + j) = sum_(k = 0)^(m-1) +// $ // ] #lemma[ - There is a #sest + There is a #sest $ - 0 arrow.r bb(Z) dot N arrow.r bb(Z) C_m arrow.r^(sigma minus 1) fJ arrow.r 0. + 0 arrow.r bb(Z) dot N arrow.r bb(Z) C_m arrow.r^(sigma minus 1) fJ arrow.r 0. $ ] - + #proof[ We calculate the image and kernel of the map $bb(Z) C_m arrow.r^(sigma minus 1) ZZ C_m$. Take $a = sum_(j = 0)^(m-1) n_j sigma^j in ZZ C_m$. Then setting $n_(-1) = n_(m-1)$, we have - $ + $ (sigma - 1) a = sum_(j = 0)^(m-1) n_j sigma^(j + 1) - sum_(j = 0)^(m-1) n_j sigma^j = sum_(j = 0)^(m-1) (n_(j-1) - n_j) sigma^(j). - $ - Since - $ + $ + Since + $ epsilon((sigma- 1)a) = sum_(j=0)^(m-1) (n_(j -1) - n_j) = 0, - $ - we see that $(sigma - 1) a in fJ$. On the other hand, for any $b = sum_(k=0)^(m-1) f_k sigma^k in fJ$ such that $sum_(k=0)^(m-1) f_k = 0$, we can find $a$ such that $n_j = - sum_(k=0)^j f_k$ for $j = 0, ..., m-1$ (notice that $n_(m-1) = n_(-1) = 0$) so that $n_(j-1) - n_j = f_j$, or $(sigma - 1)a = b$. This shows that $IM(bb(Z) C_m arrow.r^(sigma minus 1) ZZ C_m) = fJ$. - - For the kernel, $(sigma - 1) a = 0$ if and only if $n_(j-1) = n_j$ for all $j$, if and only if all $n_j$ are equal, #iff $a in ZZ dot N$. + $ + we see that $(sigma - 1) a in fJ$. On the other hand, for any $b = sum_(k=0)^(m-1) f_k sigma^k in fJ$ such that $sum_(k=0)^(m-1) f_k = 0$, we can find $a$ such that $n_j = - sum_(k=0)^j f_k$ for $j = 0, ..., m-1$ (notice that $n_(m-1) = n_(-1) = 0$) so that $n_(j-1) - n_j = f_j$, or $(sigma - 1)a = b$. This shows that $IM(bb(Z) C_m arrow.r^(sigma minus 1) ZZ C_m) = fJ$. + + For the kernel, $(sigma - 1) a = 0$ if and only if $n_(j-1) = n_j$ for all $j$, if and only if all $n_j$ are equal, #iff $a in ZZ dot N$. ] #lemma[ -The chain complex + The chain complex -$ dots.h arrow.r bb(Z) C_m arrow.r^(sigma minus 1) bb(Z) C_m arrow.r^N bb(Z) C_m arrow.r^(sigma minus 1) bb(Z) C_m arrow.r^epsilon bb(Z) arrow.r 0 $ + $ + dots.h arrow.r bb(Z) C_m arrow.r^(sigma minus 1) bb(Z) C_m arrow.r^N bb(Z) C_m arrow.r^(sigma minus 1) bb(Z) C_m arrow.r^epsilon bb(Z) arrow.r 0 + $ -is a projective resolution for $bb(Z)$ as a $bb(Z) C_m$-module. + is a projective resolution for $bb(Z)$ as a $bb(Z) C_m$-module. ] #proof[ This is obtained by splicing the sequences from @ses-norm and @ses-cyclic together. @@ -338,88 +347,94 @@ is a projective resolution for $bb(Z)$ as a $bb(Z) C_m$-module. #theorem[ Let $A$ be a $G$-module, where $G = C_m$. Then -$ H_n lr((C_m , A)) eq cases( + $ + H_n lr((C_m , A)) eq cases( A slash lr((sigma minus 1)) A quad &"if " n eq 0 comma, A^(G ) slash N A quad &"if " n eq 1 comma 3 comma 5 comma dots.h comma, brace.l a in A colon N a eq 0 brace.r slash lr((sigma minus 1)) A quad &"if " n eq 2 comma 4 comma 6 comma dots.h ) - -$ $ H^n lr((C_m , A)) eq cases( + $ $ + H^n lr((C_m , A)) eq cases( A^G quad &"if " n eq 0 comma, brace.l a in A colon N a eq 0 brace.r slash lr((sigma minus 1)) A quad &"if " n eq 1 comma 3 comma 5 comma dots.h comma, -A^G slash N A quad &"if " n eq 2 comma 4 comma 6 comma dots.h +A^G slash N A quad &"if " n eq 2 comma 4 comma 6 comma dots.h ) -$ + $ ] // #proof[ // Take the resolution obtained from the previous lemma, delete $ZZ$, apply $- tpzg A$ and $homg (-, A)$, and take homology. // ] #corollary[ - We have -$ & H_n lr((C_m , bb(Z))) eq cases(bb(Z) quad & "if " n eq 0, bb(Z) slash m quad & "if " n gt.eq 1 "is odd " comma, 0 quad & "else. ")\ - & H^n lr((C_m , bb(Z))) eq cases(bb(Z) quad& "if " n eq 0, bb(Z) slash m quad & "if " n gt.eq 2 "is even, ", 0 quad & "else. ") $] + We have + $ + & H_n lr((C_m , bb(Z))) eq cases(bb(Z) quad & "if " n eq 0, bb(Z) slash m quad & "if " n gt.eq 1 "is odd " comma, 0 quad & "else. ")\ + & H^n lr((C_m , bb(Z))) eq cases(bb(Z) quad& "if " n eq 0, bb(Z) slash m quad & "if " n gt.eq 2 "is even, ", 0 quad & "else. ") + $] // #remark[ // Galois homology? Tate homology? // ] - == Free Groups +== Free Groups @weibel[p. 169]. #proposition[ -Let $G$ be the free group on the set $X$, and consider -the augmentation ideal $frak(J)$ of $bb(Z) G$. Then $frak(J)$ is a free -$bb(Z) G$-module with basis the set -$X minus 1 eq brace.l x minus 1 colon x in X brace.r$. + Let $G$ be the free group on the set $X$, and consider + the augmentation ideal $frak(J)$ of $bb(Z) G$. Then $frak(J)$ is a free + $bb(Z) G$-module with basis the set + $X minus 1 eq brace.l x minus 1 colon x in X brace.r$. ] #proof[ -Every -$g in$ $G$ may be written uniquely as a reduced word in the symbols -$lr({x comma x^(minus 1) colon x in X})$; write $G lr((x))$ \(resp. -$G lr((x^(minus 1)))$ ) for the subset of all $g in G$ ending in the -symbol $x$ \(resp. in $x^(minus 1)$ ) so that + Every + $g in$ $G$ may be written uniquely as a reduced word in the symbols + $lr({x comma x^(minus 1) colon x in X})$; write $G lr((x))$ \(resp. + $G lr((x^(minus 1)))$ ) for the subset of all $g in G$ ending in the + symbol $x$ \(resp. in $x^(minus 1)$ ) so that -$ - G minus brace.l 1 brace.r = {G(x)}_(x in X) union.sq {G(x^(-1))}_(x in X). -$ + $ + G minus brace.l 1 brace.r = {G(x)}_(x in X) union.sq {G(x^(-1))}_(x in X). + $ -By @j-basis, $frak(J)$ is a free abelian group with -$bb(Z)$-basis $brace.l g minus 1 colon g in G$, $g eq.not 1 brace.r$. -Now we claim that the $ZZ$-basis $brace.l g minus 1 : g in G, g eq.not 1 brace.r$ can be uniquely rewritten in terms of the set $brace.l g lr((x minus 1)) : g in G, x in X brace.r$. We prove this by induction on word length of $g$. When the word length is $1$, either $g = x$ or $g = x^(-1)$ for some $x in X$, so the claim is trivial. When the word length is $n$, then we can write either $g = g' x$ (if $g in G(x)$) or $g = g' x^(-1)$ (if $g in G(x^(-1))$), where the word length of $g'$ is $(n-1)$. In the first case, -$ g -1 = g 'x minus 1 & eq g' lr((x minus 1)) plus lr((g' minus 1)), $ -and in the second case, -$ -g - 1 = g' x^(minus 1) minus 1 & eq minus lr((g' x^(minus 1))) lr((x minus 1)) plus lr((g' minus 1)). $ -Hence in both cases, the claim follows from the induction hypothesis. We can similarly prove that we can uniquely rewrite ${g(x-1)}$ in terms of ${g-1: g!=1}$. -Therefore -$brace.l g lr((x minus 1))$ : $g in G comma x in X brace.r$ is another -$bb(Z)$-basis of $frak(J)$, and -$X minus 1 eq brace.l x minus 1 colon x in X brace.r$ is a -$bb(Z) G$-basis. + By @j-basis, $frak(J)$ is a free abelian group with + $bb(Z)$-basis $brace.l g minus 1 colon g in G$, $g eq.not 1 brace.r$. + Now we claim that the $ZZ$-basis $brace.l g minus 1 : g in G, g eq.not 1 brace.r$ can be uniquely rewritten in terms of the set $brace.l g lr((x minus 1)) : g in G, x in X brace.r$. We prove this by induction on word length of $g$. When the word length is $1$, either $g = x$ or $g = x^(-1)$ for some $x in X$, so the claim is trivial. When the word length is $n$, then we can write either $g = g' x$ (if $g in G(x)$) or $g = g' x^(-1)$ (if $g in G(x^(-1))$), where the word length of $g'$ is $(n-1)$. In the first case, + $ g -1 = g 'x minus 1 & eq g' lr((x minus 1)) plus lr((g' minus 1)), $ + and in the second case, + $ + g - 1 = g' x^(minus 1) minus 1 & eq minus lr((g' x^(minus 1))) lr((x minus 1)) plus lr((g' minus 1)). + $ + Hence in both cases, the claim follows from the induction hypothesis. We can similarly prove that we can uniquely rewrite ${g(x-1)}$ in terms of ${g-1: g!=1}$. + Therefore + $brace.l g lr((x minus 1))$ : $g in G comma x in X brace.r$ is another + $bb(Z)$-basis of $frak(J)$, and + $X minus 1 eq brace.l x minus 1 colon x in X brace.r$ is a + $bb(Z) G$-basis. ] #corollary[ - If $G$ is a free group on $X$, then $bb(Z)$ has the free -resolution -$ 0 arrow.r frak(J) arrow.r bb(Z) G arrow.r bb(Z) arrow.r 0 dot.basic $ + If $G$ is a free group on $X$, then $bb(Z)$ has the free + resolution + $ 0 arrow.r frak(J) arrow.r bb(Z) G arrow.r bb(Z) arrow.r 0 dot.basic $ -Consequently, -$H_n lr((G , A)) eq H^n lr((G , A)) eq 0$ for -$n eq.not 0 comma 1$. + Consequently, + $H_n lr((G , A)) eq H^n lr((G , A)) eq 0$ for + $n eq.not 0 comma 1$. -Moreover, when $A = ZZ$, -$ H_0 lr((G , bb(Z))) tilde.equiv H^0 lr((G , bb(Z))) tilde.equiv bb(Z) $ -$ H_1 lr((G , bb(Z))) tilde.equiv xor.big_(x in X) bb(Z) \ H^1 lr((G , bb(Z))) tilde.equiv product_(x in X) bb(Z) $ + Moreover, when $A = ZZ$, + $ H_0 lr((G , bb(Z))) tilde.equiv H^0 lr((G , bb(Z))) tilde.equiv bb(Z) $ + $ + H_1 lr((G , bb(Z))) tilde.equiv xor.big_(x in X) bb(Z) \ H^1 lr((G , bb(Z))) tilde.equiv product_(x in X) bb(Z) + $ ] #proof[ -$H_ast lr((G , A))$ is the homology of -$0 arrow.r frak(J) times.circle_(bb(Z) G) A arrow.r A arrow.r 0$, and -$H^ast lr((G , A))$ is the cohomology of -$0 arrow.r A arrow.r "Hom"_G lr((frak(J) comma A)) arrow.r 0$. For -$A eq bb(Z)$, $H_0 (G, ZZ)$ and $H^0 (G, ZZ)$ come from @group-h0 and @cohomology-zero, respectively. $H_1 (G, ZZ) iso G over [G, G]$ by @homology-1, where $G over [G, G]$ is the free abelian group over $X$. We finally see that the differential $ZZ arrow.r "Hom"_G lr((frak(J) comma ZZ))$ must be zero, hence $H^1 (G, ZZ) = homg (fJ, ZZ) tilde.equiv product_(x in X) bb(Z)$. + $H_ast lr((G , A))$ is the homology of + $0 arrow.r frak(J) times.circle_(bb(Z) G) A arrow.r A arrow.r 0$, and + $H^ast lr((G , A))$ is the cohomology of + $0 arrow.r A arrow.r "Hom"_G lr((frak(J) comma A)) arrow.r 0$. For + $A eq bb(Z)$, $H_0 (G, ZZ)$ and $H^0 (G, ZZ)$ come from @group-h0 and @cohomology-zero, respectively. $H_1 (G, ZZ) iso G over [G, G]$ by @homology-1, where $G over [G, G]$ is the free abelian group over $X$. We finally see that the differential $ZZ arrow.r "Hom"_G lr((frak(J) comma ZZ))$ must be zero, hence $H^1 (G, ZZ) = homg (fJ, ZZ) tilde.equiv product_(x in X) bb(Z)$. ] // #TODO change the notation $H_ast (G, A)$ (comma not semicolon.) @@ -432,24 +447,24 @@ $A eq bb(Z)$, $H_0 (G, ZZ)$ and $H^0 (G, ZZ)$ come from @group-h0 and @cohomolog // can all be found in Weibel. #definition[ -Let $G$ be a group and $A$ be a left $G$-module. A -*derivation* of $G$ in $A$ is a set map $D colon G arrow.r A$ with -$ D lr((g h)) eq g D lr((h)) plus D lr((g)) $ for all $g comma h in G $. -Write $"Der"lr((G comma A))$ for the set of derivations of $G$ in $A$. + Let $G$ be a group and $A$ be a left $G$-module. A + *derivation* of $G$ in $A$ is a set map $D colon G arrow.r A$ with + $ D lr((g h)) eq g D lr((h)) plus D lr((g)) $ for all $g comma h in G $. + Write $"Der"lr((G comma A))$ for the set of derivations of $G$ in $A$. ] #remark[ -In general, if $R$ is a ring and $A$ is an $R$-$R$-bimodule, a derivation of $R$ in $A$ is an abelian group homomorphism $D : R -> A$ such that + In general, if $R$ is a ring and $A$ is an $R$-$R$-bimodule, a derivation of $R$ in $A$ is an abelian group homomorphism $D : R -> A$ such that -$ D lr((r s)) eq r D lr((s)) plus D lr((r)) s. $ + $ D lr((r s)) eq r D lr((s)) plus D lr((r)) s. $ -Here for $R = ZZ G$, we have -$D lr((g)) h eq D lr((g))$ because we are viewing $A$ as a $ZZ G$-$ZZ G$-bimodule with - trivial $G$-action on the right. + Here for $R = ZZ G$, we have + $D lr((g)) h eq D lr((g))$ because we are viewing $A$ as a $ZZ G$-$ZZ G$-bimodule with + trivial $G$-action on the right. ] #lemma[ -$"Der"lr((G comma A))$ is an abelian group under pointwise addition. + $"Der"lr((G comma A))$ is an abelian group under pointwise addition. ] #definition[ @@ -459,7 +474,7 @@ derivation*. Write $"PDer"lr((G comma A))$ for the set of principal derivations ] #lemma[ -$D_a plus D_b eq$ $D_(a plus b)$ and $"PDer"lr((G comma A))$ is a subgroup of $"Der"lr((G comma A))$. + $D_a plus D_b eq$ $D_(a plus b)$ and $"PDer"lr((G comma A))$ is a subgroup of $"Der"lr((G comma A))$. ] #lemma[ $PDer(G, A) iso A over A^G$. @@ -467,50 +482,54 @@ $D_a plus D_b eq$ $D_(a plus b)$ and $"PDer"lr((G comma A))$ is a subgroup of $" #definition[ -Let -$phi colon fJ arrow.r A$ be a $G$-map. Define -$D_phi colon G arrow.r A$ by -$D_phi lr((g)) eq phi lr((g minus 1)). $ + Let + $phi colon fJ arrow.r A$ be a $G$-map. Define + $D_phi colon G arrow.r A$ by + $D_phi lr((g)) eq phi lr((g minus 1)).$ ] #lemma[ -The map $phi arrow.r.bar D_phi : "Hom"_G lr((fJ comma A)) arrow.r "Der"lr((G comma A))$ is a natural isomorphism of abelian groups. + The map $phi arrow.r.bar D_phi : "Hom"_G lr((fJ comma A)) arrow.r "Der"lr((G comma A))$ is a natural isomorphism of abelian groups. ] #proof[@weibel[Lemma 6.4.4]. - First we show that $D_phi : G-> A$ is indeed a derivation: + First we show that $D_phi : G-> A$ is indeed a derivation: $ D_phi (g h) = phi (g h - 1) = phi (g h - g) + phi (g - 1) = g D_phi (h) + D_phi (g) $ - The map $phi arrow.r.bar D_phi$ is obviously a natural group homomorphism, so it remains to verify that it is an isomorphism. - + The map $phi arrow.r.bar D_phi$ is obviously a natural group homomorphism, so it remains to verify that it is an isomorphism. + Suppose $D_phi = 0$, i.e., $D_phi (g) = phi (g - 1) = 0$ for all $g in G$. Since ${g-1 : g!=1}$ forms a basis for $fJ$, we see that $phi = 0$. Hence the map $phi arrow.r.bar D_phi$ is an injection. Take any $D in Der(G, A)$. Define $phi : fJ -> A$ by $phi(g - 1) = D(g)$ for all $g != 1$. This extends to an abelian group homomorphism since ${g-1 : g!=1}$ forms a basis of $fJ$. It is easy to show that $phi$ is a $G$-map and $D_phi = D$, so the map $phi arrow.r.bar D_phi$ is also a surjection. ] #theorem[ -$ H^1 lr((G comma A)) iso "Der"lr((G comma A)) over "PDer"lr((G comma A))$. + $ H^1 lr((G comma A)) iso "Der"lr((G comma A)) over "PDer"lr((G comma A))$. ] #proof[@weibel[Theorem 6.4.5]. -The short exact sequence + The short exact sequence -$ 0 arrow.r fJ arrow.r bb(Z) G arrow.r bb(Z) arrow.r 0 $ + $ 0 arrow.r fJ arrow.r bb(Z) G arrow.r bb(Z) arrow.r 0 $ -of $bb(Z) G$-modules gives a long exact sequence beginning with + of $bb(Z) G$-modules gives a long exact sequence beginning with -$ - 0 arrow.r homg lr((bb(Z) comma A)) arrow.r homg lr((bb(Z) G comma A)) arrow.r homg lr((fJ comma A)) arrow.r Ext_(ZZ G)^1 (ZZ, A) arrow.r Ext_(ZZ G)^1 (ZZ G, A) -$ -which reduces to -$ 0 arrow.r A^G arrow.r A arrow.r Der(G, A) arrow.r H^1 lr((G , A)) arrow.r 0 $ + $ + 0 arrow.r homg lr((bb(Z) comma A)) arrow.r homg lr((bb(Z) G comma A)) arrow.r homg lr((fJ comma A)) arrow.r Ext_(ZZ G)^1 (ZZ, A) arrow.r Ext_(ZZ G)^1 (ZZ G, A) + $ + which reduces to + $ + 0 arrow.r A^G arrow.r A arrow.r Der(G, A) arrow.r H^1 lr((G , A)) arrow.r 0 + $ -The result then follows from @pder-ag. + The result then follows from @pder-ag. ] #corollary[ -Let $A$ be a trivial $G$-module. Then + Let $A$ be a trivial $G$-module. Then -$ H^1 lr((G comma A)) iso "Der"lr((G comma A)) tilde.equiv "Hom"_Grp lr((G comma A)). $ + $ + H^1 lr((G comma A)) iso "Der"lr((G comma A)) tilde.equiv "Hom"_Grp lr((G comma A)). + $ ] // #theorem([Hilbert Theorem 90])[ @@ -528,122 +547,134 @@ $ H^1 lr((G comma A)) iso "Der"lr((G comma A)) tilde.equiv "Hom"_Grp lr((G comma Throughout this section, $bb(Z)$ is a trivial $G$-module. #definition[ -The *unnormalised bar complex* is the chain complex + The *unnormalised bar complex* is the chain complex -$ dots.h arrow.r B_2^u arrow.r B_1^u arrow.r B_0^u arrow.r^epsilon bb(Z) arrow.r 0 $ + $ + dots.h arrow.r B_2^u arrow.r B_1^u arrow.r B_0^u arrow.r^epsilon bb(Z) arrow.r 0 + $ -with $B_0^u eq bb(Z) G$ and $B_n^u$ is the free $ZZ G$-module on the set of all symbols $[g_1 tp ... tp g_n]$ with $g_i in G$ for $n >=1$. -The differential $d colon B_n^u arrow.r B_(n minus 1)^u$ is given by + with $B_0^u eq bb(Z) G$ and $B_n^u$ is the free $ZZ G$-module on the set of all symbols $[g_1 tp ... tp g_n]$ with $g_i in G$ for $n >=1$. + The differential $d colon B_n^u arrow.r B_(n minus 1)^u$ is given by -$ d eq sum_(i eq 0)^n lr((minus 1))^i d_i, $ + $ d eq sum_(i eq 0)^n lr((minus 1))^i d_i, $ -where + where -$ d_0 lr(([g_1 times.circle dots.h times.circle g_n])) &eq g_1 [g_2 times.circle dots.h times.circle g_n] \ - d_i lr(([g_1 times.circle dots.h times.circle g_n])) &eq [g_1 times.circle dots.h times.circle g_i g_(i plus 1) times.circle dots.h times.circle g_n] quad upright(" for ") 1 lt.eq i lt.eq n minus 1 \ - d_n lr(([g_1 times.circle dots.h times.circle g_n])) &eq [g_1 times.circle dots.h times.circle g_(n minus 1)]. $ + $ + d_0 lr(([g_1 times.circle dots.h times.circle g_n])) &eq g_1 [g_2 times.circle dots.h times.circle g_n] \ + d_i lr(([g_1 times.circle dots.h times.circle g_n])) &eq [g_1 times.circle dots.h times.circle g_i g_(i plus 1) times.circle dots.h times.circle g_n] quad upright(" for ") 1 lt.eq i lt.eq n minus 1 \ + d_n lr(([g_1 times.circle dots.h times.circle g_n])) &eq [g_1 times.circle dots.h times.circle g_(n minus 1)]. + $ ] #definition[ -The *normalised bar complex* is + The *normalised bar complex* is -$ dots.h arrow.r B_2 arrow.r B_1 arrow.r B_0 arrow.r^epsilon.alt bb(Z) arrow.r 0, $ + $ + dots.h arrow.r B_2 arrow.r B_1 arrow.r B_0 arrow.r^epsilon.alt bb(Z) arrow.r 0, + $ -where $B_0 eq bb(Z) G$, and for $n gt.eq 1$, the group $B_n$ is the free $ZZ G$-module on the set of all symbols -$[g_1 lr(|dots.h|) g_n]$ with $g_i in G without brace.l 1 brace.r $. -The differential $d colon B_n arrow.r B_(n minus 1)$ is -$d eq sum_(i eq 0)^n lr((minus 1))^i d_i$, where + where $B_0 eq bb(Z) G$, and for $n gt.eq 1$, the group $B_n$ is the free $ZZ G$-module on the set of all symbols + $[g_1 lr(|dots.h|) g_n]$ with $g_i in G without brace.l 1 brace.r $. + The differential $d colon B_n arrow.r B_(n minus 1)$ is + $d eq sum_(i eq 0)^n lr((minus 1))^i d_i$, where -$ d_0 ([g_1 lr(|dots.h|) g_n]) & eq g_1 [g_2 lr(|dots.h|) g_n] \ -d_i lr(([g_1 lr(|dots.h|) g_n])) & eq [g_1 lr(|dots.h|) g_i g_(i plus 1) lr(|dots.h|) g_n] quad upright(" for ") 1 lt.eq i lt.eq n minus 1\ -d_n lr(([g_1 lr(|dots.h|) g_n])) & eq [g_1 lr(|dots.h|) g_(n minus 1)] $ + $ + d_0 ([g_1 lr(|dots.h|) g_n]) & eq g_1 [g_2 lr(|dots.h|) g_n] \ + d_i lr(([g_1 lr(|dots.h|) g_n])) & eq [g_1 lr(|dots.h|) g_i g_(i plus 1) lr(|dots.h|) g_n] quad upright(" for ") 1 lt.eq i lt.eq n minus 1\ + d_n lr(([g_1 lr(|dots.h|) g_n])) & eq [g_1 lr(|dots.h|) g_(n minus 1)] + $ -We write $[]$ for $1 in B_0 eq bb(Z) G$. If any of the $g_i$ is 1 , we -write $lr([dots.h lr(|g_i|) dots.h])$ for $0 in B_n$. + We write $[]$ for $1 in B_0 eq bb(Z) G$. If any of the $g_i$ is 1 , we + write $lr([dots.h lr(|g_i|) dots.h])$ for $0 in B_n$. ] #example[ -We have + We have + + $ + d lr((lr([g|h]))) &eq g lr([h]) minus lr([g h]) plus lr([g]), \ + d lr((lr([f|g|h]))) &eq f lr([g|h]) minus lr([f g|h]) plus lr([f|g h]) minus lr([f|g]). + $] -$ d lr((lr([g|h]))) &eq g lr([h]) minus lr([g h]) plus lr([g]), \ - d lr((lr([f|g|h]))) &eq f lr([g|h]) minus lr([f g|h]) plus lr([f|g h]) minus lr([f|g]). $] - #theorem[ -The normalised and unnormalised bar complexes are free -resolutions of $bb(Z)$ as a $bb(Z) G$-module. + The normalised and unnormalised bar complexes are free + resolutions of $bb(Z)$ as a $bb(Z) G$-module. ] #proof[ - @weibel[Theorem 6.5.3]. We only give the proof for the normalised bar complexes, as the unnormalised case is the same. By @null-homotopic-acyclic, we only need to show that there exist abelian group homomorphisms $s_(-1): ZZ -> B_0$ and $s_n : B_n -> B_(n+1)$ for $n >= 0$ such that $d s + s d = 1$. The desired construction is given as + @weibel[Theorem 6.5.3]. We only give the proof for the normalised bar complexes, as the unnormalised case is the same. By @null-homotopic-acyclic, we only need to show that there exist abelian group homomorphisms $s_(-1): ZZ -> B_0$ and $s_n : B_n -> B_(n+1)$ for $n >= 0$ such that $d s + s d = 1$. The desired construction is given as $s_(-1) (1) = [ ]$ - and + and $ s_n (g_0[g_1|...|g_n]) = [g_0|g_1|...|g_n] $ - for $n >=0$. + for $n >=0$. ] #corollary[ - $H^ast lr((G comma A))$ is the -cohomology of either the chain complex $"Hom"_G lr((B_ast^u comma A))$ -or $"Hom"_G lr((B_ast comma A))$. + $H^ast lr((G comma A))$ is the + cohomology of either the chain complex $"Hom"_G lr((B_ast^u comma A))$ + or $"Hom"_G lr((B_ast comma A))$. ] This allows us to give an explicit description of group cohomology. #definition[ -Define an *$n$-cochain* as a function $f colon G^n arrow.r A$. An -$n$-cochain $phi$ is *normalised* if -$phi lr((g_1 comma dots.h comma g_n)) eq 0$ whenever there exists some $g_i = 1$. -Define the differential $d$ of an $n$-cochain $phi$ as an $(n+1)$-cochain $d phi$ given by + Define an *$n$-cochain* as a function $f colon G^n arrow.r A$. An + $n$-cochain $phi$ is *normalised* if + $phi lr((g_1 comma dots.h comma g_n)) eq 0$ whenever there exists some $g_i = 1$. + Define the differential $d$ of an $n$-cochain $phi$ as an $(n+1)$-cochain $d phi$ given by -$ (d phi) lr((g_1 comma dots.h comma g_(n+1))) eq g_1 phi lr((g_2 comma dots.h comma g_(n+1))) plus sum_(i eq 1)^(n) lr((minus 1))^(i) phi lr((dots.h comma g_i g_(i plus 1) comma dots.h)) plus lr((minus 1))^(n+1) phi lr((g_1 comma dots.h comma g_(n))). $ + $ + (d phi) lr((g_1 comma dots.h comma g_(n+1))) eq g_1 phi lr((g_2 comma dots.h comma g_(n+1))) plus sum_(i eq 1)^(n) lr((minus 1))^(i) phi lr((dots.h comma g_i g_(i plus 1) comma dots.h)) plus lr((minus 1))^(n+1) phi lr((g_1 comma dots.h comma g_(n))). + $ -If $phi$ is an $n$-cochain such that $d phi eq 0$, then $phi$ is an *$n$-cocycle*. If $phi'$ is an $(n-1)$-cochain, then the -$n$-cochain $d phi'$ is an *$n$-coboundary*. Write $Z^n lr((G comma A))$ and -$B^n lr((G comma A))$ for the abelian groups of $n$-cocycles and -$n$-coboundaries respectively. + If $phi$ is an $n$-cochain such that $d phi eq 0$, then $phi$ is an *$n$-cocycle*. If $phi'$ is an $(n-1)$-cochain, then the + $n$-cochain $d phi'$ is an *$n$-coboundary*. Write $Z^n lr((G comma A))$ and + $B^n lr((G comma A))$ for the abelian groups of $n$-cocycles and + $n$-coboundaries respectively. ] -From the definition, we see that -$"Hom"_G lr((B_n^u comma A))$ consists of all $n$-cochains, -while $"Hom"_G lr((B_n comma A))$ consists of all normalised $n$-cochains. +From the definition, we see that +$"Hom"_G lr((B_n^u comma A))$ consists of all $n$-cochains, +while $"Hom"_G lr((B_n comma A))$ consists of all normalised $n$-cochains. #corollary[ -$ H^n lr((G comma A)) eq Z^n lr((G comma A)) slash B^n lr((G comma A))$. + $ H^n lr((G comma A)) eq Z^n lr((G comma A)) slash B^n lr((G comma A))$. ] #example[ -$ H^1 lr((G comma A)) eq "Der"lr((G comma A)) slash "PDer"lr((G comma A))$. -] + $ H^1 lr((G comma A)) eq "Der"lr((G comma A)) slash "PDer"lr((G comma A))$. +] #proof[ - @weibel[Example 6.5.6]. This is a direct proof of @h1ga using bar resolutions. A $0 $-cochain is a map $1 arrow.r A$, that is, an element -of $A$. If $a in A$, then $d a$ is the map $G arrow.r A$ sending $g$ to -$g a - a$, which is a principal derivation by definition. Therefore, $phi in B^1 (G, A)$ #iff there exists $a in A$ such that $phi = d a$, #iff $phi in PDer(G, A)$. So $B^1 (G, A) = PDer(G, A)$. + @weibel[Example 6.5.6]. This is a direct proof of @h1ga using bar resolutions. A $0 $-cochain is a map $1 arrow.r A$, that is, an element + of $A$. If $a in A$, then $d a$ is the map $G arrow.r A$ sending $g$ to + $g a - a$, which is a principal derivation by definition. Therefore, $phi in B^1 (G, A)$ #iff there exists $a in A$ such that $phi = d a$, #iff $phi in PDer(G, A)$. So $B^1 (G, A) = PDer(G, A)$. -On the other hand, $phi in Z^1 (G, A)$ #iff $d phi = 0$, #iff for all $g, h in G$, -$ - 0 = (d phi) (g, h) = g phi(h) - phi (g h) + phi(g) -$ -#iff $phi in Der(G, A)$. Thus $Z^1 (G, A) = Der(G, A)$. + On the other hand, $phi in Z^1 (G, A)$ #iff $d phi = 0$, #iff for all $g, h in G$, + $ + 0 = (d phi) (g, h) = g phi(h) - phi (g h) + phi(g) + $ + #iff $phi in Der(G, A)$. Thus $Z^1 (G, A) = Der(G, A)$. ] == Group Extensions #definition[ -Let $A$ be an abelian group and let $G$ be a group. An *extension* of $G$ -by $A$ is a short exact sequence + Let $A$ be an abelian group and let $G$ be a group. An *extension* of $G$ + by $A$ is a short exact sequence -$ 0 arrow.r A arrow.r E arrow.r^pi G arrow.r 1. $ + $ 0 arrow.r A arrow.r E arrow.r^pi G arrow.r 1. $ -The extension *splits* if $pi$ has a section, i.e., if there is a group -homomorphism $s colon G arrow.r E$ such that $pi compose s eq id_G$. -Extensions + The extension *splits* if $pi$ has a section, i.e., if there is a group + homomorphism $s colon G arrow.r E$ such that $pi compose s eq id_G$. + Extensions -$ 0 arrow.r A arrow.r E_i arrow.r^pi G arrow.r 1, $ + $ 0 arrow.r A arrow.r E_i arrow.r^pi G arrow.r 1, $ -for $i eq 1 comma 2$ are *equivalent* if there is a group isomorphism -$E_1 arrow.r E_2$ such that the obvious diagram commutes. + for $i eq 1 comma 2$ are *equivalent* if there is a group isomorphism + $E_1 arrow.r E_2$ such that the obvious diagram commutes. ] #theorem[ There is a natural bijection between $H^2 lr((G comma A))$ and the equivalence classes of extensions of $G$ by $A$.] @@ -660,7 +691,7 @@ $E_1 arrow.r E_2$ such that the obvious diagram commutes. // $ // ... -> B^n_2 -> B^n_1 -> B^n_0 -> ZZ -> 0 // $ -// $B^n_n$ is the free $ZZ G$-module on basis $[g_1 tp ... tp g_n]$ for $g_i in G$. +// $B^n_n$ is the free $ZZ G$-module on basis $[g_1 tp ... tp g_n]$ for $g_i in G$. // $d: B^n_n -> B^n_(n-1)$ diff --git a/ha/d-app.typ b/ha/d-app.typ index 98c9b7e..e8836a5 100644 --- a/ha/d-app.typ +++ b/ha/d-app.typ @@ -4,111 +4,126 @@ // == $R = ZZ$ -Let $A in Ab$. Recall that we have the following: -- $A$ is projective #iff $A$ is free; +Let $A in Ab$. Recall that we have the following: +- $A$ is projective #iff $A$ is free; - $A$ is injective #iff $A$ is divisible, #iff $A$ is a direct sum of copies of $QQ$ and $ZZ[1/p] over ZZ$, where each $p$ is prime; -- $A$ is flat #iff $A$ is torsionfree. +- $A$ is flat #iff $A$ is torsionfree. We now demonstrate some calculations in the category $Ab$ using tools developed throughout the course. These may serve as exercises or reference materials. -== Resolutions +== Resolutions -#align(center, table(columns: (auto, auto, auto), inset: 7pt, stroke: none, -[Type], [Object], [Resolution], -table.hline(), -[projective], $ZZ over m$, $0->ZZ->^m ZZ -> ZZ over m -> 0$, -[injective], $ZZ over m$, $0-> ZZ over m -> QQ over ZZ ->^m QQ over ZZ -> 0$, -[injective], $ZZ$, $0 -> ZZ -> QQ -> QQ over ZZ -> 0$, -)) +#align( + center, + table(columns: (auto, auto, auto), inset: 7pt, stroke: none, + [Type], [Object], [Resolution], + table.hline(), + [projective], $ZZ over m$, $0->ZZ->^m ZZ -> ZZ over m -> 0$, + [injective], $ZZ over m$, $0-> ZZ over m -> QQ over ZZ ->^m QQ over ZZ -> 0$, + [injective], $ZZ$, $0 -> ZZ -> QQ -> QQ over ZZ -> 0$, + ), +) == Tensor products -#align(center, table(columns: (auto, auto, auto, auto, auto), inset: 7pt, stroke: none, -[$tp_ZZ$], table.vline(), $ZZ$, $QQ$, $ZZ over m$, $QQ over ZZ$, -table.hline(), -$ZZ$, $ZZ$, $QQ$, $ZZ over m$, $QQ over ZZ$, -$QQ$, $QQ$, $QQ$, $0$, $0$, -$ZZ over n$, $ZZ over n$, $0$, $ZZ over"gcd"(m, n)$, $0$, -$QQ over ZZ$, $QQ over ZZ$, $0$, $0$, $0$ -)) +#align( + center, + table(columns: (auto, auto, auto, auto, auto), inset: 7pt, stroke: none, + [$tp_ZZ$], table.vline(), $ZZ$, $QQ$, $ZZ over m$, $QQ over ZZ$, + table.hline(), + $ZZ$, $ZZ$, $QQ$, $ZZ over m$, $QQ over ZZ$, + $QQ$, $QQ$, $QQ$, $0$, $0$, + $ZZ over n$, $ZZ over n$, $0$, $ZZ over"gcd"(m, n)$, $0$, + $QQ over ZZ$, $QQ over ZZ$, $0$, $0$, $0$ + ), +) - $A tp_ZZ B iso B tp_ZZ A$; -- $ZZ tp_ZZ A iso A$; -- $QQ tp_ZZ T iso 0$ if $T$ is torsion; -- $QQ over ZZ tp_ZZ T iso 0$ if $T$ is torsion; +- $ZZ tp_ZZ A iso A$; +- $QQ tp_ZZ T iso 0$ if $T$ is torsion; +- $QQ over ZZ tp_ZZ T iso 0$ if $T$ is torsion; - $ZZ over m tp_ZZ A iso A over m A$ (recall that $R over I tp_R M iso M over I M$); -- $QQ tp_ZZ QQ iso QQ$. +- $QQ tp_ZZ QQ iso QQ$. == $Tor$ groups #let tor1z = [$Tor_1^ZZ$] -#align(center, table(columns: (auto, auto, auto, auto, auto), inset: 7pt, stroke: none, -[$Tor_1^ZZ$], table.vline(), $ZZ$, $QQ$, $ZZ over m$, $QQ over ZZ$, -table.hline(), -$ZZ$, $0$, $0$, $0$, $0$, -$QQ$, $0$, $0$, $0$, $0$, -$ZZ over n$, $0$, $0$, $ZZ over"gcd"(m, n)$, $ZZ over n$, -$QQ over ZZ$, $0$, $0$, $ZZ over m$, $QQ over ZZ$ -)) +#align( + center, + table(columns: (auto, auto, auto, auto, auto), inset: 7pt, stroke: none, + [$Tor_1^ZZ$], table.vline(), $ZZ$, $QQ$, $ZZ over m$, $QQ over ZZ$, + table.hline(), + $ZZ$, $0$, $0$, $0$, $0$, + $QQ$, $0$, $0$, $0$, $0$, + $ZZ over n$, $0$, $0$, $ZZ over"gcd"(m, n)$, $ZZ over n$, + $QQ over ZZ$, $0$, $0$, $ZZ over m$, $QQ over ZZ$ + ), +) - $Tor_n^ZZ (A, B) iso Tor_n ^ZZ (B, A)$; - $ZZ$ is free and thus flat, so $Tor_1^ZZ (ZZ , -) = 0$; - $QQ$ is torsionfree and thus flat, so $Tor_1^ZZ (QQ , -) = 0$; - $tor1z (ZZ over m, A) iso {a in A | m a = 0}$; -- $tor1z (QQ over ZZ, QQ over ZZ)$ is obtained from the #lest induced by applying $(- tpz QQ over ZZ)$ to $0 -> ZZ -> QQ -> QQ over ZZ -> 0$. +- $tor1z (QQ over ZZ, QQ over ZZ)$ is obtained from the #lest induced by applying $(- tpz QQ over ZZ)$ to $0 -> ZZ -> QQ -> QQ over ZZ -> 0$. == Hom-sets -#align(center, table(columns: (auto, auto, auto, auto, auto), inset: 7pt, stroke: none, -[$hom_ZZ$], table.vline(), $ZZ$, $QQ$, $ZZ over m$, $QQ over ZZ$, -table.hline(), -$ZZ$, $ZZ$, $QQ$, $ZZ over m$, $QQ over ZZ$, -$QQ$, $0$, $QQ$, $0$, [$?$], -$ZZ over n$, $0$, $0$, $ZZ over"gcd"(m, n)$, $ZZ over n$, -$QQ over ZZ$, $0$, $0$, $0$, $hat(ZZ)$ -)) +#align( + center, + table(columns: (auto, auto, auto, auto, auto), inset: 7pt, stroke: none, + [$hom_ZZ$], table.vline(), $ZZ$, $QQ$, $ZZ over m$, $QQ over ZZ$, + table.hline(), + $ZZ$, $ZZ$, $QQ$, $ZZ over m$, $QQ over ZZ$, + $QQ$, $0$, $QQ$, $0$, [$?$], + $ZZ over n$, $0$, $0$, $ZZ over"gcd"(m, n)$, $ZZ over n$, + $QQ over ZZ$, $0$, $0$, $0$, $hat(ZZ)$ + ), +) Each row represents the first argument in $hom$ and each column the second. A question mark indicates that the result is beyond the scope of the course. -- $hom_ZZ (ZZ, A) iso A$ (in general, $hom_R (R, M) iso M$); -- $hom_ZZ (QQ, QQ) iso QQ$ by establishing a (fairly easy) bijection; -- $hom_ZZ (QQ, ZZ) iso 0$ because no integer is arbitrarily divisible, e.g. $f(1) = n f (1/n)$ where $f(1), f(1/n) in ZZ$, so $f(1)$ is divisible by any $n$ which is impossible unless $f(1) = 0$. Similarly $hom_ZZ (QQ, ZZ over m) iso 0$; -- $hom_ZZ (ZZ over n, A) iso {a in A | n a = 0}$ (incidentally, this is isomorphic to $tor1z (ZZ over n, A)$); +- $hom_ZZ (ZZ, A) iso A$ (in general, $hom_R (R, M) iso M$); +- $hom_ZZ (QQ, QQ) iso QQ$ by establishing a (fairly easy) bijection; +- $hom_ZZ (QQ, ZZ) iso 0$ because no integer is arbitrarily divisible, e.g. $f(1) = n f (1/n)$ where $f(1), f(1/n) in ZZ$, so $f(1)$ is divisible by any $n$ which is impossible unless $f(1) = 0$. Similarly $hom_ZZ (QQ, ZZ over m) iso 0$; +- $hom_ZZ (ZZ over n, A) iso {a in A | n a = 0}$ (incidentally, this is isomorphic to $tor1z (ZZ over n, A)$); - $hom_ZZ (A, QQ over ZZ)$ is the *Pontryagin duality* of $A$. == $Ext$ groups -#align(center, table(columns: (auto, auto, auto, auto, auto), inset: 7pt, stroke: none, -[$Ext_1^ZZ$], table.vline(), $ZZ$, $QQ$, $ZZ over m$, $QQ over ZZ$, -table.hline(), -$ZZ$, $0$, $0$, $0$, $0$, -$QQ$, $?$, $0$, $?$, [$0$], -$ZZ over n$, $ZZ over n$, $0$, $ZZ over"gcd"(m, n)$, $0$, -$QQ over ZZ$, $?$, $0$, $?$, $0$ -)) - -Each row represents the first argument in $Ext$ and each column the second. - -- $Ext_1^ZZ (ZZ, -) = 0$ as $ZZ$ is projective; -- $Ext_1^ZZ (-, QQ) = 0$ as $QQ$ is injective; -- $Ext_1^ZZ (-, QQ over ZZ) = 0$ as $QQ over ZZ$ is injective; +#align( + center, + table(columns: (auto, auto, auto, auto, auto), inset: 7pt, stroke: none, + [$Ext_1^ZZ$], table.vline(), $ZZ$, $QQ$, $ZZ over m$, $QQ over ZZ$, + table.hline(), + $ZZ$, $0$, $0$, $0$, $0$, + $QQ$, $?$, $0$, $?$, [$0$], + $ZZ over n$, $ZZ over n$, $0$, $ZZ over"gcd"(m, n)$, $0$, + $QQ over ZZ$, $?$, $0$, $?$, $0$ + ), +) + +Each row represents the first argument in $Ext$ and each column the second. + +- $Ext_1^ZZ (ZZ, -) = 0$ as $ZZ$ is projective; +- $Ext_1^ZZ (-, QQ) = 0$ as $QQ$ is injective; +- $Ext_1^ZZ (-, QQ over ZZ) = 0$ as $QQ over ZZ$ is injective; - $Ext_1^ZZ (ZZ over n, A) iso A over n A$ using the projective resolution of $ZZ over n$. // == $R = k[x]$ -// We consider when $R$ is the polynomial ring $k[x]$ for a field $k$. Note that $k[x]$ is a PID. +// We consider when $R$ is the polynomial ring $k[x]$ for a field $k$. Note that $k[x]$ is a PID. -// === Projective, injective, and flat modules +// === Projective, injective, and flat modules // - $k(x)$, the field of fractions, is an injective $k[x]$-module; -// - Any quotient of an injective $k[x]$-module is injective; +// - Any quotient of an injective $k[x]$-module is injective; // - $k[x, x^(-1)]$ is a flat $k[x]$-module since it is the localisation of $x$ in $k[x]$; alternatively, it can be constructed as a filtered colimit of flat modules $k[x] ->^(x^(-1)) x^(-1) k[x] -> ^(x^(-2)) x^(-2) k[x] ->...$. -// === Resolutions +// === Resolutions -// #align(center, table(columns: (auto, auto, auto), inset: 7pt, stroke: none, +// #align(center, table(columns: (auto, auto, auto), inset: 7pt, stroke: none, // [Type], [Object], [Resolution], // table.hline(), // [projective], $k[x] over (x^m)$, $0->k[x]->^(x^m) k[x] -> k[x] over (x^m) -> 0$, // [injective], $k[x]$, $0-> k[x] -> k(x) -> k(x) over k[x] -> 0$, -// [flat], $k[x, x^(-1)] over k[x]$, $0 -> k[x] -> k[x, x^(-1)] -> k[x, x^(-1)] over k[x] -> 0$, +// [flat], $k[x, x^(-1)] over k[x]$, $0 -> k[x] -> k[x, x^(-1)] -> k[x, x^(-1)] over k[x] -> 0$, // )) \ No newline at end of file diff --git a/libs/color.typ b/libs/color.typ index 80bd761..f8617e0 100644 --- a/libs/color.typ +++ b/libs/color.typ @@ -14,7 +14,6 @@ fill: rgb("#e8e8f8"), breakable: true, separator: [#h(0em).#h(0.2em)], - ) #let proposition = thmbox( @@ -39,7 +38,6 @@ stroke: rgb("#ffaaaa") + 1pt, breakable: true, separator: [#h(0em).#h(0.2em)], - ) #let remark = thmplain( diff --git a/libs/template.typ b/libs/template.typ index 946378f..da6c874 100644 --- a/libs/template.typ +++ b/libs/template.typ @@ -111,7 +111,10 @@ #let fw(doc) = box(width: 100%)[#doc] -#let proof(title: "Proof", term) = block(width: 100%, breakable: true)[_#title._ #term #h(1fr) $qed$] +#let proof(title: "Proof", term) = block( + width: 100%, + breakable: true, +)[_#title._ #term #h(1fr) $qed$] #let project(title: "", authors: (), date: none, body) = { // Set the document's basic properties. @@ -147,6 +150,6 @@ body } -#import color_style : * +#import color_style: * diff --git a/main.typ b/main.typ index 85a911b..09098fa 100644 --- a/main.typ +++ b/main.typ @@ -8,7 +8,7 @@ "Notes by Yuhang Wei", "Lectures by Kobi Kremnitzer", "Partially Based on Previous Notes by Sebastian Monnet" - ), + ), // date: "October 24, 2023", date: datetime.today().display("[day padding:none] [month repr:long] [year]"), ) @@ -21,26 +21,26 @@ #align(center)[#image("imgs/by-nc.svg", width: 60pt)] This work is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License. -You are free to share, remix, and adapt this content, as long as it is not for commercial purposes. +You are free to share, remix, and adapt this content, as long as it is not for commercial purposes. For more details, visit: https://creativecommons.org/licenses/by-nc/4.0/. #pagebreak() #heading(numbering: none)[Preface] These notes are mostly based on the University of Oxford course 'C2.2 Homological Algebra' lectured by Prof Kobi Kremnitzer during the 2023-24 Michaelmas term. Portions of the previous notes @notes are reused, along with relevant parts of @weibel, upon which the course is largely based. Another important reference is @rotman, which provides detailed and, at times, meticulous proofs. I have labelled the source of many proofs (whether they are similar or different to the ones presented) for the reader's reference. -An overview of these notes follows. @module-recap states without proof some results from *module theory* which we will use later. @cat-theory is a crash course on *category theory*, based on which @ab-cat constructs *abelian categories* in a step-by-step manner. In general, abelian categories serve as the 'stage' for homological algebra, but as we will see, $RMod$, the category of $R$-modules, which is 'concrete' and thus easier to work with, is in fact a sufficient representative of abelian categories. Focusing on $RMod$, we then move on to establish the *module tensor product* (@tp-module), where the *tensor-hom adjunction* emerges as a significant result. We then prove that $RMod$ has *enough projectives and injectives* in @enough-proj-inj, a property crucial to constructing resolutions in $RMod$. @chain-complex then discusses *(co)chain complexes* and their *(co)homology*, which originally arise in algebraic topology but are viewed solely as algebraic entities here; they lead to the definition and several important properties of *resolutions*. With all the tools in hand, in @derived-functor we are able to define our main protagonist, *derived functors*, which are proven to be *homological $delta$-functors*, in some sense a generalisation of (co)homology functors. The two main *derived functors* we study are *$Ext$* and *$Tor$*, induced by $hom$ and tensor products respectively, as defined in @balancing-ext-tor. *$Ext$* and *$Tor$* possess a crucial property of being *balanced*, which requires the introduction of *mapping cones* and *double and total complexes* for proof. Further properties of *$Ext$*, including its *ring structure* and its connection with *module extensions*, are discussed in @ring-ext and @ext-extension, while further properties of *$Tor$*, demonstrated by *flat modules* and the *Universal Coefficient Theorem*, are the topic of @tor-flat. The machinery we build is also applied to construct *Koszul (co)homology* and *group (co)homology* in @koszul and @group-cohomology, respectively. +An overview of these notes follows. @module-recap states without proof some results from *module theory* which we will use later. @cat-theory is a crash course on *category theory*, based on which @ab-cat constructs *abelian categories* in a step-by-step manner. In general, abelian categories serve as the 'stage' for homological algebra, but as we will see, $RMod$, the category of $R$-modules, which is 'concrete' and thus easier to work with, is in fact a sufficient representative of abelian categories. Focusing on $RMod$, we then move on to establish the *module tensor product* (@tp-module), where the *tensor-hom adjunction* emerges as a significant result. We then prove that $RMod$ has *enough projectives and injectives* in @enough-proj-inj, a property crucial to constructing resolutions in $RMod$. @chain-complex then discusses *(co)chain complexes* and their *(co)homology*, which originally arise in algebraic topology but are viewed solely as algebraic entities here; they lead to the definition and several important properties of *resolutions*. With all the tools in hand, in @derived-functor we are able to define our main protagonist, *derived functors*, which are proven to be *homological $delta$-functors*, in some sense a generalisation of (co)homology functors. The two main *derived functors* we study are *$Ext$* and *$Tor$*, induced by $hom$ and tensor products respectively, as defined in @balancing-ext-tor. *$Ext$* and *$Tor$* possess a crucial property of being *balanced*, which requires the introduction of *mapping cones* and *double and total complexes* for proof. Further properties of *$Ext$*, including its *ring structure* and its connection with *module extensions*, are discussed in @ring-ext and @ext-extension, while further properties of *$Tor$*, demonstrated by *flat modules* and the *Universal Coefficient Theorem*, are the topic of @tor-flat. The machinery we build is also applied to construct *Koszul (co)homology* and *group (co)homology* in @koszul and @group-cohomology, respectively. For most of the proofs, I have tried to improve them by filling in more detailed steps by using available references and adding cross-references to previous results in the notes. Two large deviations from the lectures are @ab-cat and @tp-module. A lot more details are supplemented in both sections so as to make them as self-contained as possible. I have also chosen to introduce module tensor products based on @rotman, starting from the universal mapping problem of $R$-biadditive maps, whereas the lectures used the tensor product of vector spaces as an initial motivation. -// A current drawback of these notes is the lack of computational examples in later sections, e.g., on *$Ext$* and *$Tor$*. The reader is directed to the aforementioned references for those. Also, I must clarify that I am uncertain about the examinable content while writing these notes. +// A current drawback of these notes is the lack of computational examples in later sections, e.g., on *$Ext$* and *$Tor$*. The reader is directed to the aforementioned references for those. Also, I must clarify that I am uncertain about the examinable content while writing these notes. Homological Algebra is admittedly a challenging yet rewarding course. On a personal note, I chose to work on these notes to enhance my own learning. As a learner, I acknowledge that these notes must contain mistakes and improvable parts. Therefore, the reader is welcome to submit issues for any advice on GitHub (https://github.com/EricWay1024/Homological-Algebra-Notes), where these notes are open-sourced#footnote[Under the Creative Commons Attribution-NonCommercial 4.0 International License.] and updated#footnote[For anyone interested, I write these notes with Typst, a fairly new but much simpler alternative of LaTeX.]. One can also find a not-so-colourful version of these notes fit for printing by following that link. -Finally, I would like to thank Prof Kobi Kremnitzer for delivering the lectures and Sebastian Monnet for creating the previous version of these notes. Please see the GitHub repo for further acknowledgements. +Finally, I would like to thank Prof Kobi Kremnitzer for delivering the lectures and Sebastian Monnet for creating the previous version of these notes. Please see the GitHub repo for further acknowledgements. #align(right)[ -Yuhang Wei + Yuhang Wei ] #pagebreak() From b90e8714f74082da1dcb0c933fc8fb13efb7f747 Mon Sep 17 00:00:00 2001 From: Yuhang Eric Wei Date: Mon, 25 Nov 2024 13:58:48 +0800 Subject: [PATCH 3/4] Fix punctuations Consistency of trailing punctuations in displayed formulae #9 --- ha/2-ab.typ | 28 +++++++++++++-------------- ha/3-tp.typ | 56 ++++++++++++++++++++++++++--------------------------- 2 files changed, 41 insertions(+), 43 deletions(-) diff --git a/ha/2-ab.typ b/ha/2-ab.typ index a06d916..a5a3307 100644 --- a/ha/2-ab.typ +++ b/ha/2-ab.typ @@ -100,7 +100,7 @@ In fact, a final object is an empty product and an initial object an empty copro ), ) - Explicitly, we have for $j, k in {1, 2}$, $ p_j oo i_k = cases(id_(X_j) quad &"if " j = k, 0 quad &"otherwise") $ + Explicitly, we have for $j, k in {1, 2}$, $ p_j oo i_k = cases(id_(X_j) quad &"if " j = k\,, 0 quad &"otherwise".) $ // #image("imgs/16.png") Then we have $ p_1 compose lr((i_1 p_1 plus i_2 p_2)) eq p_1 comma quad p_2 compose lr((i_1 p_1 plus i_2 p_2)) eq p_2. $ @@ -206,10 +206,7 @@ Now we can reconcile the two definitions we have had for zero morphisms. ] #proof[ - Take any $X$ and $u : X -> A$, we have - $ - X arrow^u A ->^i B. - $ + Take any $X$ and $u : X -> A$, we have $X arrow^u A ->^i B.$ $i = 0$, so $i oo u = 0$; but since $i$ is monic, $u = 0$ by @ab-mono. Therefore there is a unique (zero) morphism from any $X$ to $A$, so $A$ is final and thus zero. ] @@ -407,11 +404,11 @@ We now introduce the most important member in the family of abelian categories. ($RMod$ is pre-abelian.) Let $f : A -> B$ be a morphism in $RMod$. Then $ - Ker(f) = {a in A : f(a) = 0} + Ker(f) = {a in A : f(a) = 0}, $ with $ker(f) : Ker(f) -> A$ being the inclusion map, is a categorical kernel. Also, $ - Coker(f) = B over IM(f) + Coker(f) = B over IM(f), $ where $IM(f) = {f(a) in B : a in A}$, with $coker(f) : B -> Coker(f)$ being the quotient map, is a categorical cokernel. @@ -429,7 +426,9 @@ We now introduce the most important member in the family of abelian categories. #remark[ Note that the product and coproduct of a family $(M_i)_(i in I)$ coincide when $I$ is finite but differ when $I$ is infinite: $ - union.sq.big_(i in I) M_i = plus.circle.big_(i in I) M_i = {(m_i)_(i in I) | m_i in M_i, m_i = 0 "for all but finitely many" i}, + union.sq.big_(i in I) M_i = plus.circle.big_(i in I) M_i = { + (m_i)_(i in I) | m_i in M_i, m_i = 0 "for all but finitely many" i + }, $ $ product_( i in I) M_i = {(m_i)_(i in I) | m_i in M_i}. $ ] @@ -762,11 +761,11 @@ In other words, $P$ is projective if for any #sest $ses(X, Y, Z)$ in $cA$, $ ses Inspired by the discussion above, we define $G$ in the following way. We first set $G(R) = P$ and $G(R^(ds I)) = P^(ds I)$. Any morphism $f: R^(ds J) -> R^(ds I)$ can be represented by a (possibly infinite) matrix with entries $a_(i j) in R$ for all $i in I$ and $j in J$. However, notice that $R = End(A) (P)$ by definition and thus the same matrix $(a_(i j))_(i in I, j in J)$ can also be seen as a morphism $P^(ds J) -> P^(ds I)$, which is defined to be $G(f)$. Now, for any $R$-module $M$, we can find a presentation $ - R^(ds J) ->^f R^(ds I) -> M -> 0 + R^(ds J) ->^f R^(ds I) -> M -> 0. $ Under $G$, this becomes $ - P^(ds J) ->^(G(f)) P^(ds I) -> G(M) -> 0 + P^(ds J) ->^(G(f)) P^(ds I) -> G(M) -> 0, $ where we define $G(M) = Coker(G(f))$. It can be verified that $G$ is a functor. // TODO ? @@ -803,11 +802,10 @@ In other words, $P$ is projective if for any #sest $ses(X, Y, Z)$ in $cA$, $ ses Since $F G$ preserves cokernels, we see that $F G(M) iso M$. Hence $F G$ is naturally isomorphic to the identity functor of $ModR$. For $G F: cA -> cA$, we have - $G F (P) = G( R) = P -$, + $G F (P) = G( R) = P$, so $ G F (P^(ds I)) =P^( ds I)$. Now take any $X in cA$, since $P$ is a generator, we can find $ - P^(ds J) -> P^(ds I) -> X -> 0 + P^(ds J) -> P^(ds I) -> X -> 0. $ A similar argument as before gives the result. // #TODO review @@ -865,8 +863,8 @@ This theorem indicates that we can embed an abstract category into a concrete on // #image("imgs/23.png") such that the rows are exact, then there is an exact sequence - $ Ker f -> Ker g -> Ker h attach(->, t: diff) Coker f -> Coker g -> Coker h $ - where the *connecting (homo)morphism* $diff$ is given by a well-defined formula $ diff(c') = i^(-1) g p'^(-1) (c') + IM(f) $ where $p'^(-1)$ means finding some element $b' in B'$ such that $p'(b') = c'$ and so on. + $ Ker f -> Ker g -> Ker h attach(->, t: diff) Coker f -> Coker g -> Coker h. $ + Here, the *connecting (homo)morphism* $diff$ is given by a well-defined formula $ diff(c') = i^(-1) g p'^(-1) (c') + IM(f), $ where $p'^(-1)$ means finding some element $b' in B'$ such that $p'(b') = c'$ and so on. Further, if $A' -> B'$ is monic, so is $Ker f -> Ker g$. If $B -> C$ is epic, so is $Coker g -> Coker h$. ] diff --git a/ha/3-tp.typ b/ha/3-tp.typ index ecec51b..2e59b61 100644 --- a/ha/3-tp.typ +++ b/ha/3-tp.typ @@ -83,11 +83,11 @@ $ #proof[ - The function $ f : M times N &-> M' tpr N' \ (m, n) &|-> phi(m) tp psi(n) $ + The function $ f : M times N &-> M' tpr N', \ (m, n) &|-> phi(m) tp psi(n), $ is $R$-biadditive. Therefore, $f$ induces a unique homomorphism $ - hat(f): M tpr N &-> M' tpr N' \ - m tp n &|-> phi(m) tp psi(n) + hat(f): M tpr N &-> M' tpr N', \ + m tp n &|-> phi(m) tp psi(n), $ which we write as $phi tp psi$. ] @@ -101,14 +101,14 @@ $ #corollary[ Let $M$ be a #rrm and $N$ be a #lrm, then we have functors $ - M tpr - : RMod &-> Ab \ - B &|-> M tpr B \ - (g:B-> B') &mapsto id_M tp g + M tpr - : RMod &-> Ab, \ + B &|-> M tpr B, \ + (g:B-> B') &mapsto id_M tp g; $ $ - - tpr N : ModR &-> Ab \ - A &|-> A tpr N \ - (f: A -> A') &mapsto f tp id_N + - tpr N : ModR &-> Ab, \ + A &|-> A tpr N, \ + (f: A -> A') &mapsto f tp id_N. $ ] @@ -229,8 +229,8 @@ $ #proposition[ If $R$ is a ring, $M$ is a #rrm and $N$ is a #lrm, then there is a natural $ZZ$-isomorphism $ - tau : M tpr N &-> N tp_(R^op) M \ - m tp n &|-> n tp m + tau : M tpr N &-> N tp_(R^op) M, \ + m tp n &|-> n tp m. $ ] #proof[ @@ -249,8 +249,8 @@ $ #corollary[ If $R$ is a commutative ring and $M$, $N$ are $R$-modules, then there is a natural $R$-isomorphism $ - tau: M tpr N &-> N tpr M \ - m tp n &mapsto n tp m + tau: M tpr N &-> N tpr M, \ + m tp n &mapsto n tp m. $ ] @@ -270,7 +270,7 @@ $ #corollary[ Let $R$ be a commutative ring, and let $M_1, M_2, ..., M_n$ be $R$-modules. Let $sigma in S_n$ (where $S_n$ is the symmetric group of degree $n$), then $ - ( ... (M_1 tpr M_2) tpr ... tpr M_n) iso ( ... (M_sigma(1) tpr M_sigma(2)) tpr ... tpr M_sigma(n)) + ( ... (M_1 tpr M_2) tpr ... tpr M_n) iso ( ... (M_sigma(1) tpr M_sigma(2)) tpr ... tpr M_sigma(n)). $ ] #proof[ @@ -280,8 +280,8 @@ $ #proposition[ Given ring $R$ and #lrm $M$, there is a natural $R$-isomorphism $ - phi_M : R tpr M &-> M \ - r tp m &|-> r m + phi_M : R tpr M &-> M, \ + r tp m &|-> r m. $ ] @@ -417,10 +417,10 @@ Then this makes $hom_S (B, -)$ a functor from $ModS$ to $ModR$. #theorem[ Let $R$, $S$ be rings. Let $A$ be a #rrm, $B$ be an $R$-$S$-bimodule, and $C$ be a right $S$-module. Then we have a canonical isomorphism - $ tau: hom_S (A tpr B, C) bij hom_R (A, hom_S (B, C)) $ + $ tau: hom_S (A tpr B, C) bij hom_R (A, hom_S (B, C)), $ where for $f : A tpr B -> C$, $a in A$, and $b in B$, $ - tau(f)(a)(b) = f(a tp b) + tau(f)(a)(b) = f(a tp b). $ ] @@ -438,7 +438,7 @@ Then this makes $hom_S (B, -)$ a functor from $ModS$ to $ModR$. #corollary[ Let $R$, $S$ be rings and let $B$ be an $R$-$S$-bimodule. We have an adjunction $ - (- tpr B) tack.l hom_S (B, -) + (- tpr B) tack.l hom_S (B, -), $ where $(- tpr B) : ModR -> ModS$ and $hom_S (B, -) : ModS -> ModR$. ] @@ -451,11 +451,11 @@ Then this makes $hom_S (B, -)$ a functor from $ModS$ to $ModR$. #theorem[ Let $A$ be a left $R$-module, $B$ be an $S$-$R$-bimodule, and $C$ be a left $S$-module, then there is a canonical isomorphism $ - hom_S (B tpr A, C) bij hom_R (A, hom_S (B, C)) + hom_S (B tpr A, C) bij hom_R (A, hom_S (B, C)). $ Thus $(B tpr -): RMod -> SMod$ and $hom_S (B, -): SMod -> RMod$ form an adjunction $ - (B tpr -) tack.l hom_S (B, -) + (B tpr -) tack.l hom_S (B, -). $ Hence $(B tpr -)$ preserves colimits and in particular is right exact. ] @@ -475,14 +475,14 @@ Then this makes $hom_S (B, -)$ a functor from $ModS$ to $ModR$. #example[ Let $R$ be a commutative ring. Given $R$-modules $N$ and $M$, suppose we want to calculate $N tp_R M$, then we can pick the relations and generators of $N$: - $ R^(ds J) -> R^(ds I) -> N -> 0 $ + $ R^(ds J) -> R^(ds I) -> N -> 0. $ Consider $R^(ds J) -> R^(ds I)$, this homomorphism between free modules can be represented by a (possibly infinite) matrix $a_(i j) in R$. Therefore, we can write - $ N = Coker(R^(ds J) rgt((a_(i j))) R^(ds I)) $ + $ N = Coker(R^(ds J) rgt((a_(i j))) R^(ds I)). $ Notice that the same matrix can also act as $M^(ds J) -> M^(ds I) $, hence $ - N tpr M = Coker(R^(ds J) rgt((a_(i j))) R^(ds I)) tpr M iso Coker(R^(ds J) tpr M rgt((a_(i j))) R^(ds I) tpr M) \ iso Coker((R tpr M)^(ds J) rgt((a_(i j))) (R tpr M)^(ds I)) iso Coker (M^(ds J) rgt((a_(i j))) M^(ds I)) + N tpr M = Coker(R^(ds J) rgt((a_(i j))) R^(ds I)) tpr M iso Coker(R^(ds J) tpr M rgt((a_(i j))) R^(ds I) tpr M) \ iso Coker((R tpr M)^(ds J) rgt((a_(i j))) (R tpr M)^(ds I)) iso Coker (M^(ds J) rgt((a_(i j))) M^(ds I)). $ ] @@ -500,11 +500,11 @@ Then this makes $hom_S (B, -)$ a functor from $ModS$ to $ModR$. // Assume $R$ is a commutative ring. The functor $- tp_R M$ is left adjoint which implies that it is right exact and commutes with all colimits. #example[ - Suppose $I$ is an ideal of $R$ generated by ${x_i}_(i in J)$, then we have #sest $ ses(I, R, R \/ I) $ On the other hand, $ R^(ds J) -> I -> 0 $ and thus - $ R^(ds J) rgt((x_j)) R -> R \/ I -> 0 $ + Suppose $I$ is an ideal of $R$ generated by ${x_i}_(i in J)$, then we have #sest $ ses(I, R, R \/ I). $ On the other hand, $ R^(ds J) -> I -> 0, $ and thus + $ R^(ds J) rgt((x_j)) R -> R \/ I -> 0. $ Let $M$ be a left $R$-module, then - $ (R over I )tpr M iso Coker (M^(ds J) rgt((x_j)) M) = M over I M $ + $ (R over I )tpr M iso Coker (M^(ds J) rgt((x_j)) M) = M over I M. $ ] // [Check https://math.stackexchange.com/questions/175789/how-to-prove-that-r-i-otimes-r-m-cong-m-im] @@ -514,7 +514,7 @@ Then this makes $hom_S (B, -)$ a functor from $ModS$ to $ModR$. #example[ The *localisation* of a commutative ring $R$ at element $x$ is defined as $R[t] over (t x - 1)$, denoted as $R[x^(-1)]$. For $R$-module $M$, we have - $ R[x^(-1)] tpr M iso M[x^(-1)] $ + $ R[x^(-1)] tpr M iso M[x^(-1)]. $ ] #proof[ From 6094ba452a4628d184647df92eb3b974c740faef Mon Sep 17 00:00:00 2001 From: Yuhang Eric Wei Date: Tue, 26 Nov 2024 09:18:25 +0800 Subject: [PATCH 4/4] Fix punctuations Consistency of trailing punctuations in displayed formulae #9 --- ha/4-enough.typ | 26 +++++++++++------------ ha/5-cc.typ | 9 ++++++-- ha/6-df.typ | 12 +++++------ ha/7-balance.typ | 34 ++++++++++++++++-------------- ha/9-tor.typ | 28 ++++++++++++------------ ha/a-kc.typ | 4 ++-- ha/b-ext1.typ | 8 +++---- ha/c-gc.typ | 55 +++++++++++++++++++++++++++--------------------- 8 files changed, 95 insertions(+), 81 deletions(-) diff --git a/ha/4-enough.typ b/ha/4-enough.typ index 3918344..2bd95fa 100644 --- a/ha/4-enough.typ +++ b/ha/4-enough.typ @@ -177,22 +177,22 @@ For most of our homological algebra to work, an abelian category needs to have e extension $alpha$ of $f$ to $B$. [Construction of $phi : R-> M$.] Suppose that $A^prime eq.not B$. Let $b in B without A^prime$. Let - $ I eq { r in R:b r in A^prime} $ Then $I$ is a right ideal of + $ I eq { r in R:b r in A^prime}. $ Then $I$ is a right ideal of $R$, and we have a map $ - tilde(phi):I &->M \ + tilde(phi):I &->M, \ r &|-> alpha^prime lr((b r)). $ By assumption, this extends to a map $phi colon R arrow.r M$. [Construction of $alpha'' : A'' -> M$.] Define $ - A^(prime prime) eq A^prime plus R b = {a + r b : a in A', r in R} subset.eq B + A^(prime prime) eq A^prime plus R b = {a + r b : a in A', r in R} subset.eq B. $ We claim that there is a well-defined map $ - alpha^(prime prime) colon A^(prime prime) &arrow.r M \ a plus b r &arrow.r.bar alpha^prime lr((a)) plus phi lr((r)), + alpha^(prime prime) colon A^(prime prime) &arrow.r M, \ a plus b r &arrow.r.bar alpha^prime lr((a)) plus phi lr((r)), $ where $a in A^prime$ and $r in R$. To see that this is well-defined, suppose that $a plus b r eq a^prime plus b r^prime$ @@ -273,7 +273,7 @@ For most of our homological algebra to work, an abelian category needs to have e #proof[ Suppose ${P_i : i in I}$ is a family of projective modules. Then for each $i in I$, by @projective-summand we can write $F_i = P_i xor Q_i$ for some free $R$-module $F_i$ and $R$-module $Q_i$. Then $ - plus.circle.big_(i in I) F_i = plus.circle.big_(i in I) P_i xor plus.circle.big_(i in I) Q_i + plus.circle.big_(i in I) F_i = plus.circle.big_(i in I) P_i xor plus.circle.big_(i in I) Q_i. $ Since $plus.circle.big_(i in I) F_i$ is also a free module, $plus.circle.big_(i in I) P_i$ is also projective. // The first half is easily seen from @@ -297,14 +297,14 @@ For most of our homological algebra to work, an abelian category needs to have e #proof[ Define a map $ - I : Ab &-> Ab \ + I : Ab &-> Ab, \ A &|-> product_(hom_Ab (A, QQ over ZZ)) QQ over ZZ. $ For any $A in Ab$, $I(A)$ is injective as a product of injectives $QQ over ZZ$. Consider the canonical map $ - e_A: A &-> I(A) \ + e_A: A &-> I(A), \ a &|-> (phi(a))_(phi in hom_Ab (A, QQ over ZZ)), $ @@ -326,9 +326,9 @@ For most of our homological algebra to work, an abelian category needs to have e #proof[ @notes[Lemma 5.25] and @weibel[Proposition 2.3.10]. We want to show that - $ Hom(A)(-, R(I)) $ is exact. + $Hom(A)(-, R(I))$ is exact. We have - $ Hom(A)(-, R(I)) iso Hom(B)(L(-), I ) $ + $ Hom(A)(-, R(I)) iso Hom(B)(L(-), I ), $ but $L$ is exact by assumption and $Hom(B)(-, I)$ is exact because $I$ is injective in $cB$, so $Hom(B)(L(-), I )$ is a composition of exact functors and thus exact. ] With this proposition, we can prove that an abelian category has enough projectives or injectives by constructing adjunctions. @@ -352,15 +352,15 @@ With this proposition, we can prove that an abelian category has enough projecti #proof[ Define map $ - I : RMod &-> RMod \ - M &|-> product_(homr(M, hom_Ab (R, QQ over ZZ))) hom_Ab (R, QQ over ZZ) + I : RMod &-> RMod, \ + M &|-> product_(homr(M, hom_Ab (R, QQ over ZZ))) hom_Ab (R, QQ over ZZ). $ For any left $R$-module $M$, $I(M)$ is injective as a product of injectives, and there is a canonical morphism $ - e_M: M &-> I(M ) \ - m &|-> (phi(m))_(phi in homr(M, hom_Ab (R, QQ over ZZ))) + e_M: M &-> I(M ), \ + m &|-> (phi(m))_(phi in homr(M, hom_Ab (R, QQ over ZZ))). $ // Exercise: $e_M$ is one-to-one (mono). (like what we did before.) [TODO] We would like to show that $e_M$ is an injective function. diff --git a/ha/5-cc.typ b/ha/5-cc.typ index bc1c825..195a733 100644 --- a/ha/5-cc.typ +++ b/ha/5-cc.typ @@ -23,7 +23,12 @@ Let $cA$ be an abelian category. #remark[ - In the case of $RMod$, an *$n$-cycle* in $C_n$ is an element $x in C_n$ such that $d(x) = 0$, and an *$n$-boundary* in $C_n$ is an element $y in C_n$ such that there exists $c' in C_(n+1)$ such that $d(c') = y$. An $n$-boundary must be an $n$-cycle because $d^2= 0$. The $n$-th homology becomes a quotient module#footnote()[The slogan is that "homology is cycles modulo boundaries" or even "homology is kernel modulo image".], $ H_n (C) = Z_n / B_n = (Ker d_n) /( IM d_(n+1)) $ An element in $H_n (C)$ can be written as $x + B_n$, or simply $[x]$, for some $n$-cycle $x$. + In the case of $RMod$, an *$n$-cycle* in $C_n$ is an element $x in C_n$ such that $d(x) = 0$, and an *$n$-boundary* in $C_n$ is an element $y in C_n$ such that there exists $c' in C_(n+1)$ such that $d(c') = y$. + An $n$-boundary must be an $n$-cycle because $d^2= 0$. + The $n$-th homology becomes a quotient module + #footnote()[The slogan is that "homology is cycles modulo boundaries" or even "homology is kernel modulo image".], + $ H_n (C) = Z_n / B_n = (Ker d_n) /( IM d_(n+1)). $ + An element in $H_n (C)$ can be written as $x + B_n$, or simply $[x]$, for some $n$-cycle $x$. ] #remark[ @@ -357,7 +362,7 @@ Therefore, we can form short exact sequences with chain complexes, and it turns and the other two columns are similar. By the Snake Lemma again, we have the connecting map: $ - H_n (A) -> H_n (B) -> H_n (C) rgt(diff_n) H_(n-1) (A) -> H_(n-1) (B) -> H_(n-1) (C) + H_n (A) -> H_n (B) -> H_n (C) rgt(diff_n) H_(n-1) (A) -> H_(n-1) (B) -> H_(n-1) (C). $ // #align(center,image("imgs/2023-11-03-11-53-54.png",width:80%)) diff --git a/ha/6-df.typ b/ha/6-df.typ index f7ba4c6..1ab5c10 100644 --- a/ha/6-df.typ +++ b/ha/6-df.typ @@ -89,9 +89,9 @@ If $p$ is an integer, the collection ${T_n : Ab -> Ab}_(n>=0)$ of functors defined by $ T_n (A) = cases( - A over p A quad& n = 0, - zws_p A := brace.l a in A colon p a eq 0 brace.r quad& n = 1, - 0 quad& n >= 2 + A over p A quad& n = 0 \,, + zws_p A := brace.l a in A colon p a eq 0 brace.r quad& n = 1 \,, + 0 quad& n >= 2\, ) $ form a homological $delta$-functor (or a cohomological @@ -191,7 +191,7 @@ In fact, our definition of the "functor" $L_i F$ is still incomplete as we have #proof[ Consider the projective resolution of $A$: $ - ... P_1 ->^(d_1) P_0 -> A -> 0 + ... P_1 ->^(d_1) P_0 -> A -> 0. $ By definition, $L_0 F(A) = H_0(F(P)) iso Coker(F(d_1))$. Since $F$ is right exact, it preserves cokernels, so $Coker(F(d_1)) iso F(Coker(d_1)) = F(A)$. @@ -229,7 +229,7 @@ In fact, our definition of the "functor" $L_i F$ is still incomplete as we have Now we complete the definition of $L_i F$ and prove that it is indeed a functor. #lemma[ - If $f : A' -> A$ a morphism in $cA$, then there is a natural map $ L_i F(f) : L_i F(A') -> L_i F(A) $ + If $f : A' -> A$ a morphism in $cA$, then there is a natural map $ L_i F(f) : L_i F(A') -> L_i F(A). $ ] #proof[ Let $P'_cx -> A'$ and $P_cx -> A$ be projective resolutions. By the @comparison[Comparison Theorem], $f$ lifts to a chain map $tilde(f) : P'_cx -> P_cx$, which gives a map $tilde(f_ast) : H_i F(P') -> H_i F(P)$. As any other lift is chain homotopic to $tilde(f)$, the map $tilde(f_ast)$ is independent of the lift. @@ -276,7 +276,7 @@ Now we complete the definition of $L_i F$ and prove that it is indeed a functor. #definition[ Let $cA$ and $cB$ be two abelian categories and let $F : cA -> cB$ be a left exact functor. Assume that $cA$ has enough injectives and for any $A in cA$ we have an injective resolution $A -> I^cx$. Then the *$i$-th right derived functor* $R^i F$ is defined as - $ R^i F (A) := H^i (F (I^cx)) $ + $ R^i F (A) := H^i (F (I^cx)). $ ] // If $F : cA -> cB$ is left exact, we can define the right derived functor $R^i F(A) = H^i F(I)$ for $A -> I^cx$. diff --git a/ha/7-balance.typ b/ha/7-balance.typ index 2a0abff..e4e088a 100644 --- a/ha/7-balance.typ +++ b/ha/7-balance.typ @@ -32,7 +32,7 @@ This isomorphism is called the *balancing of $Ext$*. Before proving the balancin $ and $ - 0 -> Hom(A) (M, B) -> Hom(A) (L, B) -> Hom(A) (K, B) -> \ Ext_cA^1 (M, B) -> Ext_cA^1 (L, B) -> Ext_cA^1 (K, B) -> ... + 0 -> Hom(A) (M, B) -> Hom(A) (L, B) -> Hom(A) (K, B) -> \ Ext_cA^1 (M, B) -> Ext_cA^1 (L, B) -> Ext_cA^1 (K, B) -> dots. $ ] #proof[ @@ -55,7 +55,7 @@ This isomorphism is called the *balancing of $Ext$*. Before proving the balancin (4) $=>$ (2). Let $ses(A', A, A'')$ be a short exact sequence in $cA$, which induces the #lest $ - 0 -> Hom(A) (A', B) -> Hom(A) (A, B) -> Hom(A) (A'', B) -> Ext^1_cA (A', B) -> ... + 0 -> Hom(A) (A', B) -> Hom(A) (A, B) -> Hom(A) (A'', B) -> Ext^1_cA (A', B) -> dots. $ Since $Ext^1_cA (A', B) = 0$ by assumption, $Hom(A) (-, B)$ is an exact functor. ] @@ -146,7 +146,7 @@ In order to prove the balancing of $Ext$ and $Tor$, we need two new tools: mappi with differential#footnote[In @tot-cone there is an explanation for this definition.] $ d(b, c) = (-d(b), d(c) - f(b)) $ for $b in B_(n-1)$ and $c in C_n$. We could also write the differential in the form of a matrix: $ - mat(-d_B, 0; -f, d_C) : vec(B_(n-1), C_n) -> vec(B_(n-2), C_(n-1)) + mat(-d_B, 0; -f, d_C) : vec(B_(n-1), C_n) -> vec(B_(n-2), C_(n-1)). $ Dually, let $g : B^cx -> C^cx$ be a cochain map, then the mapping cone of $g$ is the cochain complex $cone(g)^cx$ given by @@ -159,7 +159,7 @@ In order to prove the balancing of $Ext$ and $Tor$, we need two new tools: mappi #lemma[ Let $f: B_cx -> C_cx$ be a chain map. Then there is a long exact sequence in homology $ - ... -> H_(n+1) (cone(f)) -> H_n (B) ->^diff H_n (C) -> H_n (cone(f)) -> ... + ... -> H_(n+1) (cone(f)) -> H_n (B) ->^diff H_n (C) -> H_n (cone(f)) -> ..., $ where the connecting morphism $diff = f_ast $. @@ -564,16 +564,18 @@ A variant of the above lemma is the following, whose proof is similar @notes[Lem // #align(center,image("../imgs/2023-11-23-03-00-04.png",width:80%)) (We drop the dots for chain complexes in this proof.) Choose a projective resolution $P_cx rgt(epsilon) A$ in $ModR$ and a project resolution $Q_cx rgt(eta) B$ in $RMod$. - We can view $A, B$ as chain complexes concentrated in degree $0$. Now consider the double complexes $P tpr Q$, $A tpr Q$ and $P tpr B$, and we have _bicomplex morphisms_ (where it might be helpful to recall the diagram in @resolution-qi): $ epsilon tp id_Q: P tpr Q -> A tpr Q \ id_Q tp eta: P tpr Q -> P tpr B $ which induce chain maps on the total complexes: + We can view $A, B$ as chain complexes concentrated in degree $0$. Now consider the double complexes $P tpr Q$, $A tpr Q$ and $P tpr B$, and we have _bicomplex morphisms_ (where it might be helpful to recall the diagram in @resolution-qi): + $ epsilon tp id_Q: P tpr Q -> A tpr Q, \ id_Q tp eta: P tpr Q -> P tpr B, $ + which induce chain maps on the total complexes: $ - f : Tot^xor (P tpr Q) -> Tot^xor (A tpr Q) = A tpr Q \ - g : Tot^xor (P tpr Q) -> Tot^xor (P tpr B) = P tpr B + f : Tot^xor (P tpr Q) -> Tot^xor (A tpr Q) = A tpr Q, \ + g : Tot^xor (P tpr Q) -> Tot^xor (P tpr B) = P tpr B. $ We claim that $f$ and $g$ are quasi-isomorphisms, which would give isomorphisms on homology and thus prove the result, i.e. - $ H_ast (Tot^xor (P tpr Q)) iso H_ast (A tpr Q) = L_ast (A tpr - ) (B) $ - $ H_ast (Tot^xor (P tpr Q)) iso H_ast (P tpr B) = L_ast (- tpr B ) (A) $ + $ H_ast (Tot^xor (P tpr Q)) iso H_ast (A tpr Q) = L_ast (A tpr - ) (B), $ + $ H_ast (Tot^xor (P tpr Q)) iso H_ast (P tpr B) = L_ast (- tpr B ) (A). $ Now we form a double complex $C$, obtained from $P tpr Q$ by adding $A tpr Q$ in the column $p = -1$ using the augmentation $epsilon: P_0 -> A$, @@ -616,7 +618,7 @@ A variant of the above lemma is the following, whose proof is similar @notes[Lem where $C_(-1, q) = A tp Q_q$ and $C_(p, q) = P_p tp Q_q$ for any $p, q >= 0$. Then $ - (Tot^xor (C)[-1])_n = Tot^xor (C)_(n-1) = Tor^xor (P tpr Q)_(n-1) xor (A tp Q_(n)) + (Tot^xor (C)[-1])_n = Tot^xor (C)_(n-1) = Tor^xor (P tpr Q)_(n-1) xor (A tp Q_(n)). $ Meanwhile, the mapping cone of $f : Tot^xor (P tpr Q) -> A tpr Q $ has @@ -637,13 +639,13 @@ A variant of the above lemma is the following, whose proof is similar @notes[Lem Given a chain complex $(P_cx, d^((P)))$ and a cochain complex $(I^cx, d_((I)))$, we can form the *Hom double complex* $ hom(P_cx, I^cx) = {hom (P_p, I^q)}_(p, q) $ with differentials#footnote[Here we alternate the signs for adjacent rows (instead of adjacent columns, as in the tensor product double complex). This sign convention, following @notes[p. 76], is different from that in @weibel[p. 62].] $ - d^h_(p, q) (f) &= (-1)^q f oo d^((P))_(p+1) in hom ( P_(p+1) , I^q) \ d^v_(p, q) (f) &= d_((I))^q oo f in hom (P_p, I^(q+1)) + d^h_(p, q) (f) &= (-1)^q f oo d^((P))_(p+1) in hom ( P_(p+1) , I^q), \ d^v_(p, q) (f) &= d_((I))^q oo f in hom (P_p, I^(q+1)) $ for $f in hom ( P_p , I^q )$. Then we define the *Hom cochain complex*#footnote[@weibel[p. 62] writes this as $Tor^Pi (hom (P, I))$, but as we will see in this case any diagonal slice has only finite terms, so their product and direct sum are the same.] as - $ Tot^xor (hom(P, I)) $ + $ Tot^xor (hom(P, I)). $ ] An (anticommutative) diagram for the Hom double complex is as follows. The placeholder in function compositions is written as $square$ (instead of $-$ as in most parts of these notes) so that it is not confused with the minus sign. Note particularly the signs and indices in the horizontal differentials. Also note that each row and each column is a cochain complex. @@ -734,7 +736,7 @@ An (anticommutative) diagram for the Hom double complex is as follows. The place Another confusion that can easily arise from a non-canonical ordering is how to form the corresponding total complex. Apart from converting the diagram to a canonically ordered one by reflection, a simple method is to select any object $A$ in the grid and draw a line $l$ connecting the arrowheads of the two arrows departing from $A$. Then every "diagonal slice", whose direct sum is a term of the total complex, must be parallel to this line $l$. This is simply because each arrow must point from one diagonal slice to another. For example, each diagonal slice of the Hom double complex has a distinct colour in the above diagram, and hence we see $ - Tot^xor (hom (P, I))^n = plus.circle.big_(p + q = n) hom(P_p, I^q) + Tot^xor (hom (P, I))^n = plus.circle.big_(p + q = n) hom(P_p, I^q). $ This total complex is a _cochain_ complex#footnote[In fact, whether a total complex is a chain complex or a cochain complex can seem arbitrary, because this actually depends on how we index the diagonals. Here we see the Hom total complex as a cochain complex because it is more convenient in later proofs. // because later on we would like to establish an isomorphism between the total complex and the cone complex of a cochain map (which is a cochain complex). @@ -752,14 +754,14 @@ An (anticommutative) diagram for the Hom double complex is as follows. The place #endlec(11) #theorem([Balancing of $Ext$])[ For all $n$, - $ Ext^n_R (A, B) = R^n hom_R (A, -) (B) iso R^n hom_R (-, B) (A) $ + $ Ext^n_R (A, B) = R^n hom_R (A, -) (B) iso R^n hom_R (-, B) (A). $ ] #proof[@weibel[Theorem 2.7.6, p.63]. // #align(center,image("../imgs/2023-11-23-03-27-44.png",width:80%)) Take projective resolution $P_cx ->^epsilon A$ and injective resolution $B ->^eta I^cx$. We can view $A$ and $B$ as complexes concentrated at degree $0$. We can form double cochain complexes $hom(P, I)$, $hom(A, I)$ and $hom(P, B)$. As in the proof of @balance-tor, we need to show the maps on Hom cochain complexes $ - f: hom(A, I) -> Tot^xor ( hom(P, I)) \ g: hom(P, B) -> Tot^xor (hom(P, I)) + f: hom(A, I) -> Tot^xor ( hom(P, I)), \ g: hom(P, B) -> Tot^xor (hom(P, I)) $ are quasi-isomorphisms. This is equivalent to $cone(f)$ and $cone(g)$ being acyclic by (the dual of) @cone-qi. Let $C$ be the double complex $hom(P, I)$ with $hom(A, I)$ added to the column $p=-1$ using $epsilon : P_0 -> A$. We make it so that every added differential has a minus sign, as shown in the diagram. @@ -832,7 +834,7 @@ Now that we have gained some experience with non-canonically ordered double comp $ with differentials $ - d^h_(p, q) (f) &= (-1)^q f oo d^((P))_(p+1) in hom ( P_(p+1) , Q_q) \ d^v_(p, q) (f) &= d^((Q))_q oo f in hom (P_p, Q_(q-1)) + d^h_(p, q) (f) &= (-1)^q f oo d^((P))_(p+1) in hom ( P_(p+1) , Q_q), \ d^v_(p, q) (f) &= d^((Q))_q oo f in hom (P_p, Q_(q-1)) $ for $f in hom ( P_p , Q_q )$. Then we define the *Hom cochain complex* as diff --git a/ha/9-tor.typ b/ha/9-tor.typ index 1dceb7d..b8c6163 100644 --- a/ha/9-tor.typ +++ b/ha/9-tor.typ @@ -242,33 +242,33 @@ We now take a look at the case in $Ab$ and we shall show that a module in $Ab$ i #lemma("Flat Resolution Lemma")[ Let $F_cx -> A$ be a flat resolution of $A$. Then $ - Tor_ast^R (A, B) iso H_ast (F_cx tpr B ) + Tor_ast^R (A, B) iso H_ast (F_cx tpr B ). $ Similarly, if $F'_cx -> B$ is a flat resolution, then $ - Tor_ast^R (A, B) iso H_ast (A tpr F'_cx) + Tor_ast^R (A, B) iso H_ast (A tpr F'_cx). $ ] #proof[ By induction. - When $n = 0$, we need to show that $A tpr B iso H_0 (F_cx tpr B)$. We see that $ H_0 (F_cx tpr B) = (F_0 tpr B) / IM(F_1 tpr B) = Coker(F_1 tpr B -> F_0 tpr B) $ On the other hand, $A = Coker(F_1 -> F_0)$, and since $(- tpr B)$ is right exact and preserves cokernels, we get the result. + When $n = 0$, we need to show that $A tpr B iso H_0 (F_cx tpr B)$. We see that $ H_0 (F_cx tpr B) = (F_0 tpr B) / IM(F_1 tpr B) = Coker(F_1 tpr B -> F_0 tpr B). $ On the other hand, $A = Coker(F_1 -> F_0)$, and since $(- tpr B)$ is right exact and preserves cokernels, we get the result. When $n >= 1$, we have the short exact sequence $ - ses(K, F_0, A, f:ker(epsilon), g:epsilon) + ses(K, F_0, A, f:ker(epsilon), g:epsilon). $ If we write $E_cx = (... -> F_2 -> F_1 -> 0)$, then $E_cx ->^(d_1) K$ is a flat resolution of $K$, where $d_1 : F_1 -> F_0$ has $IM(d_1) = Ker(epsilon) = K$ by the exactness at $F_0$ of the resolution $F_cx -> A$. Now we can write the #lest induced by $Tor$: $ - ... -> Tor_n (F_0 , B) -> Tor_n (A , B) -> Tor_(n-1) (K , B) -> Tor_(n-1) (F_0 , B) -> ... + ... -> Tor_n (F_0 , B) -> Tor_n (A , B) -> Tor_(n-1) (K , B) -> Tor_(n-1) (F_0 , B) -> dots. $ But $Tor_n (F_0, B) = 0$ for $n >= 1$ by @flat-tor. Thus, $ - Tor_n (A, B) iso cases(Ker (K tp B -> F_0 tp B) quad &n = 1, Tor_(n-1) (K, B) quad &n >= 2) + Tor_n (A, B) iso cases(Ker (K tp B -> F_0 tp B) quad &n = 1\,, Tor_(n-1) (K, B) quad &n >= 2.) $ For $n=1$, notice that $K tpr B iso H_0 (E_cx tpr B) = (F_1 tpr B) over IM(F_2 tpr B)$ by applying the case $n = 0$ to $E_cx -> K$, and hence we have $ - Tor_1 (A, B) iso Ker (K tp B -> F_0 tp B) = Ker ((F_1 tp B) / IM(F_2 tp B) -> F_0 tp B) = H_1 (F_cx tp B) + Tor_1 (A, B) iso Ker (K tp B -> F_0 tp B) = Ker ((F_1 tp B) / IM(F_2 tp B) -> F_0 tp B) = H_1 (F_cx tp B). $ For $n >= 2$, $ @@ -307,7 +307,7 @@ We first need an auxiliary result. Let $B in RMod$. Write the #lest induced by $Tor$: $ - ... -> Tor_(n+1)^R (Z, B) -> Tor_n^R (X, B) -> Tor_n^R (Y, B) -> ... + ... -> Tor_(n+1)^R (Z, B) -> Tor_n^R (X, B) -> Tor_n^R (Y, B) -> dots. $ Since $Y$ and $Z$ are flat, $Tor_n^R (Y, B) = Tor_n^R (Z, B) = 0$ when $n >= 1$ by @flat-tor. So $Tor_n^R (X, B) = 0$ for any $n >= 1$ and $X$ is also flat. ] @@ -350,7 +350,7 @@ The main result is the following. numbering: "(1)", supplement: "Long Exact Sequence", $ - ... -> H_(n+1) (d(P)_cx tp M ) ->^diff H_n (Z_cx tp M) \ -> H_n (P_cx tp M) -> H_n (d(P)_cx tp M) ->^diff H_(n-1) (Z_cx tp M) -> ... + ... -> H_(n+1) (d(P)_cx tp M ) ->^diff H_n (Z_cx tp M) \ -> H_n (P_cx tp M) -> H_n (d(P)_cx tp M) ->^diff H_(n-1) (Z_cx tp M) -> .... $, ) Note that the differentials on the chain complexes $Z_cx$ and $d(P)_cx$ are all zero, and hence the differentials on $Z_cx tp M$ and $d(P)_cx tp M$ are also all zero, which gives @@ -360,7 +360,7 @@ The main result is the following. // #TODO A theorem saying differential zero gives homology equals chain complex. Hence @eq1 now becomes $ - ... -> d(P_(n+1)) tp M ->^(diff_(n+1)) Z_n tp M -> H_n (P_cx tp M) -> d(P_(n)) tp M ->^(diff_n) Z_(n-1) tp M -> ... + ... -> d(P_(n+1)) tp M ->^(diff_(n+1)) Z_n tp M -> H_n (P_cx tp M) -> d(P_(n)) tp M ->^(diff_n) Z_(n-1) tp M -> .... $ Apply @connecting and we can find the connecting homomorphism $diff_(n+1) = i_n tp id_M$, where $i_n : d(P_(n+1)) -> Z_n$ is the inclusion map. By @five-to-ses, we have a #sest @@ -379,7 +379,7 @@ The main result is the following. $ By @flat-resolution, $Tor_ast^R (H_n (P_cx), M)$ is the homology of the following chain complex: $ - D_cx = (... -> 0 -> d(P_(n+1)) tp M ->^(i_n tp id_M) Z_n tp M -> 0) + D_cx = (... -> 0 -> d(P_(n+1)) tp M ->^(i_n tp id_M) Z_n tp M -> 0). $ Hence $ @@ -397,7 +397,7 @@ The main result is the following. In particular, we can consider the case of $Ab$, where we have the following: #theorem("Universal Coefficient Theorem")[ - Let $P_cx$ be a chain complex of free abelian groups, then for every $n$ and every $M$, the Künneth #sest splits, so $ H_n (P_cx tp M) = (H_n (P) tp M) ds Tor_1^ZZ (H_(n-1) (P), M) $ + Let $P_cx$ be a chain complex of free abelian groups, then for every $n$ and every $M$, the Künneth #sest splits, so $ H_n (P_cx tp M) = (H_n (P) tp M) ds Tor_1^ZZ (H_(n-1) (P), M). $ The split is not canonical. ] @@ -415,7 +415,7 @@ In particular, we can consider the case of $Ab$, where we have the following: $ also splits, so $Z_n tp M$ is a direct summand of $P_n tp M$. Now notice we have the inclusions $ - IM (d_(n+1) tp id_M) subset.eq IM (i_n tp id_M) subset.eq Ker (d_n tp id_M) subset.eq P_n tp M + IM (d_(n+1) tp id_M) subset.eq IM (i_n tp id_M) subset.eq Ker (d_n tp id_M) subset.eq P_n tp M. $ By @split-sub, $Z_n tp M$ is a direct summand of $Ker (d_n tp id_M)$. Modding out by $IM (d_(n+1) tp id_M)$ on both of them, again by @split-sub, we see that #math.equation( @@ -445,7 +445,7 @@ We also demonstrate a more general result, known as the Full Künneth Formula. N Let $P_cx$ and $Q_cx$ be right and left $R$-modules, respectively. If $P_n$ and $d(P_n)$ are flat for each $n$, then there is a #sest $ - ses(plus.circle.big _(i+j=n) H_i (P) tp H_j (Q), H_n (P tpr Q), plus.circle.big_(i+j = n-1) Tor_1^R (H_i (P), H_j (Q))) + ses(plus.circle.big _(i+j=n) H_i (P) tp H_j (Q), H_n (P tpr Q), plus.circle.big_(i+j = n-1) Tor_1^R (H_i (P), H_j (Q))). $ ] diff --git a/ha/a-kc.typ b/ha/a-kc.typ index b99ee4b..d02b8aa 100644 --- a/ha/a-kc.typ +++ b/ha/a-kc.typ @@ -142,7 +142,7 @@ cohomology* to be $ and a #sest of cochain complexes $ - ses(homr (K_p (bd(x)), A), homr (K_p (bd(x)), B), homr (K_p (bd(x)), C)) + ses(homr (K_p (bd(x)), A), homr (K_p (bd(x)), B), homr (K_p (bd(x)), C)). $ By @connecting, applying homology and cohomology to them respectively induces two #less. Notice $K_1 (bd(x)) iso R^n$ with generators ${e_(i)}_(1 <= i <= n)$ and $K_0 (bd(x)) = R$. The differential $K_1 (bd(x)) -> K_0 (bd(x))$ sends each $e_(i)$ to $x_i$. The rest should follow easily. @@ -159,7 +159,7 @@ cohomology* to be $C_cx$ is a chain complex of $R$-modules and $x in R$, there are exact sequences $ - 0 arrow.r H_0 lr((x comma H_q lr((C)))) arrow.r H_q lr((K lr((x)) times.circle_R C)) arrow.r H_1 lr((x comma H_(q minus 1) lr((C)))) arrow.r 0 + 0 arrow.r H_0 lr((x comma H_q lr((C)))) arrow.r H_q lr((K lr((x)) times.circle_R C)) arrow.r H_1 lr((x comma H_(q minus 1) lr((C)))) arrow.r 0. $ ] diff --git a/ha/b-ext1.typ b/ha/b-ext1.typ index 76c8c11..dd6de52 100644 --- a/ha/b-ext1.typ +++ b/ha/b-ext1.typ @@ -103,8 +103,8 @@ From the above proof, we also see that $diff(id_A) in Ext^1 (A, B)$ is the obstr #theorem[ Given $R$-modules $A$ and $B$, the map $ - Theta: e(A, B) &-> Ext_R^1 (A, B) \ - [ses(B, X, A)] &mapsto diff(id_A) + Theta: e(A, B) &-> Ext_R^1 (A, B), \ + [ses(B, X, A)] &mapsto diff(id_A), $ is a bijection, and split extensions correspond to $0 in Ext_R^1 (A, B)$. ] @@ -218,10 +218,10 @@ When a set $X$ has a bijection with the underlying map of a group $G$, then in g Y eq X^(prime prime) / lr({lr((i_1 lr((b)) comma minus i_2 lr((b)))) colon b in B}). $ Then the sequence $ 0 arrow.r B arrow.r^i Y arrow.r^pi A arrow.r 0 $ is called the *Baer sum* of $xi$ and $xi^prime$, where we have maps - $ i colon B &arrow.r Y \ b &arrow.r.bar lr((i_1 lr((b)) comma 0)) $ + $ i colon B &arrow.r Y, \ b &arrow.r.bar lr((i_1 lr((b)) comma 0)) $ and $ - pi colon Y &arrow.r A \ lr((x_1 comma x_2)) &arrow.r.bar pi_1 lr((x_1)) plus pi_2 lr((x_2)). + pi colon Y &arrow.r A, \ lr((x_1 comma x_2)) &arrow.r.bar pi_1 lr((x_1)) plus pi_2 lr((x_2)). $ ] diff --git a/ha/c-gc.typ b/ha/c-gc.typ index ce89cd7..cd9e35e 100644 --- a/ha/c-gc.typ +++ b/ha/c-gc.typ @@ -64,15 +64,16 @@ This implies that $G$-modules can be seen as a special case of $R$-modules, so a #proof[ We first show $ - hom_G (triv(A), B) iso hom_Ab (A, B^G) + hom_G (triv(A), B) iso hom_Ab (A, B^G). $ Take any $f : triv(A) -> B$, then $f$ is a group homomorphism $A -> B$ such that $f(g dot a) = g dot f(a)$ for all $g in G$ and $a in A$. But $g dot a = a$ due to triviality and hence $f(a) = g dot f(a)$, i.e. $f(a) in B^G$ for all $a$. Then $f$ is equivalent to a group homomorphism $A -> B^G$. Now we prove $ - hom_Ab (A_G, B) iso homg (A, triv(B)) + hom_Ab (A_G, B) iso homg (A, triv(B)). $ - Take any $h : A -> triv(B)$, then $h$ is a group homomorphism $A -> B$ such that for all $g in G$ and $a in A$, $ h (g dot a) = g dot h(a) = h(a) <=> h(g dot a - a) = 0 <=> g dot a - a in Ker(h) $ + Take any $h : A -> triv(B)$, then $h$ is a group homomorphism $A -> B$ such that for all $g in G$ and $a in A$, + $ h (g dot a) = g dot h(a) = h(a) <=> h(g dot a - a) = 0 <=> g dot a - a in Ker(h), $ which means $h$ is equivalent to a group homomorphism $A_G -> B$. ] @@ -144,7 +145,7 @@ The aim is of this section is to show that $H_1 (G, ZZ) iso G over [G, G]$ for a #definition[ The *augmentation ideal* $frak(J)$ of $ZZ G$ is defined as the kernel of the ring map $ - epsilon: ZZ G &-> ZZ \ + epsilon: ZZ G &-> ZZ, \ sum_(g in G) f_g g &|-> sum_(g in G) f_g. $ ] @@ -180,8 +181,8 @@ The aim is of this section is to show that $H_1 (G, ZZ) iso G over [G, G]$ for a $fJ^2$ is the free $ZZ$-module with basis ${(g -1) (h - 1) : g, h in G without {1}}$. ] #proof[ - Define map $ - theta : G &-> fJ over fJ^2 \ + Define the map $ + theta : G &-> fJ over fJ^2, \ g &|-> g - 1 + fJ^2. $ @@ -196,7 +197,7 @@ The aim is of this section is to show that $H_1 (G, ZZ) iso G over [G, G]$ for a so $[G, G] subset.eq Ker theta$, and $theta$ descends to a homomorphism $macron(theta) : G over [G, G] -> fJ over fJ^2$. - Define group homomorphism $sigma : fJ &-> G over [G, G]$ linearly expanded by + Define the group homomorphism $sigma : fJ &-> G over [G, G]$ linearly expanded by $ n(g - 1) &|-> g^n [G, G ]. $ @@ -246,7 +247,7 @@ The aim is of this section is to show that $H_1 (G, ZZ) iso G over [G, G]$ for a ] #lemma[$N$ is a central element of $ZZ G$ and $N in lr((bb(Z) G))^G$.] #proof[ - For every $h in G$, we have $h N = sum_g h g$, but left multiplication by $h$ is nothing but a permutation of $G$ (recall Cayley's Theorem), so $h N = sum_(g') g' = N$ by reindexing. Similarly, $N h = N$. + For every $h in G$, we have $h N = sum_g h g$, but left multiplication by $h$ is an automorphism of $G$ (by Cayley's theorem), so $h N = sum_(g') g' = N$ by reindexing. Similarly, $N h = N$. ] #lemma[ @@ -271,7 +272,7 @@ The aim is of this section is to show that $H_1 (G, ZZ) iso G over [G, G]$ for a #proof[ Take $a = sum_(g in G) n_g g in ZZ G$ and write $N = sum_(h in G) h$. We have $ - N a = (sum_(h in G) h) (sum_(g in G) n_g g) = sum_(h in G) sum_(g in G) n_g (h g) = sum_(g' in G) sum_(g in G) n_g g' \ = sum_(g' in G) (sum_(g in G) n_g) g' = (sum_(g in G) n_g) (sum_(g' in G) g') = (sum_(g in G) n_g) N + N a = (sum_(h in G) h) (sum_(g in G) n_g g) = sum_(h in G) sum_(g in G) n_g (h g) = sum_(g' in G) sum_(g in G) n_g g' \ = sum_(g' in G) (sum_(g in G) n_g) g' = (sum_(g in G) n_g) (sum_(g' in G) g') = (sum_(g in G) n_g) N. $ Therefore $N a = 0$ if and only if $sum_(g in G) n_g = 0$, #iff $a in fJ$. The image of $ZZ G ->^N ZZ G$ is also clear from above, since $(sum_(g in G) n_g)$ can take all values in $ZZ$. @@ -291,12 +292,12 @@ Let $C_m eq ⟨sigma colon sigma^m eq 1⟩$ be the cyclic group of order $m$ generated by $sigma$. Then the norm element of $C_m$ is $ - N = sum_(i = 0)^(m-1) sigma^i = 1 plus sigma plus dots.h plus sigma^(m minus 1) + N = sum_(i = 0)^(m-1) sigma^i = 1 plus sigma plus dots.h plus sigma^(m minus 1). $ We observe -$ 0 eq sigma^m minus 1 eq lr((sigma minus 1)) N $ +$ 0 eq sigma^m minus 1 eq lr((sigma minus 1)) N. $ #remark[ The group ring of $C_m$ can be also viewed as $ZZ [sigma] over (sigma ^ m - 1)$. @@ -351,13 +352,13 @@ $ 0 eq sigma^m minus 1 eq lr((sigma minus 1)) N $ H_n lr((C_m , A)) eq cases( A slash lr((sigma minus 1)) A quad &"if " n eq 0 comma, A^(G ) slash N A quad &"if " n eq 1 comma 3 comma 5 comma dots.h comma, -brace.l a in A colon N a eq 0 brace.r slash lr((sigma minus 1)) A quad &"if " n eq 2 comma 4 comma 6 comma dots.h +brace.l a in A colon N a eq 0 brace.r slash lr((sigma minus 1)) A quad &"if " n eq 2 comma 4 comma 6 comma dots.h. ) $ $ H^n lr((C_m , A)) eq cases( A^G quad &"if " n eq 0 comma, brace.l a in A colon N a eq 0 brace.r slash lr((sigma minus 1)) A quad &"if " n eq 1 comma 3 comma 5 comma dots.h comma, -A^G slash N A quad &"if " n eq 2 comma 4 comma 6 comma dots.h +A^G slash N A quad &"if " n eq 2 comma 4 comma 6 comma dots.h. ) $ ] @@ -368,8 +369,14 @@ A^G slash N A quad &"if " n eq 2 comma 4 comma 6 comma dots.h #corollary[ We have $ - & H_n lr((C_m , bb(Z))) eq cases(bb(Z) quad & "if " n eq 0, bb(Z) slash m quad & "if " n gt.eq 1 "is odd " comma, 0 quad & "else. ")\ - & H^n lr((C_m , bb(Z))) eq cases(bb(Z) quad& "if " n eq 0, bb(Z) slash m quad & "if " n gt.eq 2 "is even, ", 0 quad & "else. ") + & H_n lr((C_m , bb(Z))) eq cases( + bb(Z) quad & "if " n eq 0\,, + bb(Z) slash m quad & "if " n gt.eq 1 "is odd" comma, + 0 quad & "else. ")\ + & H^n lr((C_m , bb(Z))) eq cases( + bb(Z) quad& "if " n eq 0\,, + bb(Z) slash m quad & "if " n gt.eq 2 "is even,", + 0 quad & "else. ") $] // #remark[ @@ -423,9 +430,9 @@ A^G slash N A quad &"if " n eq 2 comma 4 comma 6 comma dots.h $n eq.not 0 comma 1$. Moreover, when $A = ZZ$, - $ H_0 lr((G , bb(Z))) tilde.equiv H^0 lr((G , bb(Z))) tilde.equiv bb(Z) $ - $ - H_1 lr((G , bb(Z))) tilde.equiv xor.big_(x in X) bb(Z) \ H^1 lr((G , bb(Z))) tilde.equiv product_(x in X) bb(Z) + $ H_0 lr((G , bb(Z))) tilde.equiv H^0 lr((G , bb(Z))) tilde.equiv bb(Z), \ + H_1 lr((G , bb(Z))) tilde.equiv xor.big_(x in X) bb(Z), \ + H^1 lr((G , bb(Z))) tilde.equiv product_(x in X) bb(Z). $ ] @@ -493,7 +500,7 @@ derivation*. Write $"PDer"lr((G comma A))$ for the set of principal derivations #proof[@weibel[Lemma 6.4.4]. First we show that $D_phi : G-> A$ is indeed a derivation: $ - D_phi (g h) = phi (g h - 1) = phi (g h - g) + phi (g - 1) = g D_phi (h) + D_phi (g) + D_phi (g h) = phi (g h - 1) = phi (g h - g) + phi (g - 1) = g D_phi (h) + D_phi (g). $ The map $phi arrow.r.bar D_phi$ is obviously a natural group homomorphism, so it remains to verify that it is an isomorphism. @@ -514,11 +521,11 @@ derivation*. Write $"PDer"lr((G comma A))$ for the set of principal derivations of $bb(Z) G$-modules gives a long exact sequence beginning with $ - 0 arrow.r homg lr((bb(Z) comma A)) arrow.r homg lr((bb(Z) G comma A)) arrow.r homg lr((fJ comma A)) arrow.r Ext_(ZZ G)^1 (ZZ, A) arrow.r Ext_(ZZ G)^1 (ZZ G, A) + 0 arrow.r homg lr((bb(Z) comma A)) arrow.r homg lr((bb(Z) G comma A)) arrow.r homg lr((fJ comma A)) arrow.r Ext_(ZZ G)^1 (ZZ, A) arrow.r Ext_(ZZ G)^1 (ZZ G, A), $ which reduces to $ - 0 arrow.r A^G arrow.r A arrow.r Der(G, A) arrow.r H^1 lr((G , A)) arrow.r 0 + 0 arrow.r A^G arrow.r A arrow.r Der(G, A) arrow.r H^1 lr((G , A)) arrow.r 0. $ The result then follows from @pder-ag. @@ -580,9 +587,9 @@ Throughout this section, $bb(Z)$ is a trivial $G$-module. $d eq sum_(i eq 0)^n lr((minus 1))^i d_i$, where $ - d_0 ([g_1 lr(|dots.h|) g_n]) & eq g_1 [g_2 lr(|dots.h|) g_n] \ - d_i lr(([g_1 lr(|dots.h|) g_n])) & eq [g_1 lr(|dots.h|) g_i g_(i plus 1) lr(|dots.h|) g_n] quad upright(" for ") 1 lt.eq i lt.eq n minus 1\ - d_n lr(([g_1 lr(|dots.h|) g_n])) & eq [g_1 lr(|dots.h|) g_(n minus 1)] + d_0 ([g_1 lr(|dots.h|) g_n]) & eq g_1 [g_2 lr(|dots.h|) g_n] comma \ + d_i lr(([g_1 lr(|dots.h|) g_n])) & eq [g_1 lr(|dots.h|) g_i g_(i plus 1) lr(|dots.h|) g_n] quad upright(" for ") 1 lt.eq i lt.eq n minus 1 comma\ + d_n lr(([g_1 lr(|dots.h|) g_n])) & eq [g_1 lr(|dots.h|) g_(n minus 1)] dot $ We write $[]$ for $1 in B_0 eq bb(Z) G$. If any of the $g_i$ is 1 , we