===== Appendix on injective modules ===== Some details on their properties and existence Summary: For ZZ-modules, the inverse p-torsion modules (ZZ[1/p])/ZZ are injective, and every ZZ-module M embeds into a product of these (usually infinite). View any ring A as a ZZ-algebra; then for an injective ZZ-module N, the ZZ-module Hom_ZZ(A, N) becomes an A-module _under premultiplication_, and is an injective A-module. For an A-module M, view M as a ZZ-module and embed it into an injective ZZ-module N. An inclusion of M into an injective A-module is then provided by the tautological identity Hom_ZZ(M, N) = Hom_A(M, Hom_ZZ(A, N)). This is mostly cribbed from Charles A. Weibel, An introduction to homological algebra, CUP 1994. ==== Definition. An A-module N is injective if the functor Hom_A(-, N) is exact. This means that if 0 -> M1 -> M2 is exact (that is, M1 embeds in M2) then any homomorphism e: M1 -> N extends to f: M2 -> N (this means that f restricted to M1 equals e). Example. A k-vector space V is an injective k-module: if V in W are vector spaces, a k-linear map U -> V extends to W. You know this by Year 1 linear algebra if the vector spaces are finite dimensional (but it requires Zorn's lemma otherwise.) ==== Proposition [Baer's criterion, uses Zorn's lemma] Let N be an A-module. Assume the following: (*) for every ideal I in A and every homomorphism e: I -> N, e extends to a homomorphism f: A -> N. Then N is injective. Proof. Let M1 in M2 be an inclusion of A-modules and e: M1 -> N. The assertion is that e extends to the whole of M2. If M1 = M2 there is nothing to prove. Inductive step: Else take b in M2 \ M1 and claim: (*) implies that e extends to the bigger submodule M1 + A*b. For this, define the ideal I = { a in A | a*b in M1 }. Then a |-> a*b |-> e(a*b) is an A-homomorphism I -> N, so by (*), it extends as a homomorphism f: A -> N. Now define e': M1 + A*b -> N by e'(m + a*b) = e(m)+ e(a*b). This is well-defined: If some different (m1,a1) has m+a*b = m1+a1*b then (a-a1)*b = m-m1 in M', so a-a1 in I, where the extension f started, so f(a-a1) = e(m-m1). Standard use of Zorn's lemma now proves that e extends to the whole of M2. QED Corollary. An Abelian group is injective (as a ZZ-module) iff it is divisible. Hence the modules QQ and (ZZ[1/p])/ZZ are injective ZZ-modules, and any injective is a direct product of these. I refer to (ZZ[1/p])/ZZ as the inverse p-torsion module, by analogy with Macaulay's inverse monomials. Exercise. Check that QQ/ZZ is isomorphic to the direct product of (ZZ[1/p])/ZZ taken over all primes p. An analogous construction works for a PID. Lemma. For a ZZ-module M and nonzero m in M, there exists a prime p and a homomorphism f: M -> (ZZ[1/p])/ZZ with f(m) <> 0. Proof. The annihilator of m in M is an ideal (n) in ZZ, so the subgroup ZZ.m generated by m is isomorphic to ZZ/n. Choose any prime p | n and a surjective map ZZ/n ->> ZZ/p (if n = 0 then any prime p works). Compose with an embedding ZZ/p in (ZZ[1/p])/ZZ and extend from mZZ to the whole of M using injectivity of the module. QED Corollary. Consider the set of all homomorphisms from M to the injective modules (ZZ[1/p])/ZZ. The direct sum of all these homomorphisms in an embedding of M into an injective ZZ-module. ==== Now for modules over a general ring A (you need to worry about left and right modules if A is noncommutative). A is a ZZ-algebra. If M is a ZZ-module, the ZZ-module Hom_ZZ(A, M) becomes an A-module under premultiplication. Namely, a acts on Hom_ZZ(A, M) by f |-> a*f, where a*f is the map s -> f(a*s) for s in A. That is, do the multiplication in the ring A before applying the map (IMPORTANT: this is premultiplication). One checks the following points: 1. For an A-module M and ZZ-module N the following identity holds: Hom_ZZ(M, N) = Hom_A(M, Hom_ZZ(A, N)). The l.-h.s. is just maps of Abelian groups. On the right, we are map to a much bigger module, but we have to obey all the A-linearity conditions. 2. If I is an injective ZZ-module then Hom_ZZ(A, I) is an injective A-module. 3. It follows that for any A-module M, the product of all homomorphisms M -> Hom_ZZ(A, (ZZ[1/p])/ZZ) is an embedding of M into an injective A-module. ==== Finally, for algebraic geometers: let F be a sheaf of OX-modules over a ringed space X. For P in X, the stalk F_P is an OX_P-module. Embed each stalk F_P into an injective OX_P-module I_P. This defines an OX-homomorphism of F into the sheaf of discontinuous sections of DisjointUnion I_P, which is an injective sheaf. ==== Points still to clear up: the notion of injective is the "categorical dual" of projective. However, projective modules are intuitive, because they are closely related to free modules, whereas injective modules abstract things that are proved exist, but we don't have any intuition as to what they are made of. Is there some way of thinking of injectives as dual to projectives in a more explicit sense? Part of the answer to this is Macaulay inverse systems. Given the polynomial ring A = k[x1,..xn], with its ordinary grading by homogeneous forms, there is a k-vector space dual formed from the ring of Laurent polynomials k[x1,x1^-1,.. xn, xn^-1] by taking the quotient by the k[x1,..xn]-submodule M generated by monomials having any exponent >= 0. In other words, all monomials in any of the nonnegative quadrants are sent to zero. So if n = 2 we get the vector space M consisting of all finite linear combinations of the inverse monomials x^-n*y^-m with n,m >= 1: ... x^-n*y^-1 ... x^-3*y^-1, x^-2*y^-1, x^-1*y^-1 x^-2*y^-2, x^-1*y^-2 x^-n*y^-m ... We know how to multiply an element of M by a polynomial, sending any term that strays into a nonnegative halfsoace to zero. This M is the vector space dual Hom_k(A,k). The inverse monomials form a dual basis to the monomials in A with { x^{-n-1}*y^{-m-1} } dual to x^n*y^m. The duality pairing A x M -> k consists of taking the coefficient of the socle basis x^-1*y^-1 in the product of polynomial f in A by a Laurent polynomial g. Just as A is a free module with the single generator 1, so that every monomial is a multiple of 1, M has the single socle basis element x^-1*y^-1 and every monomial has it as a multiple. The module M is injective as module over A (or A localised at the maximal ideal m = (x1,.. xn), or the completion k[[x1,.. xn]]), and the map k -> M that takes 1 to x^-1*y^-1 is the injective hull of k.