Difference between revisions of "ApCoCoA-1:Weyl.WNR"
(Change Wiki-category) |
m (insert version info) |
||
(9 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | <command> | + | {{Version|1}} |
+ | <command> | ||
<title>Weyl.WNR</title> | <title>Weyl.WNR</title> | ||
− | <short_description>Computes normal remainder of a Weyl polynomial F with respect | + | <short_description>Computes the normal remainder of a Weyl polynomial <tt>F</tt> with respect |
− | to a polynomial | + | to a polynomial or a list of Weyl polynomials using corresponding implementation in ApCoCoALib.</short_description> |
<syntax> | <syntax> | ||
− | Weyl.WNR(F:POLY,G:LIST | + | Weyl.WNR(F:POLY,G:POLY):POLY |
+ | Weyl.WNR(F:POLY,G:LIST):POLY | ||
</syntax> | </syntax> | ||
<description> | <description> | ||
− | Computes normal remainder of a Weyl polynomial F with respect to a polynomial | + | <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. |
− | If | + | <par/> |
+ | Computes the normal remainder of a Weyl polynomial <tt>F</tt> with respect to a polynomial <tt>G</tt> or a set of polynomials in the list <tt>G</tt>. | ||
+ | If <tt>G</tt> is Groebner basis then this function is used for ideal membership problem. That is, a Weyl polynomial P belongs to an ideal I iff <tt>Weyl.WNR(P,Weyl.WGB(I))=0</tt>. | ||
− | + | <itemize> | |
+ | <item>@param <em>F</em> A Weyl polynomial in normal form.</item> | ||
+ | <item>@param <em>G</em> A Weyl polynomial or a list of Weyl polynomials.</item> | ||
+ | <item>@return The remainder as a Weyl polynomial using normal remainder algorithm in Weyl algebra <tt>A_n</tt>.</item> | ||
+ | </itemize> | ||
− | + | <em>Note:</em> All polynomials that are not in normal form should be first converted into normal form using <ref>ApCoCoA-1:Weyl.WNormalForm|Weyl.WNormalForm</ref>, otherwise you may get unexpected results. | |
− | |||
<example> | <example> | ||
W3::=ZZ/(7)[x[1..3],d[1..3]]; | W3::=ZZ/(7)[x[1..3],d[1..3]]; | ||
Line 23: | Line 30: | ||
L:=[F1,F2,F3]; | L:=[F1,F2,F3]; | ||
Weyl.WNR(F1,L); | Weyl.WNR(F1,L); | ||
+ | ------------------------------- | ||
+ | -- CoCoAServer: computing Cpu Time = 0 | ||
+ | ------------------------------- | ||
0 | 0 | ||
+ | ------------------------------- | ||
+ | -- Done. | ||
------------------------------- | ------------------------------- | ||
Weyl.WNR(F1,Gens(Ideal(F2,F3))); | Weyl.WNR(F1,Gens(Ideal(F2,F3))); | ||
+ | ------------------------------- | ||
+ | -- CoCoAServer: computing Cpu Time = 0 | ||
+ | ------------------------------- | ||
-d[1]^3d[2]^5d[3]^5 + x[2]^5 | -d[1]^3d[2]^5d[3]^5 + x[2]^5 | ||
+ | ------------------------------- | ||
+ | -- Done. | ||
------------------------------- | ------------------------------- | ||
Weyl.WNR(x[2]^5-d[1]^3,L); | Weyl.WNR(x[2]^5-d[1]^3,L); | ||
+ | ------------------------------- | ||
+ | -- CoCoAServer: computing Cpu Time = 0 | ||
+ | ------------------------------- | ||
x[2]^5 - d[1]^3 | x[2]^5 - d[1]^3 | ||
+ | ------------------------------- | ||
+ | -- Done. | ||
------------------------------- | ------------------------------- | ||
Weyl.WNR(x[2]^5-d[1]^3d[2]^7d[3]^6,F1); | Weyl.WNR(x[2]^5-d[1]^3d[2]^7d[3]^6,F1); | ||
+ | |||
+ | ------------------------------- | ||
+ | -- CoCoAServer: computing Cpu Time = 0 | ||
+ | ------------------------------- | ||
-x[2]^5d[2]^2d[3] - 3x[2]^4d[2]d[3] + x[2]^5 + x[2]^3d[3] | -x[2]^5d[2]^2d[3] - 3x[2]^4d[2]d[3] + x[2]^5 + x[2]^3d[3] | ||
+ | ------------------------------- | ||
+ | -- Done. | ||
------------------------------- | ------------------------------- | ||
</example> | </example> | ||
− | < | + | <example> |
+ | Use A1::=QQ[x,d]; | ||
+ | Weyl.WNR(xd,d); | ||
+ | |||
+ | -- CoCoAServer: computing Cpu Time = 0 | ||
+ | ------------------------------- | ||
+ | 0 | ||
+ | ------------------------------- | ||
+ | -- Done. | ||
+ | ------------------------------- | ||
+ | Weyl.WNR(xd,x); | ||
+ | |||
+ | -- CoCoAServer: computing Cpu Time = 0 | ||
+ | ------------------------------- | ||
+ | -1 | ||
+ | ------------------------------- | ||
+ | -- Done. | ||
+ | ------------------------------- | ||
+ | </example> | ||
+ | |||
</description> | </description> | ||
<seealso> | <seealso> | ||
− | <see>Weyl.WNormalForm</see> | + | <see>ApCoCoA-1:Weyl.WNormalForm|Weyl.WNormalForm</see> |
+ | <see>ApCoCoA-1:Weyl.WNormalRemainder|Weyl.WNormalRemainder</see> | ||
</seealso> | </seealso> | ||
<types> | <types> | ||
− | <type> | + | <type>apcocoaserver</type> |
+ | <type>polynomial</type> | ||
</types> | </types> | ||
<key>weyl.wnr</key> | <key>weyl.wnr</key> | ||
− | <wiki-category>Package_weyl</wiki-category> | + | <key>Weyl.WNR</key> |
+ | <key>WNR</key> | ||
+ | <wiki-category>ApCoCoA-1:Package_weyl</wiki-category> | ||
</command> | </command> |
Latest revision as of 10:39, 7 October 2020
This article is about a function from ApCoCoA-1. |
Weyl.WNR
Computes the normal remainder of a Weyl polynomial F with respect
to a polynomial or a list of Weyl polynomials using corresponding implementation in ApCoCoALib.
Syntax
Weyl.WNR(F:POLY,G:POLY):POLY Weyl.WNR(F:POLY,G:LIST):POLY
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.
Computes the normal remainder of a Weyl polynomial F with respect to a polynomial G or a set of polynomials in the list G.
If G is Groebner basis then this function is used for ideal membership problem. That is, a Weyl polynomial P belongs to an ideal I iff Weyl.WNR(P,Weyl.WGB(I))=0.
@param F A Weyl polynomial in normal form.
@param G A Weyl polynomial or a list of Weyl polynomials.
@return The remainder as a Weyl polynomial using normal remainder algorithm in Weyl algebra A_n.
Note: All polynomials that are not in normal form should be first converted into normal form using Weyl.WNormalForm, otherwise you may get unexpected results.
Example
W3::=ZZ/(7)[x[1..3],d[1..3]]; Use W3; F1:=-d[1]^3d[2]^5d[3]^5+x[2]^5; F2:=-3x[2]d[2]^5d[3]^5+x[2]d[1]^3; F3:=-2d[1]^4d[2]^5-x[1]d[2]^7+x[3]^3d[3]^5; L:=[F1,F2,F3]; Weyl.WNR(F1,L); ------------------------------- -- CoCoAServer: computing Cpu Time = 0 ------------------------------- 0 ------------------------------- -- Done. ------------------------------- Weyl.WNR(F1,Gens(Ideal(F2,F3))); ------------------------------- -- CoCoAServer: computing Cpu Time = 0 ------------------------------- -d[1]^3d[2]^5d[3]^5 + x[2]^5 ------------------------------- -- Done. ------------------------------- Weyl.WNR(x[2]^5-d[1]^3,L); ------------------------------- -- CoCoAServer: computing Cpu Time = 0 ------------------------------- x[2]^5 - d[1]^3 ------------------------------- -- Done. ------------------------------- Weyl.WNR(x[2]^5-d[1]^3d[2]^7d[3]^6,F1); ------------------------------- -- CoCoAServer: computing Cpu Time = 0 ------------------------------- -x[2]^5d[2]^2d[3] - 3x[2]^4d[2]d[3] + x[2]^5 + x[2]^3d[3] ------------------------------- -- Done. -------------------------------
Example
Use A1::=QQ[x,d]; Weyl.WNR(xd,d); -- CoCoAServer: computing Cpu Time = 0 ------------------------------- 0 ------------------------------- -- Done. ------------------------------- Weyl.WNR(xd,x); -- CoCoAServer: computing Cpu Time = 0 ------------------------------- -1 ------------------------------- -- Done. -------------------------------
See also