# Changeset b66fdf in git

Ignore:
Timestamp:
Apr 3, 2006, 3:14:05 PM (18 years ago)
Branches:
(u'spielwiese', '873fc1222e995d7cb33f79d8f1792ce418c8c72c')
Children:
61c541313602e9288afac56c71f3228283e313c4
Parents:
a7ec94356a9de1892b8bcd8a9119b7341484813b
Message:
minor upgrade: cosmetic changes.

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

### Legend:

Unmodified
 ra7ec94 /////////////////////////////////////////////////////////////////////////////// version="$Id: perron.lib,v 1.1 2006-03-13 14:31:44 motsak Exp$"; version="$Id: perron.lib,v 1.2 2006-04-03 13:14:05 motsak Exp$"; category="Noncommutative"; info=" LIBRARY:  perron.lib LIBRARY:  perron.lib         computation of algebraic dependences AUTHORS:  Oleksandr Motsak,        motsak@mathematik.uni-kl.de. proc perron( ideal L, list # ) "USAGE:     perron( L [, D] ) RETURN:     a commutative ring, containing an exported ideal with polynomial relations with the name Relations. PURPOSE:     computes relations between pairwise commuting polynomials of L[, up to a given degree bound D] NOTE:     The perron relation is know to exit and be minimal only if size(L) = (1+nvars(basering))! EXAMPLE:    example sa_reduce; shows an example RETURN:     a commutative ring, containing an exported ideal Relations with found polynomial relations. PURPOSE:    computes relations between pairwise commuting polynomials of L[, up to a given degree bound D] NOTE:       the implementation was partially inspired by the Perron's theorem. EXAMPLE:    example perron; shows an example " { intvec W; // weights for ( i = size(L); i > 0 ; i-- ) for ( i = N; i > 0; i-- ) { W[i] = deg(L[i]); } //////////////////////////////////////////////////////////////////////// // we are in COMMUTATIVERING now: ideal PBWBasis = PBW_basis_byMaxDeg( D ); // All monomials of degree(!) <= D. ideal PBWBasis = PBW_maxDeg( D ); // All monomials of degree(!) <= D. // TODO: it would be better to compute weighted monomials of weight <= W[1] \cdot ... W[N]. //    Images; def T = KER( Images ); // Compute relations in NC ring def T = linearMapKernel( Images ); // Compute relations in NC ring //    T; if( (typeof(T) != "module") and (typeof(T) != "int" ) ) { ERROR( "Wrong output from the 'KER' function!" ); ERROR( "Wrong output from the 'linearMapKernel' function!" ); } if( T != 0 ) { ERROR( "Wrong output from the 'KER' function!" ); ERROR( "Wrong output from the 'linearMapKernel' function!" ); } } setring COMMUTATIVERING; ideal result = LinearCombinations( PBWBasis, KER ); ideal result = linearCombinations( PBWBasis, KER ); kill KER; D[1,2]=-z; D[1,3]=2*x; D[2,3]=-2*y; ncalgebra(1,D); // this algebra is U(sl_2) ideal L = x^p, y^p, z^p-z, 4*x*y+z^2-2*z; // the [p]-Center ideal L = x^p, y^p, z^p-z, 4*x*y+z^2-2*z; // the center def R = perron( L, p ); setring R; R; Relations; // it was exported from perron to be in a returned ring. Relations; // it was exported from perron to be in the returned ring. kill R; // perron can be also used in a commutative case, for example: ring r=0,(x,y,z),dp; ideal J = xy+z2, z2+y2, x2y2-2xy3+y4; def R = perron(J); setring R; Relations; }