scieee AI-readable full text Open interactive document viewer

Constructions in R[x_1, ..., x_n]. Applications to K-Theory

Gago Vargas, Manuel Jesús

Abstract

A classical result in K-Theory about polynomial rings like the Quillen-Suslin theorem admits an algorithmic approach when the ring of coefficients has some computational properties, associated with Gröbner bases. There are several algorithms when we work in $\K[\x]$, $\K$ a field. In this paper we compute a free basis of a finitely generated projective module over $R[\x]$, $R$ a principal ideal domain with additional properties, test the freeness for projective modules over $D[\x]$, with $D$ a Dedekind domain like $\Zset[\sqrt{-5}]$ and for the one variable case compute a free basis if there exists any.

Full text

CONSTRUCTIONS IN R[x1, . . . , xn]. APPLICATIONS TO K-THEORY JES´ US GAGO-VARGAS Abstract. A classical result in K-Theory about polynomial rings like the Quillen-Suslin theorem admits an algorithmic approach when the ring of coefficients has some computational properties, associated with Gr¨obner bases. There are several algorithms when we work in K[x1,...,xn], Ka field. In this paper we compute a free basis of a finitely generated projective module over R[x1,...,xn], Ra principal ideal domain with additional properties, test the freeness for projective modules over D[x1,...,xn], with Da Dedekind domain like Z[√−5] and for the one variable case compute a free basis if there exists any. 1. Introduction The Quillen-Suslin theorem asserts that if A=D[x1, . . . , xn] is a polynomial ring over a Dedekind domain Dthen every finitely generated projective A-module is extended from D([21, 22]). When Dis a principal ideal domain every finitely generated projective A-module is free. This is equivalent to say that if Ris a principal ideal domain and f= (f1, . . . , fm) is a unimodular row of R[x1, . . . , xn]mthen there exists a matrix U∈GL(m, R[x1, . . . , xn]) such that f·U= (1,0,...,0), or that we can complete fto an invertible matrix. An algorithm for the Quillen-Suslin theorem produces such matrix, and we call it a QS-algorithm. The last m−1 columns of the matrix Uform a free basis of the module defined by ker(f)⊂R[x1, . . . , xn]m. There are several algorithms when Ris a field ([16, 6, 14, 15], [20] as a corollary). The main tool in the procedure is the algorithm to compute Gr¨obner bases, which we can find in other rings like Z. In Section 2 we give some algorithmic results over the ring R[x1, . . . , xn] that we need later, namely, the construction of a maximal ideal that contains an ideal of R[x1, . . . , xn] and how to compute in S−1R[x] and R[x1, . . . , xn]M, rings obtained from R[x1, . . . , xn]. In Section 3 we present two QS-algorithms for R[x1, . . . , xn], that avoid the normalization step used in [7]. The first one follows [14, 15] and the second one [19, 17]. Our starting point is a projective module Pgiven as kernel of a unimodular row or as a submodule of a free module. Then we can generalize the results in [14] to monoid rings R[M], because the induction step reduces the problem to a free monoid, where we have solved the problem. In a similar way the QS-algorithm 2000 Mathematics Subject Classification. Primary: 13C10, 13P10, 19A49, 68W30. Secondary: 15A33. Key words and phrases. Serre Conjecture, Quillen-Suslin Theorem, Gr¨obner bases, Dedekind domains, projective modules. Partially supported by DGICYT PB97-0723 and Junta de Andaluc´ıa FQM-218. This is a preliminary version of this article. 1 2 JES´ US GAGO-VARGAS for quotients of polynomial rings by monomial ideals, that is, rings of the form R[x1, . . . , xn]/I, with Ia monomial ideal and Ra PID, is easily extended, such as appears in [13]. In Section 4 we consider Dthe ring of integers of a number field, a Dedekind domain in which it is possible to compute. First we give a new algorithm using Gr¨obner bases to get the factorization of an ideal of Das product of prime ideals, and we apply it to find a free basis of a projective module over D, if there exists one. The next step is to study the freeness of a projective module Pover D[x1, . . . , xn]. We can do it by reducing the problem to a module over D, and for one variable, we give an algorithm to compute a free basis when there exists one. 2. Preliminary algorithmse Let Rbe a ring. We recall that linear equations are solvable in Rif we have an algorithm to decide the membership problem of a element with respect to an ideal and we can compute a set of generators of the module Syz(a1, . . . , am), with a1, . . . , am∈R. With these conditions we can build Gr¨obner bases in the ring R[x1, . . . , xn] ([1, chapter 4]). We need to add another one. Definition 1. Let Rbe a ring. We say that Ris an MC-ring if we can solve linear equations in Rand, given I⊂Ra proper ideal, it is possible to compute a set of generators of a maximal ideal that contains I. For example, Z,Z[√−5] are MC-rings. Additionally, we need the factorization of polynomials in (R/hpi)[x], p∈Ra prime element, and Q(R)[x], Q(R) the field of fractions of R. Definition 2. Let Rbe a ring. We say that Rhas effective coset representatives if given Jan ideal of Rit is possible to find a complete set Cof coset representatives of R/J, and there is a procedure to find, for all a∈R, an element c∈ C such that a≡c(mod J). This definition appears in [1, p. 226], and we need this property in Rto compute the normal form of a polynomial with respect to an ideal. We include here the algorithm described in [7] to compute a set of generators of a maximal ideal of R[x1, . . . , xn], Ran MC-PID, that contains an ideal. Algorithm 1. Input: F={f1, . . . , fr}set of generators of an ideal Iof R[x1, . . . , xn]. Output: H={g1, . . . , gm}set of generators of a maximal ideal M ⊂ R[x1, . . . , xn] that contains I. (1) Compute hsi=hFi∩R. (2) If s6= 0, let p∈Rbe a prime element such that pdivides s. (a) Compute ¯g1,...,¯gk∈(R/hpi)[x1, . . . , xn]generators of a maximal ideal Mthat contains ¯ Iin (R/hpi)[x1, . . . , xn]. (b) Lift to g1, . . . , gk∈R[x1, . . . , xn]and let H={p, g1, . . . , gk}.STOP. (3) If s= 0, compute d∈R, d 6= 0 such that I= (I, d)∩Iec, where Iec = IQ(R)[x1, . . . , xn]∩R[x1, . . . , xn]([9]). (4) If (I, d)6=R, set F←F∪ {d}, and go to step 1. Otherwise, compute ˜g1,...,˜gk∈Q(R)[x1, . . . , xn]generators of a maximal ideal f Mthat contains ˜ Iin Q(R)[x1, . . . , xn]. CONSTRUCTIONS IN R[x1,...,xn]. APPLICATIONS TO K-THEORY 3 (5) Let Jbe ideal of R[x1, . . . , xn]such that Je=f M. Compute rthe least common multiple of the coefficients of a Gr¨obner basis of J. Let p∈Rbe a prime element that does not divide r. Set F←F∪{p}, and go to step 1. Example 1.Let I=hxy +1ibe ideal of Z[x, y]. Then I∩Z= 0, so there exists d∈ R, d 6= 0 such that I= (I, d)∩Iec. In this case, d= 1. The ideal f M=hx−1, y +1i is a maximal ideal in Q[x, y] that contains Ie. Set J1=hx−1, y + 1i ⊂ Z[x, y], and s= 1. Take p= 2 and set I0= (J1,2) ⊃I. Applying the algorithm to I0, we get M=h2, x −1, y −1imaximal ideal of Z[x, y] that contains I. Let Sbe the set of monic polynomials of R[x], and write R0=S−1R[x]. When Ris a field, the ring R0is the field of rational functions over R[x]. Lemma 1. Let Rbe a principal ideal domain where we can divide and compute the greatest common divisor and I=hf, gi ⊂ R0be an ideal of R0. Then it is possible to compute h, f0, g0∈R0such that I=hhi,f=f0hand g=g0h. Proof. By [11, p. 117], we know that R0is a principal ideal domain. Then I= hh0i, where h0is the greatest common divisor of fand gin R0. We can assume f, g ∈R[x] taking off denominators and compute h= gcd(f, g) in R[x] with the pseudo-division algorithm ([4, algorithms 3.2.10, 3.1.2]). Every irreducible element of R[x] is irreducible or a unit of R0. Then I=hhi, and by division we obtain f0, g0∈R[x] such that f=f0h, g =g0h. Remark 1.In [2] it is shown that if Ris an euclidean domain, then S−1R[x] is an euclidean domain too. However, the division algorithm passes through a formal power serie. Corollary 1. Let Rbe an MC-PID. Then R0is an MC-PID. Proof. Given I=hf1, . . . , fni ⊂ R0ideal of R0, by iterative applications of Lemma 1, we compute ha generator of I. If f∈R0, we can check whether f∈Iby reducing to R[x] and making the division by h. If f∈I, we obtain f0∈R0with f=f0h. The syzygy module of a set f1, . . . , fmin R0is easily reduced to a computation of a syzygy module in R[x]. Let Ibe a proper ideal of R0. By Lemma 1, we find a not monic polynomial f(x)∈R[x] such that I=hf(x)iR0. We get f1(x)∈R[x] an irreducible and not monic polynomial that divides f(x) in R[x], by factoring in Q(R)[x] and Gauss’s Lemma. Then I⊂ hf1(x)iR0, maximal ideal in R0. Proposition 1. Let Rbe an MC-ring. If Mis a maximal ideal of R[x1, . . . , xn] then R[x1, . . . , xn]Mis an MC-ring. Proof. The construction of a maximal ideal that contains a given ideal is trivial, because R[x1, . . . , xn]Mis local. We have to check the conditions about linear equations. Note that through Gr¨obner bases in R[x1, . . . , xn] we can check if a polynomial fbelongs to an ideal I, and if so, express it as linear combination of generators, and this procedure is valid in R[x1, . . . , xn]M. Let IM=hf1, . . . , fmibe an ideal in R[x1, . . . , xn]M, and f∈R[x1, . . . , xn]M. We can suppose f, f1, . . . , fm∈ R[x1, . . . , xn]. If any fiis not in M, then IM=R[x1, . . . , xn]M, and we are done. Then assume that I⊂ M, and f∈ M. We have that f∈IMif and only if there exists s /∈ M such that s·f∈I, i.e., s∈(I:f). We can compute c1, . . . , cm∈R[x1, . . . , xn] a set of generators of (I:f). If every ciis in Mthen 4 JES´ US GAGO-VARGAS f /∈IM. If, for example, c1/∈ M, then c1·f∈I, and we can express fas a linear combination of the generators of IMwith coefficients in R[x1, . . . ,xn]M. In a similar way to Corollary 1, we can get a set of generators of the module Syz(f1, . . . , fm) wit f1, . . . , fm∈R[x1, . . . , xn]M. Remark 2.If Rhas effective coset representatives then, for a given IMproper ideal of R[x1, . . . , xn]M, we can compute the cosets of R[x1, . . . , xn]/I and the same set is valid for R[x1, . . . , xn]M/IM. 3. QS-algorithms in R[x1, . . . , xn] Let Rbe an MC-PID, f= (f1, . . . , fm) a unimodular row in R[x1, . . . , xn]m and P= ker(f). Then Pis a projective module, and we want to get a free basis of it. The process described in [7] uses the primary decomposition of an ideal of R[x1, . . . , xn]. To avoid it, we give two new QS-algorithms. The procedures are by induction on n, the number of variables. If n= 0 we have a projective module over an MC-PID, and we can compute the Smith normal form. Assume that n≥0 and that we have an algorithm for rings of polynomials with nvariables and coefficients in an MC-PID. Now consider the polynomial ring R[x1, . . . , xn][y] in n+ 1 variables. The first step is reducing the problem to find a free basis of the modules PMover the rings R[x1, . . . , xn]M[y] for a finite set of maximal ideals Mof R[x1, . . . , xn]. Here we need Algorithm 1 to compute a maximal ideal that contains an ideal in R[x1, . . . , xn]. These free bases are patched together to obtain a basis of the module P, as shown in [16], so the problem is reduced to give an algorithmic proof of Horrocks’ theorem ([17, p. 28]). 3.1. First QS-algorithm in R[x1, . . . , xn]. Theorem 1. Let Pbe a projective module over R[x1, . . . , xn][y], defined as the kernel of a unimodular row f= (f1, . . . , fm), and Ma maximal ideal of R[x1, . . . , xn]. Then there exists a m×m-invertible matrix Uwith entries in R[x1, . . . , xn]M[y] such that f·U= (1,0,...,0). The last m−1columns of Uform a free basis of PM. Proof. Write A=R[x1, . . . , xn]M[y]. Let Sbe the multiplicative set of monic polynomials of A, and S0⊂R[y] the set of monic polynomials. As fis a unimodular row, we can compute a column gsuch that f·g= 1, and M=I−g·fis a matrix whose columns form a set of generators of the R[x1, . . . , xn][y]-module Syz(f). From the commutative diagram R[x1, . . . , xn][y]→(S−1 0R[y])[x1, . . . , xn] ↓ ↓ R[x1, . . . , xn]M[y]−→ AS we see that the module S−1PMis extended from S−1 0P. By Corollary 1, S−1 0R[y] is an MC-PID, and by the induction hypothesis and extension we compute a matrix US∈GL(m, S−1R[y]) such that f·US= (1,0,...,0). Let v1, . . . , vm−1∈PM be the last m−1 columns of US. These vectors form a free basis of S−1PMin AS. Let k=R[x1, . . . , xn]/M, A =A/MA=k[y] and AS=k(y). Compute a matrix U∈GL(m, k[y]) such that f·U= (1,0,...,0) and let e1, . . . , em−1be the last m−1 columns of U. This set is a free basis of PM. Take a1, . . . , am−1∈A such that ai=ei, i = 1, . . . , m −1. Then ei=ai−g·f·ai, i = 1, . . . , m −1, CONSTRUCTIONS IN R[x1,...,xn]. APPLICATIONS TO K-THEORY 5 are elements of PMthat go over e1, . . . , em−1. By solving a linear system, we get W∈GL((m−1), k(y)) such that (v1, . . . , vm−1)W= (e1, . . . , em−1) because v1, . . . , vm−1and e1, . . . , em−1are bases of the vector space PSover the field k(y). As pointed in [3, 14], we can take W∈GL(m−1, AS) that lifts to W. Change the basis v1, . . . , vm−1of S−1PMby the basis (v1, . . . , vm−1)·W. Then ei=vi+hi, hi∈ MS−1PM, i = 1, . . . , m −1. Following [12, 3], if Cis the subring of S−1R[y] formed by f/g, with g∈Sand deg(f)≤deg(g), then MS−1PM=MPM+MQ, where Q=Lviy−1C. By the division algorithm, decompose hi=gi+g0 i, where gi∈Am, and the degree of the denominators of g0 iare greater than the degree of numerators. Compute zithe normal form of giwith respect the module MPMover the ring A. Then, by [12, 3], the elements v0 i=vi+zi+g0 i, i = 1, . . . ,m −1 form a basis of PM. Remark 3.The algorithm described in [14, algorithm 4] is incomplete, because to extract the component in MPMwe need normal forms, and not only quotients. An analogous remark is applied to [14, p. 418]. Example 2.Consider the polynomial ring Z[x], the unimodular row f= (13, x2− 1,2x−3) and Pthe projective module defined by ker(f). We can compute g= (2,−20,10x+ 15)twith f·g= 1. A basis of S−1Pover S−1Z[x] is formed by the vectors v1=1,−13 x2−1,0t , v2=0,−2x−3 x2−1,1t . For every maximal ideal Min Z, a basis of the module S−1PMis obtained by extension. Let M=h2imaximal ideal of Z, and A= (Z/M)[x]. By Euclidean algorithm in A, we get a basis of PMwith elements e1=−x2+ 1,1,0t, e2= (1,0,1)t. Then W=−x2+ 1 1 0 1 ∈GL(2, AS) is a matrix with (v1|v2)W= (e1|e2). Lift to W=−x2+ 1 1 0 1 ∈GL(2, AS) and a new basis of S−1PMis v1=−x2+ 1,13,0t, v2=1,−2(5 + x) x2−1,1t . We can compute elements e1=e1−g·f·e1, e2=e2−g·f·e2∈PMsuch that they apply over e1, e2. Let h1=e1−v1=g1+g0 1, h2=e2−v2=g2+g0 2, where g1=h1, g0 1= 0, and g2=−20 −4x, 200 + 40x, −150 −130x−20x2t, g0 2=0,2x+5 x2−1,0t . The respective normal forms of g1, g2with respect to MPMare z1= (0,0,0)t, z2=−4x2+x3+ 4x−1 x3−2x2−1,−(x−1)x2(x2−3x+ 1) x3−2x2−1,0t . 6 JES´ US GAGO-VARGAS Then v0 1=v1, v0 2=0,2x−3,−x2+ 1tform a free basis of PM. If U= (g|v0 1|v0 2), then det(U) = −13 is a unit in ZM. To obtain a matrix with determinant 1, we consider U1=g|− 1 13 v0 1|v0 2. Let r1= 13. We repeat the process for M2=h13i, and obtain the matrix U2=  2 1 0 −20 −52 52x−3 10x+ 15 26 5x+39 5−x2+ 1  . In this case, r2= 5, and hr1, r2i=Z. By patching together the solutions as described in [16], we get V= −128x2+ 60x3+ 60x1 + 1144x2−780x3−144x2+ 100x3−4x −1−30x13 + 390x−50x−3 270x−375x2−130x+ 4875x21−625x2  with det(V) = 1 and f·V= (1 0 0). 3.2. Second QS-algorithm in R[x1, . . . , xn].The algorithm described in the previous section uses the normal form of a vector with respect to a module. We give another method, based on [19, 17], where is not needed. We begin with an easy lemma. Lemma 2. ([17, Lemma 3.2.5].) Let Rbe an MC-PID and Ma free R-module. Let vbe a nonzero element of M. Then Mhas a basis v1, . . . , vrsuch that v=αv1 for some α∈R. The following algorithm solves the local step, i.e., compute a basis of the R[x1, . . . , xn]M- module PM. Our starting point is a set of generators of PMas a submodule of a free module, and proceed by induction over rank(P) = m. We build a set of generators of a projective module P0with rank m−1. Remember that if P0is projective then it is torsion free, so it is isomorphic to a submodule of a free module of finite rank ([10, Prop. 10.11]). This isomorphism can be computed, because the relations between the generators of P0can be found by solving a linear system in the field Q(R). Then we apply the induction hypothesis. Theorem 2. ([17, Thm. 3.2.1] Let Pbe a projective R[x1, . . . , xn][y]-module, generated by a set of vectors of R[x1, . . . , xn][y]s, and Ma maximal ideal of R[x1, . . . , xn]. Then we can find a free basis of PM. Proof. Let Mbe a matrix whose columns are the generators of P, and m= rank(P). (1) If m= 1 then Pis isomorphic to an ideal of R[x1, . . . , xn][y]. Then S−1 0P is a projective ideal of (S−1 0R[y])[x1, . . . , xn], so it is free, hence principal. Using a Gr¨obner basis we can find its generator, that is a basis. (2) If m≥2, let v1, . . . , vma basis of S−1 0PM, that we can compute because S−1 0(R[x1, . . . , xn][y]) = (S−1 0R[y])[x1, . . . , xn]. Choose vi∈PMtaking off denominators. (3) Let e1, . . . , embe a basis of PMover k[y], with k=R[x1, . . . , xn]/M. (4) Compute a basis q1, . . . , qmof PMwith v1=αq2(Lemma 2). Let Vbe a change basis matrix and Va lifting with entries in A. (5) Lift q1to PMthrough M·V. (6) By solving a linear system, let q1=Pm i=1 a0 iviin S−1A, so we can find s∈Asuch that sq1=Pm i=1 aivi, ai∈A. CONSTRUCTIONS IN R[x1,...,xn]. APPLICATIONS TO K-THEORY 7 (7) Take ksuch that a1+sykis a monic polynomial in the variable y. (8) Let p=q1+ykv1, and P0=P/pA. Then P0is projective and rank(P0) = m−1 ([17, 19]), so is torsion free, and we can compute a set of generators. Set P←P0, and go to step 1.  Example 3.Consider Example 2, and let M=h2i ⊂ Z. We want to compute a free basis of the A=ZM[x]-module PM. A set of generators of Pis formed by the columns s1, s2, s3of M=I−g·f. It is easy to see that rank(P) = 2. As S−1 0Z[x] is an MC-PID, we can find the Smith normal form of the module S−1 0PM. Then   10 1 0 10x+ 15 0 −2 13 x2−1 2x−3  M  0 1 2 1−10 −20 0 5x+ 7 10x+ 15  =V1MV2=  100 010 000  . The nonzero columns {v1, v2}of M·V2form a basis of S−1 0P. Now it is easy to see that the vectors e1= (−1,0,−1)t, e2=0,−1,−x2+ 1tare a basis of the module PM. As v1=e2, we take q1=e1, q2=e2, and q1= (−25,260,−130x−195)t∈ PMgoes over q1. Then sq1=a1v1+a2v2with a1= 10, s = 1 and a1+sx is monic in x, so p=q1+xv1= −25 −2x3+ 2x, 260 −19x+ 20x3,−115x−195 −10x4+ 10x2−15x3t. We know that P0=PM/pA is a projective A-module with rank equal to 1. Now we have to compute a free basis w+hpiof P0, which is generated by s1+hpi, s2+ hpi, s3+hpi. The first step is to find d2, d3∈Asuch that d2(s2+hpi) = λ2(s1+ hpi), d3(s3+hpi) = λ3(s1+hpi),so we solve the system s2|s3=p|s1a11 a12 a21 a22  in the field of fractions of A. Let d= 5x(2x+3), λ2=−5(2x+3), λ3=−2(10 +x), and consider the morphism between A-modules ϕ:P0→(s1+hpi)Adefined by ϕ(v) = d·v. Then ϕis injective, and P0≃ϕ(P0)⊂(s1+hpi)A. Since ϕ(P0) is generated by only one element, it must be a multiple of s1+hpi. Then consider the ideal J=hd, λ2, λ3iA. By computing a Gr¨obner basis in Awe obtain u= 85 = 0·d+λ2−5λ3, a unit in A, so P0is generated by ϕ−1(s1+hpi) = u−1(s2−5s3)+hpi. Let w=u−1(s2−5s3) = 1 85 −2x2+ 20x−28,20x2−200x+ 281,−10x3+ 85x2+ 10x−215t. Then {p, w}is a free basis of PM. Remark 4.These algorithms allow us to extend the results in [14] to find bases of projective modules over a monoid ring R[M], because all we need are the constructions in S−1R[x] described in Section 2 and the Quillen-Suslin algorithm in R[x1, . . . , xn] ([8]). In the same way, we have a QS-algorithm for quotients of the form R[x1, . . . , xn]/I, with Ia monomial ideal, extending [13]. 8 JES´ US GAGO-VARGAS 4. QS-algorithm in D[x] 4.1. Ideal factorization in a Dedekind domain. Let Dbe the ring of integers of a number field, and Ian ideal of D. Then Dis a Dedekind domain, and there is an algorithm ([5, algorithm 2.3.22]) to compute the factorization of Ias product of prime ideals of D. We present here another algorithm based in Gr¨obner bases. We know that Dis a free Z-module of finite rank, and we can find ω0= 1, ω1, . . . , ωn a free basis ([4, algorithm 6.1.8]). Then ωiωj=Pn k=0 ai,j,kωk, i, j ∈ {0,1, . . . , n} for some ai,j,k ∈Z. Let sij =xixj−Pn k=0 ai,j,kxkbe polynomials in Z[x1, . . . , xn], and call Jthe ideal generated by them. Lemma 3. (1) D≃Z[x1, . . . , xn]/J. (2) There is a primality testing algorithm for ideals of D. (3) Let Ibe a proper ideal of D. Then there exists an algorithm to find a set of generators of a maximal ideal Mof Dthat contains I. (4) Let Mbe a maximal ideal of D. Then it is possible to compute a set of generators of the D-module M−1. Proof. (1) Let p∈Z[x1, . . . , xn] be a polynomial such that p(ω1, . . . , ωn)=0. By reducing pby the polynomials sij , we have that p≡q(mod J), where q(x1, . . . , xn) = a0+a1x1+. . . +anxn, ai∈Z. Since p(ω1, . . . , ωn) = 0, then q(ω1, . . . , ωn) = 0, so a0=a1=. . . =an= 0, because of linear independence of ωiin Z, and then p∈J. If Iis an ideal of D, we note ˜ Ithe lifted ideal of Z[x1, . . . , xn]. (2) Iis a prime ideal of Dif and only if ˜ Iis a prime ideal of Z[x1, . . . , xn], and by [9, prop. 4.3] we have an algorithm to test the primality of ˜ I. (3) Apply Algorithm 1 to ˜ I. (4) Follow [4, p. 199]. Observe that we can always find p∈Z∩ M a prime element through f M∩Z.  Proposition 2. Let Ibe a proper ideal of D. Then we can find prime ideals p1,...,prof Dsuch that I=p1·. . . ·pr. Proof. If Iis prime, we are done. Otherwise, let p1be a maximal ideal that contains I. Let I1=p−1 1I. Then I1is an integer ideal and I(I1([18]). We apply again the process to the ideal I1, and we obtain an ascending chain of ideals I⊂I1⊂. . . ⊂Ir that becomes stationary because Dis a noetherian ring. If Ir=Ir+1, we know that Ir+1 =p−1Ir, where pis a maximal ideal of Dthat contains Ir. Then Ir=p−1Ir and this would imply that p=D. So Iris a maximal ideal, the algorithm stops and we obtain the expression I=p1·. . . ·pr. Example 4.Let I=h6ibe ideal of D=Z[ω], with ω=√−5. An integral basis of Dis {1, ω}. Now consider ˜ I=h6, t2+ 5iideal of Z[t]. Then ˜ Iis not prime, because h6iZ=˜ I∩Zis not a prime ideal of Z. Let p1= 2 be a prime number that divides 6, and consider the ideal ˜ I0=hp1, t2+ 5i, that contains ˜ I. We compute M1=ht+ 1i, a maximal ideal of (Z/p1)[t] that contains the polynomial t2+¯ 5. Then p1=h2,1 + ωiis a maximal ideal that contains Iand p−1 1=D+1+ω 2D. Hence we obtain I1=p−1 1I=h6,3+3ωi. Again, I1is not a prime ideal, so we apply the process to it. It is contained in the maximal ideal p2=h2,1 + ωi, so we define I2=p−1 2I1=h3i. The ideal I2is not CONSTRUCTIONS IN R[x1,...,xn]. APPLICATIONS TO K-THEORY 9 prime, because t2+¯ 5 is reducible in (Z/3)[t]. A maximal ideal that contains I2is p3=h3,1 + ωi, and p−1 3=D+1−ω 3D. Now I3=p−1 3I2=h3,1−ωi, that it is prime. Putting p4=I3we get I=p2 1p3p4. 4.2. Projective modules over D[x].Let Mbe a finitely generated D-module. Then Mis projective if and only if Mis torsion free. In this case, if rank(M) = r, then M≃Dr−1⊕awhere ais an ideal of D.Mis free if and only if ais principal ([5, Thm. 1.2.23]). This decomposition can be computed when Dis the ring of integers of a number field ([5, Thm. 1.2.19]), and the crucial step is the following lemma. Lemma 4. If Iand Jare fractional ideals of Dthen I⊕J≃D⊕IJ as D-modules. A way to obtain this isomorphism is through the prime decomposition of ideals in D(see [5, Prop. 1.3.12]) or applying [5, Algorithm 1.3.16]. Then, if we have determined the freeness of a torsion free module Mwe can compute a basis using this isomorphism. If Mis a maximal ideal in Dthen the local ring DMis a discrete valuation ring, so a PID. If P(x) is a projective module over D[x], then for each maximal ideal Mof D, the module P(x)Mis projective over DM[x], and by the Quillen-Suslin theorem P(x)Mis free. Then P(x) is extended from P(0) ([21]). When Dis the ring of integers of a number field, we have an algorithm for the previous result analogous to [14]. This shows us that for checking the freeness of P(x) over D[x] is enough to test P(0) over D. The problem is reduced to compute a free basis of the module P(x)Mover DM[x] for a maximal ideal Mof D. But DMis an MC-PID, and by sections 3.1, 3.2 we have two algorithms to get a free basis. Example 5.In D=Z[ω], ω =√−5 consider f(x)=(f1(x)f2(x)f3(x)) the unimodular row in D[x]3where f1(x) = −5x2−2ωx + 2x+ω−2, f2(x) = x2−x, f3(x) = ωx −ω+ 1. Let P(x) be the projective module defined by ker(f(x)), whose generators in D[x]3 are given by the columns of the matrix M(x) = I3−g(x)f(x), where g(x) = (x−1,5x−2,2x−1)t.To check the freeness of P(x) we consider the D-module P(0) generated by the columns of M(0). We can see that P(0) ≃D⊕J, where J=h2−ωi. Then P(0) is free, so P(x). Let M=h2,1 + ωibe maximal ideal of D. Applying Theorem 2 to PMwe get the matrix [x−1,−5x4+ 6x3+ωx2−3x2+ωx −ωx4−ω+ 1,−(x−1)(10086662778x +20424937041ω−6861175910ωx −27394274848x2+ 8528154248ωx3 −5214150542ωx2−45243672650x3+ 28030914183) β 5x−2,−25x4−2ωx3+ 14x3+ 2ωx2−12x2+ 5ωx −x−6ωx4−2ω+ 2 , −(144679169033x−61623674056ω+ 99695086617ωx + 120872168654x2 −36583582778ωx3−17235547982ωx2+ 36521518173ωx4−44295714782x3 −240865770565x4−18225840353) β 2x−1,2−4x2−11x4−ωx3+ 7x3+ωx2+ 2ωx −2ωx4−ω+x5, (−65754728708x+ 28500912245ω−41229027211ωx −52828252348x2 −6119253067x5+ 15325343098ωx3+ 13191112346ωx2−18717821941ωx4 +14918939512x3+ 94101342265x4+ 2929481463x5ω+ 15681952346) β, with β= (−37835988013 + 20773799974 ω).