Changeset d2b2a7 in git for Singular/LIB/finvar.lib


Ignore:
Timestamp:
May 5, 1998, 1:55:40 PM (26 years ago)
Author:
Kai Krüger <krueger@…>
Branches:
(u'spielwiese', 'a719bcf0b8dbc648b128303a49777a094b57592c')
Children:
97f92aa6d280f6022eaae47195ccc02503ccb984
Parents:
4996f5286c7671191ad22e654499fd8b752fe4f0
Message:
Modified Files:
	libparse.l utils.cc LIB/classify.lib LIB/deform.lib
	LIB/elim.lib LIB/factor.lib LIB/fastsolv.lib LIB/finvar.lib
	LIB/general.lib LIB/hnoether.lib LIB/homolog.lib LIB/inout.lib
	LIB/invar.lib LIB/makedbm.lib LIB/matrix.lib LIB/normal.lib
	LIB/poly.lib LIB/presolve.lib LIB/primdec.lib LIB/primitiv.lib
	LIB/random.lib LIB/ring.lib LIB/sing.lib LIB/standard.lib
	LIB/tex.lib LIB/tst.lib
Changed help section o procedures to have an quoted help-string between
proc-definition and proc-body.


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

Legend:

Unmodified
Added
Removed
  • Singular/LIB/finvar.lib

    r4996f52 rd2b2a7  
    1 // $Id: finvar.lib,v 1.9 1998-05-03 11:57:37 obachman Exp $
     1// $Id: finvar.lib,v 1.10 1998-05-05 11:55:25 krueger Exp $
    22// author: Agnes Eileen Heydtmann, email:agnes@math.uni-sb.de
    33// last change: 3.5.98
    44//////////////////////////////////////////////////////////////////////////////
    5 version="$Id: finvar.lib,v 1.9 1998-05-03 11:57:37 obachman Exp $"
     5version="$Id: finvar.lib,v 1.10 1998-05-05 11:55:25 krueger Exp $"
    66info="
    77LIBRARY:  finvar.lib       LIBRARY TO CALCULATE INVARIANT RINGS & MORE
     
    6565
    6666proc cyclotomic (int i)
    67 USAGE:   cyclotomic(i);
     67"USAGE:   cyclotomic(i);
    6868         i: an <int> > 0
    6969RETURNS: the i-th cyclotomic polynomial (type <poly>) as one in the first ring
     
    7272THEORY:  x^i-1 is divided by the j-th cyclotomic polynomial where j takes on the
    7373         value of proper divisors of i
     74"
    7475{ if (i<=0)
    7576  { "ERROR:   the input should be > 0.";
     
    114115
    115116proc group_reynolds (list #)
    116 USAGE:   group_reynolds(G1,G2,...[,v]);
     117"USAGE:   group_reynolds(G1,G2,...[,v]);
    117118         G1,G2,...: nxn <matrices> generating a finite matrix group, v: an
    118119         optional <int>
     
    135136         the Reynolds operator is made up is generated. They are stored in the
    136137         rows of the first return value.
     138"
    137139{ int ch=char(basering);               // the existance of the Reynolds operator
    138140                                       // is dependent on the characteristic of
     
    320322
    321323proc molien (list #)
    322 USAGE:   molien(G1,G2,...[,ringname,lcm,flags]);
     324"USAGE:   molien(G1,G2,...[,ringname,lcm,flags]);
    323325         G1,G2,...: nxn <matrices> generating a finite matrix group, ringname:
    324326         a <string> giving a name for a new ring of characteristic 0 for the
     
    350352         enumerator and denominator of the expanded version where common factors
    351353         have been canceled.
     354"
    352355{ def br=basering;                     // the Molien series depends on the
    353356  int ch=char(br);                     // characteristic of the coefficient
     
    858861
    859862proc reynolds_molien (list #)
    860 USAGE:   reynolds_molien(G1,G2,...[,ringname,flags]);
     863"USAGE:   reynolds_molien(G1,G2,...[,ringname,flags]);
    861864         G1,G2,...: nxn <matrices> generating a finite matrix group, ringname:
    862865         a <string> giving a name for a new ring of characteristic 0 for the
     
    894897         modular case). The returned matrix gives enumerator and denominator of
    895898         the expanded version where common factors have been canceled.
     899"
    896900{ def br=basering;                     // the Molien series depends on the
    897901  int ch=char(br);                     // characteristic of the coefficient
     
    14031407
    14041408proc partial_molien (matrix M, int n, list #)
    1405 USAGE:   partial_molien(M,n[,p]);
     1409"USAGE:   partial_molien(M,n[,p]);
    14061410         M: a 1x2 <matrix>, n: an <int> indicating  number of terms in the
    14071411         expansion, p: an optional <poly>
     
    14211425            (a1-b1)x+b1(a1-b1)x^2+...
    14221426EXAMPLE: example partial_molien; shows an example
     1427"
    14231428{ poly A(2);                           // A(2) will contain the return value of
    14241429                                       // the intermediate result
     
    14891494
    14901495proc evaluate_reynolds (matrix REY, ideal I)
    1491 USAGE:   evaluate_reynolds(REY,I);
     1496"USAGE:   evaluate_reynolds(REY,I);
    14921497         REY: a <matrix> representing the Reynolds operator, I: an arbitrary
    14931498         <ideal>
     
    15001505THEORY:  REY has been constructed in such a way that each row serves as a ring
    15011506         mapping of which the Reynolds operator is made up.
     1507"
    15021508{ def br=basering;
    15031509  int n=nvars(br);
     
    15371543
    15381544proc invariant_basis (int g,list #)
    1539 USAGE:   invariant_basis(g,G1,G2,...);
     1545"USAGE:   invariant_basis(g,G1,G2,...);
    15401546         g: an <int> indicating of which degree (>0) the homogeneous basis
    15411547         shoud be, G1,G2,...: <matrices> generating a finite matrix group
     
    15461552         system of linear equations is created. It is solved by computing
    15471553         syzygies.
     1554"
    15481555{ if (g<=0)
    15491556  { "ERROR:   the first parameter should be > 0";
     
    16261633
    16271634proc invariant_basis_reynolds (matrix REY,int d,list #)
    1628 USAGE:   invariant_basis_reynolds(REY,d[,flags]);
     1635"USAGE:   invariant_basis_reynolds(REY,d[,flags]);
    16291636         REY: a <matrix> representing the Reynolds operator, d: an <int>
    16301637         indicating of which degree (>0) the homogeneous basis shoud be, flags:
     
    16431650         operator. A linearly independent set is generated with the help of
    16441651         minbase.
     1652"
    16451653{
    16461654 //---------------------- checking that the input is ok -----------------------
     
    20252033
    20262034proc primary_char0 (matrix REY,matrix M,list #)
    2027 USAGE:   primary_char0(REY,M[,v]);
     2035"USAGE:   primary_char0(REY,M[,v]);
    20282036         REY: a <matrix> representing the Reynolds operator, M: a 1x2 <matrix>
    20292037         representing the Molien series, v: an optional <int>
     
    20362044THEORY:  Bases of homogeneous invariants are generated successively and those
    20372045         are chosen as primary invariants that lower the dimension of the ideal
    2038          generated by the previously found invariants (see paper "Generating a
    2039          Noetherian Normalization of the Invariant Ring of a Finite Group" by
     2046         generated by the previously found invariants (see paper \"Generating a
     2047         Noetherian Normalization of the Invariant Ring of a Finite Group\" by
    20402048         Decker, Heydtmann, Schreyer (1997) to appear in JSC).
     2049"
    20412050{ degBound=0;
    20422051  if (char(basering)<>0)
     
    21652174
    21662175proc primary_charp (matrix REY,string ring_name,list #)
    2167 USAGE:   primary_charp(REY,ringname[,v]);
     2176"USAGE:   primary_charp(REY,ringname[,v]);
    21682177         REY: a <matrix> representing the Reynolds operator, ringname: a
    21692178         <string> giving the name of a ring where the Molien series is stored,
     
    21782187THEORY:  Bases of homogeneous invariants are generated successively and those
    21792188         are chosen as primary invariants that lower the dimension of the ideal
    2180          generated by the previously found invariants (see paper "Generating a
    2181          Noetherian Normalization of the Invariant Ring of a Finite Group" by
     2189         generated by the previously found invariants (see paper \"Generating a
     2190         Noetherian Normalization of the Invariant Ring of a Finite Group\" by
    21822191         Decker, Heydtmann, Schreyer (1997) to appear in JSC).
     2192"
    21832193{ degBound=0;
    21842194// ---------------- checking input and setting verbose mode -------------------
     
    23172327
    23182328proc primary_char0_no_molien (matrix REY, list #)
    2319 USAGE:   primary_char0_no_molien(REY[,v]);
     2329"USAGE:   primary_char0_no_molien(REY[,v]);
    23202330         REY: a <matrix> representing the Reynolds operator, v: an optional
    23212331         <int>
     
    23292339THEORY:  Bases of homogeneous invariants are generated successively and those
    23302340         are chosen as primary invariants that lower the dimension of the ideal
    2331          generated by the previously found invariants (see paper "Generating a
    2332          Noetherian Normalization of the Invariant Ring of a Finite Group" by
     2341         generated by the previously found invariants (see paper \"Generating a
     2342         Noetherian Normalization of the Invariant Ring of a Finite Group\" by
    23332343         Decker, Heydtmann, Schreyer (1997) to appear in JSC).
     2344"
    23342345{ degBound=0;
    23352346 //-------------- checking input and setting verbose mode ---------------------
     
    24592470
    24602471proc primary_charp_no_molien (matrix REY, list #)
    2461 USAGE:   primary_charp_no_molien(REY[,v]);
     2472"USAGE:   primary_charp_no_molien(REY[,v]);
    24622473         REY: a <matrix> representing the Reynolds operator, v: an optional
    24632474         <int>
     
    24712482THEORY:  Bases of homogeneous invariants are generated successively and those
    24722483         are chosen as primary invariants that lower the dimension of the ideal
    2473          generated by the previously found invariants (see paper "Generating a
    2474          Noetherian Normalization of the Invariant Ring of a Finite Group" by
     2484         generated by the previously found invariants (see paper \"Generating a
     2485         Noetherian Normalization of the Invariant Ring of a Finite Group\" by
    24752486         Decker, Heydtmann, Schreyer (1997) to appear in JSC).
     2487"
    24762488{ degBound=0;
    24772489 //----------------- checking input and setting verbose mode ------------------
     
    26032615
    26042616proc primary_charp_without (list #)
    2605 USAGE:   primary_charp_without(G1,G2,...[,v]);
     2617"USAGE:   primary_charp_without(G1,G2,...[,v]);
    26062618         G1,G2,...: <matrices> generating a finite matrix group, v: an optional
    26072619         <int>
     
    26122624THEORY:  Bases of homogeneous invariants are generated successively and those
    26132625         are chosen as primary invariants that lower the dimension of the ideal
    2614          generated by the previously found invariants (see paper "Generating a
    2615          Noetherian Normalization of the Invariant Ring of a Finite Group" by
     2626         generated by the previously found invariants (see paper \"Generating a
     2627         Noetherian Normalization of the Invariant Ring of a Finite Group\" by
    26162628         Decker, Heydtmann, Schreyer (1997) to appear in JSC). No Reynolds
    26172629         operator or Molien series is used.
     2630"
    26182631{ degBound=0;
    26192632 //--------------------- checking input and setting verbose mode --------------
     
    27412754
    27422755proc primary_invariants (list #)
    2743 USAGE:   primary_invariants(G1,G2,...[,flags]);
     2756"USAGE:   primary_invariants(G1,G2,...[,flags]);
    27442757         G1,G2,...: <matrices> generating a finite matrix group, flags: an
    27452758         optional <intvec> with three entries, if the first one equals 0 (also
     
    27672780THEORY:  Bases of homogeneous invariants are generated successively and those
    27682781         are chosen as primary invariants that lower the dimension of the ideal
    2769          generated by the previously found invariants (see paper "Generating a
    2770          Noetherian Normalization of the Invariant Ring of a Finite Group" by
     2782         generated by the previously found invariants (see paper \"Generating a
     2783         Noetherian Normalization of the Invariant Ring of a Finite Group\" by
    27712784         Decker, Heydtmann, Schreyer (1997) to appear in JSC).
     2785"
    27722786{
    27732787 // ----------------- checking input and setting flags ------------------------
     
    31493163
    31503164proc primary_char0_random (matrix REY,matrix M,int max,list #)
    3151 USAGE:   primary_char0_random(REY,M,r[,v]);
     3165"USAGE:   primary_char0_random(REY,M,r[,v]);
    31523166         REY: a <matrix> representing the Reynolds operator, M: a 1x2 <matrix>
    31533167         representing the Molien series, r: an <int> where -|r| to |r| is the
     
    31633177         linear combinations are chosen as primary invariants that lower the
    31643178         dimension of the ideal generated by the previously found invariants
    3165          (see paper "Generating a Noetherian Normalization of the Invariant Ring
    3166          of a Finite Group" by Decker, Heydtmann, Schreyer (1997) to appear in
     3179         (see paper \"Generating a Noetherian Normalization of the Invariant Ring
     3180         of a Finite Group\" by Decker, Heydtmann, Schreyer (1997) to appear in
    31673181         JSC).
     3182"
    31683183{ degBound=0;
    31693184  if (char(basering)<>0)
     
    32953310
    32963311proc primary_charp_random (matrix REY,string ring_name,int max,list #)
    3297 USAGE:   primary_charp_random(REY,ringname,r[,v]);
     3312"USAGE:   primary_charp_random(REY,ringname,r[,v]);
    32983313         REY: a <matrix> representing the Reynolds operator, ringname: a
    32993314         <string> giving the name of a ring where the Molien series is stored,
     
    33103325         linear combinations are chosen as primary invariants that lower the
    33113326         dimension of the ideal generated by the previously found invariants
    3312          (see paper "Generating a Noetherian Normalization of the Invariant Ring
    3313          of a Finite Group" by Decker, Heydtmann, Schreyer (1997) to appear in
     3327         (see paper \"Generating a Noetherian Normalization of the Invariant Ring
     3328         of a Finite Group\" by Decker, Heydtmann, Schreyer (1997) to appear in
    33143329         JSC).
     3330"
    33153331{ degBound=0;
    33163332 // ---------------- checking input and setting verbose mode ------------------
     
    34523468
    34533469proc primary_char0_no_molien_random (matrix REY, int max, list #)
    3454 USAGE:   primary_char0_no_molien_random(REY,r[,v]);
     3470"USAGE:   primary_char0_no_molien_random(REY,r[,v]);
    34553471         REY: a <matrix> representing the Reynolds operator, r: an <int> where
    34563472         -|r| to |r| is the range of coefficients of the random combinations of
     
    34663482         linear combinations are chosen as primary invariants that lower the
    34673483         dimension of the ideal generated by the previously found invariants
    3468          (see paper "Generating a Noetherian Normalization of the Invariant Ring
    3469          of a Finite Group" by Decker, Heydtmann, Schreyer (1997) to appear in
     3484         (see paper \"Generating a Noetherian Normalization of the Invariant Ring
     3485         of a Finite Group\" by Decker, Heydtmann, Schreyer (1997) to appear in
    34703486         JSC).
     3487"
    34713488{ degBound=0;
    34723489 //-------------- checking input and setting verbose mode ---------------------
     
    35993616
    36003617proc primary_charp_no_molien_random (matrix REY, int max, list #)
    3601 USAGE:   primary_charp_no_molien_random(REY,r[,v]);
     3618"USAGE:   primary_charp_no_molien_random(REY,r[,v]);
    36023619         REY: a <matrix> representing the Reynolds operator, r: an <int> where
    36033620         -|r| to |r| is the range of coefficients of the random combinations of
     
    36133630         linear combinations are chosen as primary invariants that lower the
    36143631         dimension of the ideal generated by the previously found invariants
    3615          (see paper "Generating a Noetherian Normalization of the Invariant Ring
    3616          of a Finite Group" by Decker, Heydtmann, Schreyer (1997) to appear in
     3632         (see paper \"Generating a Noetherian Normalization of the Invariant Ring
     3633         of a Finite Group\" by Decker, Heydtmann, Schreyer (1997) to appear in
    36173634         JSC).
     3635"
    36183636{ degBound=0;
    36193637 //----------------- checking input and setting verbose mode ------------------
     
    37473765
    37483766proc primary_charp_without_random (list #)
    3749 USAGE:   primary_charp_without_random(G1,G2,...,r[,v]);
     3767"USAGE:   primary_charp_without_random(G1,G2,...,r[,v]);
    37503768         G1,G2,...: <matrices> generating a finite matrix group, r: an <int>
    37513769         where -|r| to |r| is the range of coefficients of the random
     
    37583776         linear combinations are chosen as primary invariants that lower the
    37593777         dimension of the ideal generated by the previously found invariants
    3760          (see paper "Generating a Noetherian Normalization of the Invariant Ring
    3761          of a Finite Group" by Decker, Heydtmann, Schreyer (1997) to appear in
     3778         (see paper \"Generating a Noetherian Normalization of the Invariant Ring
     3779         of a Finite Group\" by Decker, Heydtmann, Schreyer (1997) to appear in
    37623780         JSC). No Reynolds operator or Molien series is used.
     3781"
    37633782{ degBound=0;
    37643783 //--------------------- checking input and setting verbose mode --------------
     
    38963915
    38973916proc primary_invariants_random (list #)
    3898 USAGE:   primary_invariants_random(G1,G2,...,r[,flags]);
     3917"USAGE:   primary_invariants_random(G1,G2,...,r[,flags]);
    38993918         G1,G2,...: <matrices> generating a finite matrix group, r: an <int>
    39003919         where -|r| to |r| is the range of coefficients of the random
     
    39253944         linear combinations are chosen as primary invariants that lower the
    39263945         dimension of the ideal generated by the previously found invariants
    3927          (see paper "Generating a Noetherian Normalization of the Invariant Ring
    3928          of a Finite Group" by Decker, Heydtmann, Schreyer (1997) to appear in
     3946         (see paper \"Generating a Noetherian Normalization of the Invariant Ring
     3947         of a Finite Group\" by Decker, Heydtmann, Schreyer (1997) to appear in
    39293948         JSC).
     3949"
    39303950{
    39313951 // ----------------- checking input and setting flags ------------------------
     
    41104130
    41114131proc power_products(intvec deg_vec,int d)
    4112 USAGE:   power_products(dv,d);
     4132"USAGE:   power_products(dv,d);
    41134133         dv: an <intvec> giving the degrees of homogeneous polynomials, d: the
    41144134         degree of the desired power products
     
    41174137         of the powers is then homogeneous of degree d.
    41184138EXAMPLE: example power_products; gives an example
     4139"
    41194140{ ring R=0,x,dp;
    41204141  if (d<=0)
     
    41664187
    41674188proc secondary_char0 (matrix P, matrix REY, matrix M, list #)
    4168 USAGE:   secondary_char0(P,REY,M[,v]);
     4189"USAGE:   secondary_char0(P,REY,M[,v]);
    41694190         P: a 1xn <matrix> with primary invariants, REY: a gxn <matrix>
    41704191         representing the Reynolds operator, M: a 1x2 <matrix> giving enumerator
     
    41834204         to invariants with the Reynolds operator and using these images or
    41844205         their power products such that they are linearly independent modulo the
    4185          primary invariants (see paper "Some Algorithms in Invariant Theory of
    4186          Finite Groups" by Kemper and Steel (1997)).
     4206         primary invariants (see paper \"Some Algorithms in Invariant Theory of
     4207         Finite Groups\" by Kemper and Steel (1997)).
     4208"
    41874209{ def br=basering;
    41884210  degBound=0;
     
    43734395
    43744396proc secondary_charp (matrix P, matrix REY, string ring_name, list #)
    4375 USAGE:   secondary_charp(P,REY,ringname[,v]);
     4397"USAGE:   secondary_charp(P,REY,ringname[,v]);
    43764398         P: a 1xn <matrix> with primary invariants, REY: a gxn <matrix>
    43774399         representing the Reynolds operator, ringname: a <string> giving the
     
    43914413         to invariants with the Reynolds operator and using these images or
    43924414         their power products such that they are linearly independent modulo the
    4393          primary invariants (see paper "Some Algorithms in Invariant Theory of
    4394          Finite Groups" by Kemper and Steel (1997)).
     4415         primary invariants (see paper \"Some Algorithms in Invariant Theory of
     4416         Finite Groups\" by Kemper and Steel (1997)).
     4417"
    43954418{ def br=basering;
    43964419  degBound=0;
     
    45964619
    45974620proc secondary_no_molien (matrix P, matrix REY, list #)
    4598 USAGE:   secondary_no_molien(P,REY[,deg_vec,v]);
     4621"USAGE:   secondary_no_molien(P,REY[,deg_vec,v]);
    45994622         P: a 1xn <matrix> with primary invariants, REY: a gxn <matrix>
    46004623         representing the Reynolds operator, deg_vec: an optional <intvec>
     
    46134636         to invariants with the Reynolds operator and using these images as
    46144637         candidates for secondary invariants.
     4638"
    46154639{ int i;
    46164640  degBound=0;
     
    47544778
    47554779proc secondary_with_irreducible_ones_no_molien (matrix P, matrix REY, list #)
    4756 USAGE:   secondary_with_irreducible_ones_no_molien(P,REY[,v]);
     4780"USAGE:   secondary_with_irreducible_ones_no_molien(P,REY[,v]);
    47574781         P: a 1xn <matrix> with primary invariants, REY: a gxn <matrix>
    47584782         representing the Reynolds operator, v: an optional <int>
     
    47684792         to invariants with the Reynolds operator and using these images or
    47694793         their power products such that they are linearly independent modulo the
    4770          primary invariants (see paper "Some Algorithms in Invariant Theory of
    4771          Finite Groups" by Kemper and Steel (1997)).
     4794         primary invariants (see paper \"Some Algorithms in Invariant Theory of
     4795         Finite Groups\" by Kemper and Steel (1997)).
     4796"
    47724797{ int i;
    47734798  degBound=0;
     
    49504975
    49514976proc secondary_not_cohen_macaulay (matrix P, list #)
    4952 USAGE:   secondary_not_cohen_macaulay(P,G1,G2,...[,v]);
     4977"USAGE:   secondary_not_cohen_macaulay(P,G1,G2,...[,v]);
    49534978         P: a 1xn <matrix> with primary invariants, G1,G2,...: nxn <matrices>
    49544979         generating a finite matrix group, v: an optional <int>
     
    49574982DISPLAY: information if v does not equal 0
    49584983EXAMPLE: example secondary_not_cohen_macaulay; shows an example
    4959 THEORY:  The secondary invariants are generated following "Generating Invariant
    4960          Rings of Finite Groups over Arbitrary Fields" by Kemper (1996, to
     4984THEORY:  The secondary invariants are generated following \"Generating Invariant
     4985         Rings of Finite Groups over Arbitrary Fields\" by Kemper (1996, to
    49614986         appear in JSC).
     4987"
    49624988{ int i, j;
    49634989  degBound=0;
     
    51175143
    51185144proc invariant_ring (list #)
    5119 USAGE:   invariant_ring(G1,G2,...[,flags]);
     5145"USAGE:   invariant_ring(G1,G2,...[,flags]);
    51205146         G1,G2,...: <matrices> generating a finite matrix group, flags: an
    51215147         optional <intvec> with three entries: if the first one equals 0, the
     
    51435169THEORY:  Bases of homogeneous invariants are generated successively and those
    51445170         are chosen as primary invariants that lower the dimension of the ideal
    5145          generated by the previously found invariants (see paper "Generating a
    5146          Noetherian Normalization of the Invariant Ring of a Finite Group" by
     5171         generated by the previously found invariants (see paper \"Generating a
     5172         Noetherian Normalization of the Invariant Ring of a Finite Group\" by
    51475173         Decker, Heydtmann, Schreyer (1997) to appear in JSC). In the
    51485174         non-modular case secondary invariants are calculated by finding a
     
    51505176         invariants, mapping to invariants with the Reynolds operator and using
    51515177         those or their power products such that they are linearly independent
    5152          modulo the primary invariants (see paper "Some Algorithms in Invariant
    5153          Theory of Finite Groups" by Kemper and Steel (1997)). In the modular
    5154          case they are generated according to "Generating Invariant Rings of
    5155          Finite Groups over Arbitrary Fields" by Kemper (1996, to appear in
     5178         modulo the primary invariants (see paper \"Some Algorithms in Invariant
     5179         Theory of Finite Groups\" by Kemper and Steel (1997)). In the modular
     5180         case they are generated according to \"Generating Invariant Rings of
     5181         Finite Groups over Arbitrary Fields\" by Kemper (1996, to appear in
    51565182         JSC).
     5183"
    51575184{ if (size(#)==0)
    51585185  { "ERROR:   There are no generators given.";
     
    53225349
    53235350proc invariant_ring_random (list #)
    5324 USAGE:   invariant_ring_random(G1,G2,...,r[,flags]);
     5351"USAGE:   invariant_ring_random(G1,G2,...,r[,flags]);
    53255352         G1,G2,...: <matrices> generating a finite matrix group, r: an <int>
    53265353         where -|r| to |r| is the range of coefficients of random
     
    53525379         hopefully they lower the dimension of the previously found primary
    53535380         invariants by the right amount.
     5381"
    53545382{ if (size(#)<2)
    53555383  { "ERROR:   There are too few parameters.";
     
    55455573
    55465574proc algebra_containment (poly p, matrix A)
    5547 USAGE:   algebra_containment(p,A);
     5575"USAGE:   algebra_containment(p,A);
    55485576         p: arbitrary <poly>, A: a 1xm <matrix> giving generators of a
    55495577         subalgebra of the basering
     
    55585586         to a polynomial only in the y(i) <=> p is contained in the subring
    55595587         generated by the polynomials in A.
     5588"
    55605589{ degBound=0;
    55615590  if (nrows(A)==1)
     
    56015630
    56025631proc module_containment(poly p, matrix P, matrix S)
    5603 USAGE:   module_containment(p,P,S);
     5632"USAGE:   module_containment(p,P,S);
    56045633         p: arbitrary <poly>, P: a 1xn <matrix> giving generators of an algebra,
    56055634         S: a 1xt <matrix> giving generators of a module over the algebra
     
    56195648         again. p reduces to a polynomial only in the y(j) and z(i) linear in
    56205649         the z(i)) <=> p is contained in the module.
     5650"
    56215651{ def br=basering;
    56225652  degBound=0;
     
    56695699
    56705700proc orbit_variety (matrix F,string newring)
    5671 USAGE:   orbit_variety(F,s);
     5701"USAGE:   orbit_variety(F,s);
    56725702         F: a 1xm <matrix> defing an invariant ring, s: a <string> giving the
    56735703         name for a new ring
     
    56785708         calculated, then the variables of the original ring are eliminated and
    56795709         the polynomials that are left over define the orbit variety
     5710"
    56805711{ if (newring=="")
    56815712  { "ERROR:   the second parameter may not be an empty <string>";
     
    57255756
    57265757proc relative_orbit_variety(ideal I,matrix F,string newring)
    5727 USAGE:   relative_orbit_variety(I,F,s);
     5758"USAGE:   relative_orbit_variety(I,F,s);
    57285759         I: an <ideal> invariant under the action of a group, F: a 1xm
    57295760         <matrix> defining the invariant ring of this group, s: a <string>
     
    57375768         the polynomials that are left over define thecrelative orbit variety
    57385769         with respect to I.
     5770"
    57395771{ if (newring=="")
    57405772  { "ERROR:   the third parameter may not be empty a <string>";
     
    58055837
    58065838proc image_of_variety(ideal I,matrix F)
    5807 USAGE:   image_of_variety(I,F);
     5839"USAGE:   image_of_variety(I,F);
    58085840         I: an arbitray <ideal>, F: a 1xm <matrix> defining an invariant ring
    58095841         of a some matrix group
     
    58155847         invariant ring. This ideal in the original variables defines the image
    58165848         of the variety defined by I
     5849"
    58175850{ if (nrows(F)==1)
    58185851  { def br=basering;
Note: See TracChangeset for help on using the changeset viewer.