#5566: [with patch, needs review] Symmetric Groebner bases and Infinitely
Generated Polynomial Rings
---------------------------------+------------------------------------------
 Reporter:  SimonKing            |       Owner:  SimonKing      
     Type:  enhancement          |      Status:  new            
 Priority:  major                |   Milestone:  sage-3.4.2     
Component:  commutative algebra  |    Keywords:  Symmetric Ideal
---------------------------------+------------------------------------------

Comment(by SimonKing):

 Since many things changed, here is an account of what the patch provides:
  * Two implementations of polynomial rings over fields with countably many
 generators, indexed by natural numbers:
    - A sparse implementation, that allows for working with very high
 variable indices
    - A dense implementation, that is much faster provided the variable
 indices are not too big.
  * Elements of these infinite polynomial rings, with usual arithmetic and
 with a permutation action on the variables.
  * Symmetric Ideals, which are ideals that, in addition, are invariant
 under variable permutation.
  * Gröbner stuff:
    - A symmetric version of polynomial reduction, based on the Cython
 class 'SymmetricReductionStrategy' that tries to perform the reduction in
 an efficient way (idea: keep intermediate results small).
    - Symmetric Interreduction
    - Computation of Symmetric Gröbner bases, which is at least possible
 for lexicographic term order, according to Aschenbrenner and Hillar.

 '''__Disclaimer__'''

 I am afraid that again I tried to be clever in implementing the symmetric
 Gröbner basis computation. The following is my justification:

 The underlying idea of any Gröbner basis computation (symmetric or
 straight) is:
  * Perform certain operations that may yield new leading monomials.
  * Continue to perform these operations until it stabilizes.

 In the case of symmetric ideals, these operations are (according to
 Aschenbrenner and Hillar):
  1. S-polynomials
  2. The action of Sym(N), the full symmetric group, where N is some number
 that will increase until it stabilizes.

 I replace Sym(N) by the elementary transpositions (i,j) for i,j<=N. I
 think this works, for the following reason:
  * Let m, n be monomials, m<n, and let P in Sym(N) be a permutation so
 that {{{m^P>n^P}}}.
  * The action of P does not change the polynomial degree. Hence, in all of
 our term orders (lex, deglex, degrevlex), "{{{m<n but m^P>n^P}}}" can only
 occur if P changes the lexicographic order of m and n.
  * If it changes the lexicographic order then we find indices i, j so that
    - the exponents of x_k in m and n coincide, for all k<i
    - the exponent of x_i in m is smaller than the exponent of x_j in m
    - P(j)=i.
  * Hence, the elementary transposition (i,j) would change the order of m
 and n as well.

 In other words, if there is a permutation that turns a non-leading
 monomial into a leading monomial, then there is an elementary
 transposition that does the job as well.

 I am sorry to do mathematics here. With that trick, I can do serious
 examples (20000 polynomials out to variables index 10), which would be
 impossible when studying ''all'' permutations.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/5566#comment:20>
Sage <http://sagemath.org/>
Sage - Open Source Mathematical Software: Building the Car Instead of 
Reinventing the Wheel

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to