ApCoCoA-1:Weyl.WeylMul: Difference between revisions
From ApCoCoAWiki
m ApCoCoA:Mul moved to ApCoCoA:Weyl.Mul |
m insert version info |
||
(26 intermediate revisions by 8 users not shown) | |||
Line 1: | Line 1: | ||
{{Version|1}} | |||
<command> | <command> | ||
<title>Weyl. | <title>Weyl.WeylMul</title> | ||
<short_description> | <short_description>Computes the product <tt>F*G</tt> of two Weyl polynomials, <tt>F</tt> and <tt>G</tt>, in normal form.</short_description> | ||
<syntax> | <syntax> | ||
Weyl. | Weyl.WeylMul(F:POLY,G:POLY):POLY | ||
</syntax> | </syntax> | ||
<description> | <description> | ||
<em>Warning:</em> This function is too slow for working with polynomials in large degree and large or zero characteristic. | |||
Use <ref>ApCoCoA-1:Weyl.WMul|Weyl.WMul</ref> instead for faster calculations. | |||
<par/> | |||
This method multiplies <tt>F</tt> and <tt>G</tt> and returns <tt>F*G</tt> as a Weyl polynomial in normal form. | |||
<itemize> | |||
<item>@param <em>F</em> A Weyl polynomial.</item> | |||
<item>@param <em>G</em> A Weyl polynomial.</item> | |||
<item>@result The product <tt>F*G</tt> as a Weyl polynomial in normal form.</item> | |||
</itemize> | |||
<example> | |||
A1::=QQ[x,d]; --Define appropriate ring | |||
Use A1; | |||
F:=x; G:=d; | |||
Weyl.WeylMul(F,G); | |||
xd | |||
------------------------------- | |||
Weyl.WeylMul(G,F); | |||
xd + 1 | |||
------------------------------- | |||
Weyl.WeylMul(Weyl.WeylMul(G,F)-2G,F^3+G); | |||
x^4d - 2x^3d + 4x^3 + xd^2 - 6x^2 - 2d^2 + d | |||
------------------------------- | |||
-- If you want to multiply Weyl polynomials that are not in normal form say for | |||
-- example F=d^2x^3-2dx^2+7 and G=2d^3x-5xd+3, then first convert them into normal | |||
-- form before multiplication. | |||
------------------------------- | |||
F:=Weyl.WNormalForm([[d^2,x^3],[-2d,x^2],[7]]); | |||
F; | |||
x^3d^2 + 4x^2d + 2x + 7 | |||
------------------------------- | |||
G:=Weyl.WNormalForm([[2d^3,x],[-5x,d],[3]]); | |||
G; | |||
2xd^3 - 5xd + 6d^2 + 3 | |||
------------------------------- | |||
Weyl.WeylMul(F,G); | |||
2x^4d^5 - 5x^4d^3 + 18x^3d^4 - 27x^3d^2 + 36x^2d^3 + 14xd^3 - 18x^2d + 12xd^2 - 35xd + 42d^2 + 6x + 21 | |||
------------------------------- | |||
Weyl.WeylMul(G,F); | |||
2x^4d^5 - 5x^4d^3 + 32x^3d^4 - 32x^3d^2 + 148x^2d^3 + 14xd^3 - 38x^2d + 216xd^2 - 35xd + 42d^2 - 4x + 72d + 21 | |||
------------------------------- | |||
Weyl.WeylMul(Weyl.WNormalForm([[d^2,x^3],[-2d,x^2],[7]]),Weyl.WNormalForm([[2d^3,x],[-5x,d],[3]])); | |||
2x^4d^5 - 5x^4d^3 + 18x^3d^4 - 27x^3d^2 + 36x^2d^3 + 14xd^3 - 18x^2d + 12xd^2 - 35xd + 42d^2 + 6x + 21 | |||
------------------------------- | |||
</example> | |||
</description> | </description> | ||
<seealso> | <seealso> | ||
<see>ApCoCoA-1:Weyl.WNormalForm|Weyl.WNormalForm</see> | |||
<see>ApCoCoA-1:Weyl.WMul|Weyl.WMul</see> | |||
<see>ApCoCoA-1:Weyl.WMult|Weyl.WMult</see> | |||
<see> | |||
<see> | |||
<see> | |||
</seealso> | </seealso> | ||
<wiki-category> | <types> | ||
<type>polynomial</type> | |||
</types> | |||
<key>weyl.weylmul</key> | |||
<key>weylmul</key> | |||
<wiki-category>ApCoCoA-1:Package_weyl</wiki-category> | |||
</command> | </command> |
Latest revision as of 10:40, 7 October 2020
This article is about a function from ApCoCoA-1. |
Weyl.WeylMul
Computes the product F*G of two Weyl polynomials, F and G, in normal form.
Syntax
Weyl.WeylMul(F:POLY,G:POLY):POLY
Description
Warning: This function is too slow for working with polynomials in large degree and large or zero characteristic.
Use Weyl.WMul instead for faster calculations.
This method multiplies F and G and returns F*G as a Weyl polynomial in normal form.
@param F A Weyl polynomial.
@param G A Weyl polynomial.
@result The product F*G as a Weyl polynomial in normal form.
Example
A1::=QQ[x,d]; --Define appropriate ring Use A1; F:=x; G:=d; Weyl.WeylMul(F,G); xd ------------------------------- Weyl.WeylMul(G,F); xd + 1 ------------------------------- Weyl.WeylMul(Weyl.WeylMul(G,F)-2G,F^3+G); x^4d - 2x^3d + 4x^3 + xd^2 - 6x^2 - 2d^2 + d ------------------------------- -- If you want to multiply Weyl polynomials that are not in normal form say for -- example F=d^2x^3-2dx^2+7 and G=2d^3x-5xd+3, then first convert them into normal -- form before multiplication. ------------------------------- F:=Weyl.WNormalForm([[d^2,x^3],[-2d,x^2],[7]]); F; x^3d^2 + 4x^2d + 2x + 7 ------------------------------- G:=Weyl.WNormalForm([[2d^3,x],[-5x,d],[3]]); G; 2xd^3 - 5xd + 6d^2 + 3 ------------------------------- Weyl.WeylMul(F,G); 2x^4d^5 - 5x^4d^3 + 18x^3d^4 - 27x^3d^2 + 36x^2d^3 + 14xd^3 - 18x^2d + 12xd^2 - 35xd + 42d^2 + 6x + 21 ------------------------------- Weyl.WeylMul(G,F); 2x^4d^5 - 5x^4d^3 + 32x^3d^4 - 32x^3d^2 + 148x^2d^3 + 14xd^3 - 38x^2d + 216xd^2 - 35xd + 42d^2 - 4x + 72d + 21 ------------------------------- Weyl.WeylMul(Weyl.WNormalForm([[d^2,x^3],[-2d,x^2],[7]]),Weyl.WNormalForm([[2d^3,x],[-5x,d],[3]])); 2x^4d^5 - 5x^4d^3 + 18x^3d^4 - 27x^3d^2 + 36x^2d^3 + 14xd^3 - 18x^2d + 12xd^2 - 35xd + 42d^2 + 6x + 21 -------------------------------
See also