Huom! Jotta tämän sivun kaavojen alaindeksit ja eksponentit näkyisivät oikein, HTML 3:n soveltuvin osin hallitseva selain on tarpeen. TKK:n atk-keskuksen koneissa sellaisia ovat Arena ja Netscape 2.0, jotka käynnistyvät komennoilla arena ja netscape2.

Muuttujien järjestyksen vaikutus

Vaihtamalla muuttujien järjestys myös siitä indusoituva leksikografinen järjestys muuttuu. Koska Groebnerin kanta riippuu käytetystä monomijärjestyksestä, saadaan seuraavassa näennäisesti erilaiset tulokset.

Esimerkki on lähdeteoksen [1] sivulta 119.

Lasketaan yhtälöparin xy = 4, y2=x3-1 ratkaisut sekä järjestyksellä, jossa x tulee ennen y:tä, että päin vastoin:


> clos31p119:=[x*y=4,y^2=x^3-1];
                                               2    3
                      clos31p119 := [x y = 4, y  = x  - 1]

> xyorder:=generalsolve(clos31p119,[x,y],[],verbose);

The Groebner bases are:
[[16*x-y^4-y^2, -64+y^5+y^3]]

    xyorder := [{

                                 5     3 4                        5     3 2
        x = 1/16 RootOf(- 64 + _Z  + _Z )  + 1/16 RootOf(- 64 + _Z  + _Z ) ,

                            5     3
        y = RootOf(- 64 + _Z  + _Z )}]

> yxorder:=generalsolve(clos31p119,[y,x],[],verbose);

The Groebner bases are:
[[-x^4+x+4*y, -16+x^5-x^2]]
                                      5     2 4                       5     2
 yxorder := [{y = 1/4 RootOf(- 16 + _Z  - _Z )  - 1/4 RootOf(- 16 + _Z  - _Z ),

                         5     2
     x = RootOf(- 16 + _Z  - _Z )}]


Saatiin siis erinäköiset tulokset. Koska teorian mukaan kummassakin tapauksessa saadaan yhtälöryhmän kaikki ratkaisut, niiden täytyy kuitenkin olla yhtä suuret.

Tämän varmistaminen vaatii hieman työtä, koska ratkaisuissa esiintyy viidennen asteen polynomien juuria, jotka eivät ole lausuttavissa tavallisten juurilausekkeiden avulla. Asiasta vakuututaan kuitenkin ehkä helpoimmin kysymällä Maplelta, ovatko vastausten 9-desimaaliset likiarvot samat:


> xyvalues:={allvalues(subs(xyorder[1],[x,y]),`d`)};

 xyvalues := {[ - 1.388225267 + 1.086227996 I,  - 1.787187856 - 1.398399476 I],

     [ - 1.388225267 - 1.086227996 I,  - 1.787187856 + 1.398399476 I],

     [.4847324692 + 1.617047362 I, .6803721712 - 2.269693273 I],

     [.4847324692 - 1.617047362 I, .6803721712 + 2.269693273 I],

     [1.806985595, 2.213631370]}

> yxvalues:={allvalues(subs(yxorder[1],[x,y]),`d`)};

     yxvalues := {[1.806985596, 2.213631371],

         [.4847324690 + 1.617047361 I, .6803721707 - 2.269693272 I],

         [.4847324690 - 1.617047361 I, .6803721707 + 2.269693272 I],

         [ - 1.388225267 + 1.086227997 I,  - 1.787187857 - 1.398399476 I],

         [ - 1.388225267 - 1.086227997 I,  - 1.787187857 + 1.398399476 I]}

> evalb(evalf(xyvalues,9)=evalf(yxvalues,9));

                                      true

Joissakin tapauksissa Groebner-kanta-menetelmä ei kuitenkaan ole kovin käytännöllinen lähestymistapa, koska Groebner-kannoista voi tulla hyvinkin suuria.
Kenrick Bingham 13.5.1996