Hi David!

On Nov 26, 9:07 am, David Kohel <drko...@gmail.com> wrote:
> Rather I would say that "sparse" should be the default:
>
> P.<x> = InfinitePolynomialRing(QQ, implementation="sparse")

No. The main purpose of InfinitePolynomialRing is the computation of
symmetric Groebner bases, and simply it turned out in examples that
"sparse" is much slower in Groebner basis computations.

> Moreover, this syntax (and for gens, etc.) is inconsistent
> with PolynomialRing.

Why?
One possible way of creating a polynomial ring is
  sage: R.<x,y>=PolynomialRing(QQ)

So, my syntax is perfectly consistent.

>  The syntax:
>
> PolynomialRing(ring, integer, sparse=True)
>
> would be a more coherent, where integer=Set(ZZ) would give
> an infinite polynomial ring.

Mathematically, let G be the symmetric group of the natural numbers.
Then, PolynomialRing(QQ,x) is the free QQ(G) module with
generator x. And, by work of Aschenbrenner and Hillar, it is actually
noetherian as a QQ(G) module.

And this implies at least three reasons why I don't like your
suggestion.

1) An InfinitePolynomialRing is not just a polynomial ring with
infinitely many variables. This is a point against using the
PolynomialRing constructor for its creation.

2) The variables x[0],x[1],x[2],x[3],... are *not* considered the
generators of an infinite polynomial ring. You would have just *one*
generator x, and this one generator gives rise to an infinity of
variables. So, it simply makes not much sense to define an infinite
polynomial ring by an (infinite) list of variables.
Again, my syntax is consistent, since InfinitePolynomialRing(QQ,'x')
lists the *generators* of the object.

3) Sometimes one wants to have *several* generators of an infinite
polynomial ring, and one wants to chose a *name* for the generator.
Your suggestion does not address any of these points.

Cheers,
Simon

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to