Difference between revisions of "ApCoCoA-1:Weyl.WGB"
m (insert version info) |
|||
(8 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | <command> | + | {{Version|1}} |
+ | <command> | ||
<title>Weyl.WGB</title> | <title>Weyl.WGB</title> | ||
− | <short_description>Computes the Groebner basis of an ideal I in Weyl algebra <tt>A_n</tt>.</short_description> | + | <short_description>Computes the Groebner basis of an ideal <tt>I</tt> in Weyl algebra <tt>A_n</tt>.</short_description> |
<syntax> | <syntax> | ||
− | Weyl.WGB(I:IDEAL):LIST | + | Weyl.WGB(I:IDEAL, N:INT, L:LIST):LIST |
</syntax> | </syntax> | ||
<description> | <description> | ||
<em>Please note:</em> The function(s) explained on this page is/are using the <em>ApCoCoAServer</em>. You will have to start the ApCoCoAServer in order to use it/them. | <em>Please note:</em> The function(s) explained on this page is/are using the <em>ApCoCoAServer</em>. You will have to start the ApCoCoAServer in order to use it/them. | ||
<par/> | <par/> | ||
− | This function computes a Groebner Basis for an Ideal <tt>I = (f_1,f_2, ..., f_r)</tt> where every generator <tt>f_i</tt> should be a Weyl polynomial in | + | This function computes a Groebner Basis for an Ideal <tt>I = (f_1,f_2, ..., f_r)</tt> where every generator <tt>f_i</tt> should be a Weyl polynomial in its standard form. The Groebner basis is computed by using corresponding implementation in CoCoALib. If no integer value to an optional parameter N is given, the function will assign a default value of 1 to N and returns reduced Groebner basis of the ideal I by using an implementation in ApCoCoALib for the reduction process. One can also use another parameter L, a list of distinct positive integers corresponding to the number of indeterminate (1,2,..., 2n) to be eliminated while computing Groebner basis of the ideal I. |
<itemize> | <itemize> | ||
Line 14: | Line 15: | ||
<item>@return A Groebner Basis of the given ideal.</item> | <item>@return A Groebner Basis of the given ideal.</item> | ||
</itemize> | </itemize> | ||
+ | The following parameters are optional: | ||
+ | <itemize> | ||
+ | <item>@param <em>L</em> An optional list of distinct positive integers. The default value is empty list. With this parameter, one can pass the list positive integers corresponding to the indeterminates to be eliminated during GB computation.</item> | ||
+ | <item>@param <em>N</em> An optional integer 0 or 1. The default value is N:=1 for computing reduced GB. If N=0, complete GB is returned without reduction. </item> | ||
+ | </itemize> | ||
+ | The order of the optional parameters is not important. | ||
<example> | <example> | ||
Line 47: | Line 54: | ||
I3:=Ideal(x[1]^3d[2],x[2]*d[1]^2); | I3:=Ideal(x[1]^3d[2],x[2]*d[1]^2); | ||
+ | Set Indentation; | ||
− | Weyl.WGB(I3); | + | Weyl.WGB(I3,0); |
+ | ------------------------------- | ||
+ | -- CoCoAServer: computing Cpu Time = 0.016 | ||
+ | ------------------------------- | ||
+ | [ | ||
+ | x[2]d[1]^2, | ||
+ | x[1]^3d[2], | ||
+ | x[1]^3d[1]^2 + x[1]^2x[2]d[1]d[2] + x[1]x[2]d[2], | ||
+ | x[1]^2x[2]d[1]d[2]^2 + 2x[1]^2d[1]d[2] + x[1]x[2]d[2]^2 + 2x[1]d[2], | ||
+ | x[1]^2x[2]^2d[1]d[2] + x[1]x[2]^2d[2], | ||
+ | x[1]x[2]d[1]d[2]^2 + 2x[1]d[1]d[2] - 2x[2]d[2]^2 + 3d[2], | ||
+ | x[1]^2x[2]d[2]^2 + 2x[1]^2d[2], | ||
+ | x[1]x[2]^2d[1]d[2] - 2x[2]^2d[2], | ||
+ | x[1]^2x[2]^2d[2], | ||
+ | x[2]d[1]d[2]^2 + 2d[1]d[2], | ||
+ | x[1]x[2]d[2]^2 + 2x[1]d[2], | ||
+ | x[2]^2d[1]d[2], | ||
+ | x[1]x[2]^2d[2], | ||
+ | x[2]d[2]^2 + 2d[2], | ||
+ | x[2]^2d[2]] | ||
+ | ------------------------------- | ||
+ | -- Done. | ||
+ | ------------------------------- | ||
+ | Weyl.WGB(I3); --reduced GB will be returned | ||
+ | ------------------------------- | ||
-- CoCoAServer: computing Cpu Time = 0 | -- CoCoAServer: computing Cpu Time = 0 | ||
------------------------------- | ------------------------------- | ||
− | [x[2]^2d[2], x[2]d[2]^2 + 2d[2], x[1]^3d[1]^2 + x[1]^2x[2]d[1]d[2] + x[1]x[2]d[2], x[1]^3d[2], x[2]d[1]^2] | + | [ |
+ | x[2]^2d[2], | ||
+ | x[2]d[2]^2 + 2d[2], | ||
+ | x[1]^3d[1]^2 + x[1]^2x[2]d[1]d[2] + x[1]x[2]d[2], | ||
+ | x[1]^3d[2], | ||
+ | x[2]d[1]^2] | ||
+ | ------------------------------- | ||
+ | -- Done. | ||
------------------------------- | ------------------------------- | ||
+ | Unset Indentation; | ||
</example> | </example> | ||
+ | <example> | ||
+ | WA::=QQ[u,w,t,x,v[1..2],d,y],Elim(u);Use WA; | ||
+ | I:=Ideal(ut - x^3 + 9, 3wx^2d + y, uw - 1); | ||
+ | GbI:=Weyl.WGB(I); | ||
+ | -- CoCoAServer: computing Cpu Time = 0.016 | ||
+ | ------------------------------- | ||
+ | GbI; | ||
+ | [uw - 1, ut - x^3 + 9, tx^2d + 1/3x^3y + x^2 - 3y, wd + 1/9td + 1/27xy + 1/9, uy + 3x^2d] | ||
+ | ------------------------------- | ||
+ | GbI_elim:=Weyl.WGB(I,[1,2]); --eliminate u and w | ||
+ | -- CoCoAServer: computing Cpu Time = 0.031 | ||
+ | ------------------------------- | ||
+ | GbI_elim; | ||
+ | [ut - x^3 + 9, uw - 1, wx^3 - 9w - t, wd + 1/9td + 1/27xy + 1/9, tx^2d + 1/3x^3y + x^2 - 3y, uy + 3x^2d] | ||
+ | ------------------------------- | ||
+ | GbI_elim:=Weyl.WGB(I,[3,7]); --eliminate t and d | ||
+ | -- CoCoAServer: computing Cpu Time = 0.015 | ||
+ | ------------------------------- | ||
+ | GbI_elim; | ||
+ | [uw - 1, ut - x^3 + 9, wx^3 - 9w - t, wx^2d + 1/3y, uy + 3x^2d] | ||
+ | ------------------------------- | ||
+ | --the 2nd optional parameter L can have max. of 8 = NumIndets() integers from 1 to 8 | ||
+ | </example> | ||
+ | |||
</description> | </description> | ||
<seealso> | <seealso> | ||
− | <see> | + | <see>ApCoCoA-1:Weyl.WStandardForm|Weyl.WStandardForm</see> |
− | <see>Introduction to | + | <see>ApCoCoA-1:Weyl.WRGBS|Weyl.WRGBS</see> |
− | <see> | + | <see>ApCoCoA-1:Weyl.TwoWGB|Weyl.TwoWGB</see> |
+ | <see>ApCoCoA-1:Introduction to Groebner Basis in CoCoA|Introduction to Groebner Basis in CoCoA</see> | ||
+ | <see>ApCoCoA-1:Introduction to CoCoAServer|Introduction to CoCoAServer</see> | ||
</seealso> | </seealso> | ||
<types> | <types> | ||
Line 66: | Line 132: | ||
</types> | </types> | ||
<key>weyl.wgb</key> | <key>weyl.wgb</key> | ||
+ | <key>Weyl.WGB</key> | ||
<key>wgb</key> | <key>wgb</key> | ||
− | <wiki-category>Package_weyl</wiki-category> | + | <wiki-category>ApCoCoA-1:Package_weyl</wiki-category> |
</command> | </command> |
Latest revision as of 10:38, 7 October 2020
This article is about a function from ApCoCoA-1. |
Weyl.WGB
Computes the Groebner basis of an ideal I in Weyl algebra A_n.
Syntax
Weyl.WGB(I:IDEAL, N:INT, L:LIST):LIST
Description
Please note: The function(s) explained on this page is/are using the ApCoCoAServer. You will have to start the ApCoCoAServer in order to use it/them.
This function computes a Groebner Basis for an Ideal I = (f_1,f_2, ..., f_r) where every generator f_i should be a Weyl polynomial in its standard form. The Groebner basis is computed by using corresponding implementation in CoCoALib. If no integer value to an optional parameter N is given, the function will assign a default value of 1 to N and returns reduced Groebner basis of the ideal I by using an implementation in ApCoCoALib for the reduction process. One can also use another parameter L, a list of distinct positive integers corresponding to the number of indeterminate (1,2,..., 2n) to be eliminated while computing Groebner basis of the ideal I.
@param I An ideal in the Weyl algebra.
@return A Groebner Basis of the given ideal.
The following parameters are optional:
@param L An optional list of distinct positive integers. The default value is empty list. With this parameter, one can pass the list positive integers corresponding to the indeterminates to be eliminated during GB computation.
@param N An optional integer 0 or 1. The default value is N:=1 for computing reduced GB. If N=0, complete GB is returned without reduction.
The order of the optional parameters is not important.
Example
A1::=QQ[x,d]; --Define appropriate ring Use A1; I:=Ideal(x,d); -- Now start ApCoCoA server for executing next command Weyl.WGB(I); -- CoCoAServer: computing Cpu Time = 0 ------------------------------- [1] ------------------------------- -- Note that Groebner basis you obtained is minimal.
Example
A2::=QQ[x[1..2],y[1..2]]; Use A2; I1:=Ideal(x[1]^7,y[1]^7); Weyl.WGB(I1); -- CoCoAServer: computing Cpu Time = 0.094 ------------------------------- [1] -------------------------------
Example
W3::=ZZ/(7)[x[1..3],d[1..3]]; Use W3; I2:=Ideal(x[1]^7,d[1]^7); --is a 2-sided ideal in W3 Weyl.WGB(I2); --ApCoCoAServer should be running -- CoCoAServer: computing Cpu Time = 0 ------------------------------- [x[1]^7, d[1]^7] ------------------------------- I3:=Ideal(x[1]^3d[2],x[2]*d[1]^2); Set Indentation; Weyl.WGB(I3,0); ------------------------------- -- CoCoAServer: computing Cpu Time = 0.016 ------------------------------- [ x[2]d[1]^2, x[1]^3d[2], x[1]^3d[1]^2 + x[1]^2x[2]d[1]d[2] + x[1]x[2]d[2], x[1]^2x[2]d[1]d[2]^2 + 2x[1]^2d[1]d[2] + x[1]x[2]d[2]^2 + 2x[1]d[2], x[1]^2x[2]^2d[1]d[2] + x[1]x[2]^2d[2], x[1]x[2]d[1]d[2]^2 + 2x[1]d[1]d[2] - 2x[2]d[2]^2 + 3d[2], x[1]^2x[2]d[2]^2 + 2x[1]^2d[2], x[1]x[2]^2d[1]d[2] - 2x[2]^2d[2], x[1]^2x[2]^2d[2], x[2]d[1]d[2]^2 + 2d[1]d[2], x[1]x[2]d[2]^2 + 2x[1]d[2], x[2]^2d[1]d[2], x[1]x[2]^2d[2], x[2]d[2]^2 + 2d[2], x[2]^2d[2]] ------------------------------- -- Done. ------------------------------- Weyl.WGB(I3); --reduced GB will be returned ------------------------------- -- CoCoAServer: computing Cpu Time = 0 ------------------------------- [ x[2]^2d[2], x[2]d[2]^2 + 2d[2], x[1]^3d[1]^2 + x[1]^2x[2]d[1]d[2] + x[1]x[2]d[2], x[1]^3d[2], x[2]d[1]^2] ------------------------------- -- Done. ------------------------------- Unset Indentation;
Example
WA::=QQ[u,w,t,x,v[1..2],d,y],Elim(u);Use WA; I:=Ideal(ut - x^3 + 9, 3wx^2d + y, uw - 1); GbI:=Weyl.WGB(I); -- CoCoAServer: computing Cpu Time = 0.016 ------------------------------- GbI; [uw - 1, ut - x^3 + 9, tx^2d + 1/3x^3y + x^2 - 3y, wd + 1/9td + 1/27xy + 1/9, uy + 3x^2d] ------------------------------- GbI_elim:=Weyl.WGB(I,[1,2]); --eliminate u and w -- CoCoAServer: computing Cpu Time = 0.031 ------------------------------- GbI_elim; [ut - x^3 + 9, uw - 1, wx^3 - 9w - t, wd + 1/9td + 1/27xy + 1/9, tx^2d + 1/3x^3y + x^2 - 3y, uy + 3x^2d] ------------------------------- GbI_elim:=Weyl.WGB(I,[3,7]); --eliminate t and d -- CoCoAServer: computing Cpu Time = 0.015 ------------------------------- GbI_elim; [uw - 1, ut - x^3 + 9, wx^3 - 9w - t, wx^2d + 1/3y, uy + 3x^2d] ------------------------------- --the 2nd optional parameter L can have max. of 8 = NumIndets() integers from 1 to 8
See also
Introduction to Groebner Basis in CoCoA