Changeset e8bf369 in git for Singular/LIB/powers.lib


Ignore:
Timestamp:
Jun 26, 2008, 3:17:43 PM (16 years ago)
Author:
Motsak Oleksandr <motsak@…>
Branches:
(u'spielwiese', '2a584933abf2a2d3082034c7586d38bb6de1a30a')
Children:
4bf7611fbd40e148feb7eae45c84e0cfe66f2ad0
Parents:
afd7439f041adcaccb208f49d906d263a0ab36c7
Message:
*motsak: ^S/E-> s/e for name convention conformance


git-svn-id: file:///usr/local/Singular/svn/trunk@10804 2c84dea3-7e68-4137-9b89-c4e89433aadc
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Singular/LIB/powers.lib

    rafd7439 re8bf369  
    11// version string automatically expanded by CVS
    2 version="$Id: powers.lib,v 1.2 2008-05-29 16:59:32 motsak Exp $";
     2version="$Id: powers.lib,v 1.3 2008-06-26 13:17:43 motsak Exp $";
    33category="Linear algebra";
    44
     
    1010
    1111PROCEDURES:
    12     SymmetricBasis(int, int)       return a basis of a k-th symmetric power
    13     SymmetricPower(module,int)     return k-th symmetric power of a matrix
    14 
    15     ExteriorBasis(int, int)        return a basis of a k-th exterior power
    16     ExteriorPower(module,int)      return k-th exterior power of a matrix
     12    symmetricBasis(int, int)       return a basis of a k-th symmetric power
     13    symmetricPower(module,int)     return k-th symmetric power of a matrix
     14
     15    exteriorBasis(int, int)        return a basis of a k-th exterior power
     16    exteriorPower(module,int)      return k-th exterior power of a matrix
    1717       
    1818";
     
    2222LIB "nctools.lib"; // for SuperCommutative
    2323
    24 
    2524// thanks to Oleksandr Iena for his persistence ;-)
    2625
    27 proc SymmetricBasis(int n, int k)
    28 "USAGE:    SymmetricBasis(n, k); n int, k int
     26proc symmetricBasis(int n, int k)
     27"USAGE:    symmetricBasis(n, k); n int, k int
    2928RETURN:   ring: the basis of the k-th symmetric power of a n-dim vector space
    3029NOTE:     The output consists of a polynomial ring in n variables, together with the ideal called I.
    3130          The ideal I is the basis of the k-th symmetric power of a n-dim vector space (ordered lexicographically).
    3231          The char. of the returned ring is the same as of current basis ring or zero.
    33 SEE ALSO: ExteriorBasis
     32SEE ALSO: exteriorBasis
    3433KEYWORDS: symmetric basis
    35 EXAMPLE:  example SymmetricBasis; shows an example"
     34EXAMPLE:  example symmetricBasis; shows an example"
    3635{
    3736  int p = 0;
     
    5352{ "EXAMPLE:"; echo = 2;
    5453
    55 def r = SymmetricBasis(2, 3); setring r; r;
     54def r = symmetricBasis(2, 3); setring r; r;
    5655I; // basis of 3rd sym. power of a 2-dim v.s.
    5756kill r;
    5857
    5958ring r = (0),(a, b, c, d), dp; r;
    60 def g = SymmetricBasis(3, 2); setring g; g; I;
     59def g = symmetricBasis(3, 2); setring g; g; I;
    6160
    6261kill g, r;
    6362
    6463ring r = (32003),(a, b, c, d), dp; r;
    65 def g = SymmetricBasis(4, 2); setring g; g; I;
    66 }
    67 
    68 proc ExteriorBasis(int n, int k)
    69 "USAGE:    ExteriorBasis(n, k); n int, k int
     64def g = symmetricBasis(4, 2); setring g; g; I;
     65}
     66
     67proc exteriorBasis(int n, int k)
     68"USAGE:    exteriorBasis(n, k); n int, k int
    7069RETURN:   ring: the basis of the k-th exterior power of a n-dim vector space
    7170NOTE:     The output consists of a polynomial ring in n variables, together with the ideal called I.
     
    7372          The char. of the returned ring is the same as of current basis ring or zero.
    7473
    75 SEE ALSO: SymmetricBasis
     74SEE ALSO: symmetricBasis
    7675KEYWORDS: exterior basis
    77 EXAMPLE:  example ExteriorBasis; shows an example"
     76EXAMPLE:  example exteriorBasis; shows an example"
    7877{
    7978  int p = 0;
     
    9695{ "EXAMPLE:"; echo = 2;
    9796
    98 def r = ExteriorBasis(2, 3); setring r; r;
     97def r = exteriorBasis(2, 3); setring r; r;
    9998"Basis: ", I; // basis of 3rd sym. power of a 2-dim v.s.
    10099kill r;
    101100
    102101ring r = (0),(a, b, c, d), dp; r;
    103 def g = ExteriorBasis(3, 2); setring g; g; "Basis: ", I;
     102def g = exteriorBasis(3, 2); setring g; g; "Basis: ", I;
    104103
    105104kill g, r;
    106105
    107106ring r = (32003),(a, b, c, d), dp; r;
    108 def g = ExteriorBasis(4, 2); setring g; g; "Basis: ", I;
    109 }
    110 
    111 
    112 
    113 proc SymmetricPower(module A, int k)
    114 "USAGE:    SymmetricPower(A, k); A module, k int
     107def g = exteriorBasis(4, 2); setring g; g; "Basis: ", I;
     108}
     109
     110
     111
     112proc symmetricPower(module A, int k)
     113"USAGE:    symmetricPower(A, k); A module, k int
    115114RETURN:   module: the k-th symmetric power of A
    116115NOTE:     the chosen bases (ordered lexicographically) and
    117116          temporary data  may be shown if printlevel is big enough
    118 SEE ALSO: ExteriorPower
     117SEE ALSO: exteriorPower
    119118KEYWORDS: symmetric power
    120 EXAMPLE:  example SymmetricPower; shows an example"
     119EXAMPLE:  example symmetricPower; shows an example"
    121120{
    122121  int p = printlevel - voice + 2;
     
    129128
    130129  /////////////////////////////////////////////////////////////////
    131   def Tn = SymmetricBasis(N, k); setring Tn;
     130  def Tn = symmetricBasis(N, k); setring Tn;
    132131  ideal Ink = I;
    133132  dbprint(p-3, "Temporary Source Ring", basering);
     
    135134
    136135  /////////////////////////////////////////////////////////////////
    137   def Tm = SymmetricBasis(M, k); setring Tm;
     136  def Tm = symmetricBasis(M, k); setring Tm;
    138137  ideal Imk = I;
    139138  dbprint(p-3, "Temporary Image Ring", basering);
     
    223222module A = a*gen(1), b * gen(1), c*gen(1), d * gen(1);
    224223
    225 print(SymmetricPower(A, 2));
    226 print(SymmetricPower(A, 3));
     224print(symmetricPower(A, 2));
     225print(symmetricPower(A, 3));
    227226
    228227module B = a*gen(1) + c* gen(2), b * gen(1) + d * gen(2);
    229228
    230 print(SymmetricPower(B, 2));
    231 print(SymmetricPower(B, 3));
     229print(symmetricPower(B, 2));
     230print(symmetricPower(B, 3));
    232231
    233232kill r;
     
    236235module A = a*gen(1), b * gen(1), c*gen(1), d * gen(1);
    237236
    238 print(SymmetricPower(A, 2));
    239 print(SymmetricPower(A, 3));
     237print(symmetricPower(A, 2));
     238print(symmetricPower(A, 3));
    240239
    241240module B = a*gen(1) + c* gen(2), b * gen(1) + d * gen(2);
    242241
    243 print(SymmetricPower(B, 2));
    244 print(SymmetricPower(B, 3));
     242print(symmetricPower(B, 2));
     243print(symmetricPower(B, 3));
    245244
    246245kill r;
     
    251250
    252251
    253 proc ExteriorPower(module A, int k)
    254 "USAGE:    ExteriorPower(A, k); A module, k int
     252proc exteriorPower(module A, int k)
     253"USAGE:    exteriorPower(A, k); A module, k int
    255254RETURN:   module: the k-th exterior power of A
    256255NOTE:     the chosen bases and temporary data
    257256          may be shown if printlevel is big enough.
    258257          Last rows may be invisible if zero.
    259 SEE ALSO: SymmetricPower
     258SEE ALSO: symmetricPower
    260259KEYWORDS: exterior power
    261 EXAMPLE:  example ExteriorPower; shows an example"
     260EXAMPLE:  example exteriorPower; shows an example"
    262261{
    263262  int p = printlevel - voice + 2;
     
    270269
    271270  /////////////////////////////////////////////////////////////////
    272   def Tn = ExteriorBasis(N, k); setring Tn;
     271  def Tn = exteriorBasis(N, k); setring Tn;
    273272  ideal Ink = I;
    274273  dbprint(p-3, "Temporary Source Ring", basering);
     
    276275
    277276  /////////////////////////////////////////////////////////////////
    278   def Tm = ExteriorBasis(M, k); setring Tm;
     277  def Tm = exteriorBasis(M, k); setring Tm;
    279278  ideal Imk = I;
    280279  dbprint(p-3, "Temporary Image Ring", basering);
     
    364363  module A = a*gen(1), b * gen(1), c*gen(1), d * gen(1);
    365364
    366   print(ExteriorPower(A, 2));
    367   print(ExteriorPower(A, 3));
     365  print(exteriorPower(A, 2));
     366  print(exteriorPower(A, 3));
    368367
    369368  module B = a*gen(1) + c* gen(2), b * gen(1) + d * gen(2);
    370369
    371   print(ExteriorPower(B, 2));
    372   print(ExteriorPower(B, 3));
     370  print(exteriorPower(B, 2));
     371  print(exteriorPower(B, 3));
    373372
    374373  kill r;
     
    377376  module A = a*gen(1), b * gen(1), c*gen(1), d * gen(1);
    378377
    379   print(ExteriorPower(A, 2));
    380   print(ExteriorPower(A, 3));
     378  print(exteriorPower(A, 2));
     379  print(exteriorPower(A, 3));
    381380
    382381  module B = a*gen(1) + c* gen(2), b * gen(1) + d * gen(2);
    383382
    384   print(ExteriorPower(B, 2));
    385   print(ExteriorPower(B, 3));
     383  print(exteriorPower(B, 2));
     384  print(exteriorPower(B, 3));
    386385
    387386  kill r;
Note: See TracChangeset for help on using the changeset viewer.