Changeset bc7f20 in git for Singular/LIB/ncdecomp.lib
- Timestamp:
- Mar 25, 2005, 7:38:46 PM (19 years ago)
- Branches:
- (u'spielwiese', '8e0ad00ce244dfd0756200662572aef8402f13d5')
- Children:
- fe40ad7908fc2170a79180bc025ccb5bceeab03f
- Parents:
- 0c7cb809f77e6f72afc46162a675f1539bb715c1
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/LIB/ncdecomp.lib
r0c7cb8 rbc7f20 1 1 /////////////////////////////////////////////////////////////////////////////// 2 version="$Id: ncdecomp.lib,v 1. 6 2005-02-23 18:10:46 levandov Exp $";2 version="$Id: ncdecomp.lib,v 1.7 2005-03-25 18:38:46 levandov Exp $"; 3 3 category="Noncommutative"; 4 4 info=" … … 17 17 CenCharDec(I,C); central character decomposition of I w.r.t. C 18 18 IntersectWithSub(M,Z); intersection of M with the subalgebra, generated 19 by pairwise commutative elements .19 by pairwise commutative elements of Z. 20 20 "; 21 21 … … 176 176 } 177 177 /////////////////////////////////////////////////////////////////////////////// 178 proc CenCharDec(module I, list Center) 179 "USAGE: CenCharDec(I, C); I a module, C a list of generators of the center; 178 proc CenCharDec(module I, def #) 179 "USAGE: CenCharDec(I, C); I a module, C an ideal/list of generators of the center; 180 PURPOSE: compute a finite central character decomposition (or point out that there is no finite one), 180 181 RETURN: a list L, where each entry consists of three records: 181 @* L[*][1] is the central character in terms of central elements,182 @* L[*][2] is the Groebner basis of the corresponding weight module,183 @* L[*][3] is the K-dimension of the weight module;182 @* L[*][1] ('ideal' type), the central character as the maximal ideal in the center, 183 @* L[*][2] ('module' type), the Groebner basis of the weight module, corresponding to the character, 184 @* L[*][3] ('int' type) is the K-dimension of the weight module (-1 is returned for an infinite dimension); 184 185 NOTE: some modules have no finite decomposition (in such case one 185 186 gets warning message) … … 188 189 " 189 190 { 191 list Center; 192 if (typeof(#) == "ideal") 193 { 194 int cc; 195 ideal tmp = ideal(#); 196 for (cc=1; cc<=size(tmp); cc++) 197 { 198 Center[cc] = tmp[cc]; 199 } 200 kill tmp; 201 } 202 if (typeof(#) == "list") 203 { 204 Center = #; 205 } 190 206 // M = A/I 191 207 //1. Find the Zariski closure of Supp_Z M … … 308 324 } 309 325 /////////////////////////////////////////////////////////////////////////////// 310 proc IntersectWithSub (ideal M, ideal Z)311 "USAGE: IntersectWithSub(M,Z), M an ideal, Z an ideal of pairwise commutative elements326 proc IntersectWithSub (ideal M, def #) 327 "USAGE: IntersectWithSub(M,Z), M an ideal, Z an ideal/list of pairwise commutative elements 312 328 PURPOSE: computes an intersection of M with the subalgebra, generated by Z 313 329 RETURN: ideal (of two--sided generators, not a Groebner basis!) … … 316 332 " 317 333 { 334 ideal Z; 335 if (typeof(#) == "list") 336 { 337 int cc; 338 list tmp = #; 339 for (cc=1; cc<=size(tmp); cc++) 340 { 341 Z[cc] = tmp[cc]; 342 } 343 kill tmp; 344 } 345 if (typeof(#) == "ideal") 346 { 347 Z = #; 348 } 318 349 // returns a submodule of M, equal to M \cap Z 319 350 // correctness: Z should consists of pairwise
Note: See TracChangeset
for help on using the changeset viewer.