#5453: [with patch, needs review] Create a ring for working with polynomials in
countably infinitely many variables
---------------------------------+------------------------------------------
 Reporter:  mhansen              |       Owner:  mhansen   
     Type:  enhancement          |      Status:  assigned  
 Priority:  major                |   Milestone:  sage-3.4.2
Component:  commutative algebra  |    Keywords:            
---------------------------------+------------------------------------------

Comment(by SimonKing):

 Hi!

 I just had a look at the abstract of Aschenbrenner's and Hillar's
 articles. The title of one article is "An Algorithm for Finding Symmetric
 Gröbner Bases in Infinite Dimensional Rings". They talk about "symmetric
 ideals", but again they say "infinite dimensional polynomial ring", not
 "symmetric polynomial ring".

 This convinces me that Mike's InfinitePolynomialRing is better than
 SymmetricPolynomialRing, and that the word "symmetric" should be reserved
 to the ideals and Gröbner bases of that ring.

 Here some thoughts about a unification:
    Both in Mike's and my implementation, an element p of the ring R
 essentially has an attribute _p, which is a 'usual' polynomial: p._p gives
 the value of p.
    In Mike's implementation, the ring R has and attribute P (a polynomial
 ring) so that p._p is guaranteed to be coercible into P, for any `p \in
 R`. This allows for usual arithmetic.
    In my implementation, it is possible that coercion does not provide
 arithmetic for p._p and q._p, for p and q in R. ''Only'' if it does not,
 then i explicitly construct a common parent for p._p and q._p. So, Mike's
 arithmetic is a special case of mine.

 Do we agree on the following technical details of a potential unification?
  * Compared with SymmetricPolynomialRing_class,
 InfinitePolynomialRing_class has one additional attribute `P`, and the
 arithmetic of InfinitePolynomial is just a special case of the arithmetic
 of SymmetricPolynomial. So, the init method might have an optional
 parameter `implementation`, and if this is 'dense' then the ring is
 initialized together with an attribute `P`. Otherwise, it is without `P`.
  * In the methods of InfinitePolynomial and SymmetricIdeal, we could test
 whether the underlying infinite ring has an attribute P. If it has (dense
 implementation), the methods choose your algorithm, otherwise they choose
 mine.

 In the end, we would have a dense and a sparse implementation, and the
 computation of symmetric Gröbner bases would be possible in ''both''
 cases.

 Do you think it works? How should the work be organised? Here? #5566? New
 ticket?

 Cheers
      Simon

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/5453#comment:29>
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