Научная статья на тему 'Parallelized computation of extended universal Gröbner basis'

Parallelized computation of extended universal Gröbner basis Текст научной статьи по специальности «Математика»

CC BY
82
33
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
UNIVERSAL GRöBNER BASIS / УНИВЕРСАЛЬНЫЙ БАЗИС ГРЁБНЕРА / ПОЛИНОМИАЛЬНЫЙ ИДЕАЛ / ДИАГРАММА ЮНГА / POLYNOMIAL IDEAL / YOUNG DIAGRAM

Аннотация научной статьи по математике, автор научной работы — Pavlov Dmitry Alekseevich

The article presents an algorithm to calculate Extended Universal Gröbner Basis (EUGB), working on wide ränge of polynomial ideals. The EUGB(А) of a polynomial ideal А is defined as a finite [1] set of polynomials {fi }whose Young diagrams Y(fi) meet the following condition: dim(£(Y(fi))nA) = l (where £ denotes the span of a set of polynomials in the quotient algebra of the ideal). It is known that the EUGB contains the Universal Gröbner Basis. The algorithm is based on geometry of Young diagrams in Zd+, and finds the polynomials of EUGB mostly independently, which makes it able to run in parallel. An outline of the parallel Version of the algorithm is given.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Parallelized computation of extended universal Gröbner basis»

PARALLELIZED COMPUTATION OF EXTENDED UNIVERSAL GROBNER BASIS

© Dmitry Alekseevich Pavlov

Saint-Petersburg State Polytechnical University, Polytechnicheskaya 29, St.-Petersburg, 195251, Russia, Post-graduate Student of Applied Mathematics Department,

e-mail: dmitrypavlov@gmail.eom

Key words: universal Grobner basis; polynomial ideal; Young diagram.

The article presents an algorithm to calculate Extended Universal Grobner Basis (EUGB), working on wide range of polynomial ideals. The EUGB( A) of a polynomial ideal A is defined as a finite [1] set of po lvnomials {f} whose Young diagrams Y (fi) meet the following condition: dim(L(Y(/¿))nA) = 1 (where L denotes the span of a set of polynomials in the quotient algebra of the ideal). It is known that the EUGB contains the Universal Grobner Basis. The algorithm is based on geometry of Young diagrams in 7Ld+ , and finds the polynomials of EUGB mostly independently, which makes it able to run in parallel. An outline of the parallel version of the algorithm is given.

1 Notation and Background

Let K[x\,..., xd] be a polynomial ring over a field K in d variables X = {x\,..., xd} , The space of monomials in these variables can be trivially identified with the lattice Z^0, Here and after, we make no difference between the monomials and integer vectors with nonnegative coordinates—the elements of the lattice.

A polynomial ideal [2], generated by polynomials (f1,..., fs), is defined as the following infinite set of polynomials from K[x1,... ,xd]:

(fi,... fs) = j ^ hifi : hi,... ,hs e K [xi,... ,xd]

I i=1

It is known that the ideal can have more than one possible set of generators, each of which is called a basis of the ideal [2].

Let y be a total order on Z^0 , It is called admissible, when it meets the following condition:

• a y 0 for each a = 0 ;

• If a y P , then a + 7 y ft + 7 for each 7 e Z^0 ,

We denote as LT^(f) the leading term of the polynomial f, that is, the term whose

y

Let A be a polynomial ideal in K[x-\^,... ,xd] and y be an admissible monomial ordering. A finite set of polynomials G e A is called a Grobner basis GB^(A) of A, if the leading term

A

({LTV(gi) : g, e G}) = ({LT_(/) : f e A}).

G A A

and second, every polynomial g e A has a normal form r, defined as a result of polynomial g G y

g = hifi +-----+ hsfs + r, hi, r e K[xi,... ,xd].

By the definition of polynomial reduction, no term of r is a multiple of any of LT^(fi) (*).

2 Coideals, quotient algebra, and FGLM algorithm

The nondivisibility condition (*) has a convenient geometrical interpretation: all monomials of r are positioned “under” the monomial ideal, formed by {LT(fi), fi e GB^(A)} , That is, they belong to the coideal Co(GBy(A)) = Z^0\({LT(fi)}),

All possible normal forms of polynomials of A w.r.t. GB^(A) ^^tog to L^o^B^(A))), where L denotes the span of a set of polynomials in the quotient algebra of the ideal. We denote it Qy (A), as it actually determines the quotient algebra of the ideal A (fig, 2):

Qy(A) - K [xi,...,xd]/A.

Fig. 1. The quotient algebra of an ideal generated by {y4 + xy, x2y2 + y, x3y — y3} , is in turn generated by monomials, underlying the dashed area

We call monomials (not necessarily finite set) linearly independent w.r.t. A, if the

intersection of their span with A is also zero:

L({m*}n A) = {0}.

AA

QyA n A = {0}.

Hence, the monomials from the coideal Co(GB^(A)) form a linearly independent set. But as soon as we add to this set the leading monomial of any polynomial of the Grobner basis, we have this polynomial within the linear span of the set:

C(Qy(A) ULT(fi)) n A = {fi),

and the dimension of this span is obviously equal to 1:

dim(L(Q^(A) U LT(fi)) n A) = 1.

This way of Grobner basis polynomials construction is used in FGLM [4] algorithm, which computes a Grobner basis for an arbitrary monomial order y', given another Grobner basis for another monomial order y , Basically, the FGLM algorithms incrementally builds the coideal (starting from zero monomial), following the monomial order y', until the monomials are not linearly independent. After they become linearly dependent, the corresponding polynomial of the Grobner basis it calculated, and then the algorithms steps back and goes on, never adding that “linearly dependent” monomial again.

The FGLM algorithm has a limitation: it accepts only zero-dimensional polynomial ideals— the ideals whose quotient algebra is generated with a finite number of monomials. In another words, the coideal Co(GB^(A)) in this case is finite, i.e. zero-dimensional.

3 Universal Grobner basis and Young diagrams

We denote as UGB(A) the universal Grobner basis of the ideal A: the union of all possible Grobner basiss with all admissible monomial orders, Eobbiano [3] has shown that the UGB is always finite.

We define a d-dimensional Young diagram as a subset of Z^0 lattice, with the only requirement that if it contains some monomial m, it must also contain all divisors of m.

We call a Young diagram of a polynomial r G A the one formed by the terms (monomials) of r, that is, a union of monomials of r and all their divisors (fig, 3),

4 xy4

3 3 x3y

y2

x6y

4 x4

Fig. 2. Young diagram o:

? polynomial 5xy4 + 2x3y3 + xy2 — x6y + 8x'

For every polynomial f E UGB(A) the following condition is hold [1]:

dim(L(Y(f) n A)) = 1. (1)

f (A)

this condition is easier to check, as it does not imply any admissible monomial order,

(A) A

EUGB(A) = {f E A : dim(L(Y(f) n A)) = 1}.

The EUGB(A) is always finite [1]. Clearly UGB(A) C EUGB(A). Unlike the finding of ( A) ( A)

4 Finding EUGB(A)

The described algorithm searches for Young diagrams whose spans have a one-dimensional

A

(A)

The following global variables are used:

• *basis* — an arbitrary Grobner basis to start with; for example, a Grobner basis w.r.t. degrevlex monomial order. It is needed for checking the linear independence of the monomials of Young diagrams,

defined by a list of nondivisor monomials (i.e. “corners” of the diagram. At the start, the list of diagrams contain the Young diagrams of the polynomials of the *basis*. (Although it could be empty, but then the procedure would have taken more time.)

than MAX-SIZE, At the start, this list is empty.

The following helper functions are mentioned but not listed:

divisors of any other monomials of this polynomial, of diagram’s“corners”. are multiples of corner,

sequence and the ideal, generated by basis. If the intersection is not zero, it is assumed 1-dimensional, and the resulting generating polynomial is returned,

of the outer.

origin.

As the first step, the algorithm outputs the polynomials of the given *basis*, which clearly meet the condition (1), and saves the diagrams of these polynomials. After that, the monomial coideals not containing the found *diagrams* are enumerated,

find-eugb Obasis*) :

^diagrams* ^ {} for all poly E *basis* do yield poly

^diagrams* ^ *diagrams*U nondivisors(poly) end for repeat

oldsize = size(*diagrams*) process-coidealsOdiagrams*) until size(*diagrams*) = oldsize

In order to prevent duplicating diagrams in the output, each diagram is being searched for in a monomial coideal, which does not contain at least one “corner” of already found ^diagrams*. Such a coideal (there can be many of them, but not infinitely many) is computed by the recursive procedure process-coideals. Once it is found, the find-polynomial function is invoked for this coideal,

{}

if diagrams = {} then

find-polynomial(coideal) else

diagram ^ any of the diagrams if contains-divisors-of(coideal, diagram) then process-coideals(diagrams\diagram , coideal) else

E

new-coideal ^ cornerU remove-multiples-of(coideal, corner)

\

end for end if end if

The next procedure accepts a coideal and grows a Young diagram inside it, starting from an empty diagram, and adding monomials one-bv-one, until the condition 1 is met. On each step, from all monomials (“dimples”) available for addition, the one closest to the origin is selected. As the coideal may be infinite (especially in case we are dealing with a non-zero-dimension polynomial ideal), the procedure is forced to stop once the size of the coideal reaches MAX-SIZE,

find-polynomial (coideal):

E

if coideal-belongs(coideal, bad-coideal) then return

end if end for

seq^ {} dimples ^ {0} while dimples = {} do if |seq| > MAX-SIZE then

print Linear-dependent Young diagram not found in coideal.

=U

return end if

new-monom ^ closest-to-origin(dimples) seq ^ seq U new-monom

poly ^ intersect-with-ideal(seq, *basis*) if poly = 1 then

^diagrams* ^ ^diagrams*U support(poly) yield poly end if

dimples ^ update-dimples(new-monom, dimples\new-monom) end while

The helper procedure update-dimples adds a new “dimple” to the list of available monomials for the next step of diagram growing, and removes its divisors from the list.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

update-dimples (dimples new-cell): for all v E X do

if fie E dimples : c -< v ■ new-cell then dimples ^dimples U v ■ new-cell end if end for

return dimples

(A)

are of size less than MAX-SIZE. The size limit can be discarded for zero-dimensional ideals, where the endless growing of a diagram of linearly independent monomials is theoretically impossible. On all other ideals, the size limit allows to avoid endless loops, but can lead to loss of some EUGB polynomials with too big Young diagrams.

Unfortunately, there is no possibility to give any reasonable estimation for MAX-SIZE that would guarantee the generation of entire EUGB. Obviously, the size of a Young diagram of a polynomial can not be less than its degree; and the best known estimations on the degree of Grobner basis elements are 22 for lex ordering [5] and k2 + 1 for grevlex ordering [6] (where k is the maximum degree amongst the generators of the ideal).

5 Parallelizing the EUGB finding algorithm

A lot of operations in the algorithm described above can be run in parallel. While process-coideals in the original algorithms outline is called step-by-step, with each next step having one more diagram, it is possible first to calculate a few coideals to search in, then search for EUGB polynomials in each coideal independently, using a separate working thread. The following statements should be considered when implementing the parallelized EUGB finding:

• It is possible that the parallel algorithm would find the same Young diagrams simultaneously in different computing threads. While this overhead is not likely to be completely eliminated, some techniques would help (see below).

found so far. Also, the less monomials the “current” processed coideals have in common, the better.

following principle should be used when selecting the next monomial for diagram increment (in addition to closest-to-origin): once the monomial got into the diagram being built by a working thread, it is better not to add this monomial to a diagram being build in a neighbor working thread; this should be done only if no other options are left.

polynomials, the control flow should go back to the main thread, where the results are stored, the duplicates are eliminated, and the new portion of monomial coideals is calculated for the next parallel computation step.

6 Acknowledgements

Twish to thank Niekolav Vasiliev for encouraging and supervising mv work on this topic.

Список литературы

1. Vasiliev N. Monomial Orderings, Young Diagrams and Groebner Bases // Proceedings of the International Conference “Computer Algebra in Scientific Computing” (CASC). Technical University of München. München, 2003.

2. Cox D.A., Little J.B., O’Shea D. Ideals, Varieties, and Algorithms // Introduction to Computational Algebraic Geometry and Commutative Algebra. New York: Springer, 2007.

3. Robbiano L. Term ordering on the polynomial ring // Proceedings of EUEOCAL ’85 (Linz), Lecture Notes in Computer Science. 1985. V. 204. P. 513-517.

4. Faugere J. C., Gianni P., hazard D., Mora T. Efficient computation of zero-dimensional Grobner bases by change of ordering j j J. of Symbolic Computation. 1993. V. 16. Issue 4.

P. 329-344.

5. Mayr E., Meyer A. The complexity of the word problem for commutative semigroups and polynomial ideals // Adv. Math. 1982. V. 46. P. 305-329.

6. hazard D. Grobner Bases, Gaussian elimination and resolution of systems of algebraic equations // Proceedings of the European Computer Algebra Conference on Computer Algebra (EUEOCAL). London: Springer-Verlag, 1983. P. 146-156.

Accepted for publication 7.06.2010.

ПАРАЛЛЕЛЬНОЕ ВЫЧИСЛЕНИЕ РАСШИРЕННЫХ УНИВЕРСАЛЬНЫХ БАЗИСОВ ГРЁБНЕРА

© Дмитрий Алексеевич Павлов

Санкт-Петербургский государственный политехнический университет, Политехническая, 29, Санкт-Петербург, 195251, Россия, аспирант кафедры прикладной математики,

e-mail: dmitry.pavlov@gmail.com

Ключевые слова: универсальный базис Грёбнера; полиномиальный идеал; диаграмма Юнга.

В статье представлен алгоритм вычисления расширенного универсального базиса Грёбнера (EUGB), работающий на широком классе полиномиальных идеалов.

EUGB( A) полиномиального идеала A определён как конечное [1] множество полиномов fi, чьи диаграммы Юнга Y(fi) удовлетворяют следующему условию: dim(L(Y(fi)) П A) = 1 (где L обозначает линейную оболочку множества полиномов в факторалгебре идеала). Известно, что EUGB содержит универсальный базис Грёбнера идеала. Алгоритм основан на геометрических свойствах диаграмм Юнга в Z+, и элементы EUGB находятся им по большей части независимо друг от друга, что позволяет вычислять их параллельно. В последней части статьи дана схема параллелизации алгоритма.

i Надоели баннеры? Вы всегда можете отключить рекламу.