Difference between revisions of "ApCoCoA-1:NC.KernelOfHomomorphism"

From ApCoCoAWiki
m (replaced <quotes> tag by real quotes)
 
(5 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 +
{{Version|1}}
 
<command>
 
<command>
 
<title>NC.KernelOfHomomorphism</title>
 
<title>NC.KernelOfHomomorphism</title>
Line 4: Line 5:
 
The kernel of an algebra homomorphism.
 
The kernel of an algebra homomorphism.
 
</short_description>
 
</short_description>
 +
<syntax></syntax>
 
<description>
 
<description>
 
<em>Proposition (Kernel of an Algebra Homomorphism):</em> Let <tt>I</tt> be a two-sided ideal in the free monoid ring <tt>K&lt;x[1],...,x[n]&gt;</tt>, and let <tt>J</tt> be a two-sided ideal in the free monoid ring <tt>K&lt;y[1],...,y[m]&gt;</tt>. Moreover, let <tt>g_1,...,g_m</tt> be polynomials in <tt>K&lt;x[1],...,x[n]&gt;</tt>, and let <tt>phi: K&lt;y[1],...,y[m]&gt;/J--&gt;K&lt;x[1],...,x[n]&gt;/I</tt> be a homomorphism of <tt>K</tt>-algebras defined by <tt>phi(y[i]+J)=g_i+I</tt> for <tt>i=1,...,m</tt>. We form the free monoid ring <tt>K&lt;x[1],...,x[n],y[1],...,y[m]&gt;</tt>, and let <tt>D</tt> be the diagonal ideal generated by the set <tt>{y[1]-g_1,...,y[m]-g_m}</tt>. Then we have <tt>ker(phi)=((D+J) intersets K&lt;y[1],...,y[m]&gt;)+I</tt>.
 
<em>Proposition (Kernel of an Algebra Homomorphism):</em> Let <tt>I</tt> be a two-sided ideal in the free monoid ring <tt>K&lt;x[1],...,x[n]&gt;</tt>, and let <tt>J</tt> be a two-sided ideal in the free monoid ring <tt>K&lt;y[1],...,y[m]&gt;</tt>. Moreover, let <tt>g_1,...,g_m</tt> be polynomials in <tt>K&lt;x[1],...,x[n]&gt;</tt>, and let <tt>phi: K&lt;y[1],...,y[m]&gt;/J--&gt;K&lt;x[1],...,x[n]&gt;/I</tt> be a homomorphism of <tt>K</tt>-algebras defined by <tt>phi(y[i]+J)=g_i+I</tt> for <tt>i=1,...,m</tt>. We form the free monoid ring <tt>K&lt;x[1],...,x[n],y[1],...,y[m]&gt;</tt>, and let <tt>D</tt> be the diagonal ideal generated by the set <tt>{y[1]-g_1,...,y[m]-g_m}</tt>. Then we have <tt>ker(phi)=((D+J) intersets K&lt;y[1],...,y[m]&gt;)+I</tt>.
 
<example>
 
<example>
 
Use QQ[x[1..2],y[1..2],a,b];
 
Use QQ[x[1..2],y[1..2],a,b];
NC.SetOrdering(<quotes>ELIM</quotes>); -- we want to eliminate x[1],y[1],x[2] and y[2]
+
NC.SetOrdering("ELIM"); -- we want to eliminate x[1..2],y[1..2]
 
-- Group ring Q&lt;a,b&gt;/&lt;F11,F12,F13&gt; with the triangle group of order 576
 
-- Group ring Q&lt;a,b&gt;/&lt;F11,F12,F13&gt; with the triangle group of order 576
 
F11:=[[a^2], [-1]];
 
F11:=[[a^2], [-1]];
Line 21: Line 23:
 
F26:=[[y[1],y[2]],[-y[2],y[1]]];
 
F26:=[[y[1],y[2]],[-y[2],y[1]]];
 
-- Q-group algebra homomorphism phi: Q&lt;a,b&gt;/&lt;F11,F12,F13&gt; --&gt;Q&lt;x[1],y[1],x[2],y[2]&gt;/&lt;F21,F22,F23,F24,F25,F26&gt;  
 
-- Q-group algebra homomorphism phi: Q&lt;a,b&gt;/&lt;F11,F12,F13&gt; --&gt;Q&lt;x[1],y[1],x[2],y[2]&gt;/&lt;F21,F22,F23,F24,F25,F26&gt;  
-- defined by[1] mapping a to x[1]2+1 and b to 0
+
-- defined by mapping a to x[1] and b to 0
 
D1:=[[a],[-x[1]]]; -- map a to x[1]
 
D1:=[[a],[-x[1]]]; -- map a to x[1]
 
D2:=[[b]]; -- map b to 0
 
D2:=[[b]]; -- map b to 0
Line 38: Line 40:
 
-- hence the group &lt;a,b: b^2=(ab)^2=1&gt; is infinite.
 
-- hence the group &lt;a,b: b^2=(ab)^2=1&gt; is infinite.
 
Use QQ[a,b,y];
 
Use QQ[a,b,y];
NC.SetOrdering(<quotes>ELIM</quotes>); -- we want to eliminate a and b
+
NC.SetOrdering("ELIM"); -- we want to eliminate a and b
 
F1:=[[b^2],[-1]]; -- b^2-1
 
F1:=[[b^2],[-1]]; -- b^2-1
 
F2:=[[a,b,a,b],[-1]]; -- (ab)^2-1
 
F2:=[[a,b,a,b],[-1]]; -- (ab)^2-1
Line 54: Line 56:
 
-------------------------------
 
-------------------------------
 
Use QQ[a,b,y];
 
Use QQ[a,b,y];
NC.SetOrdering(<quotes>ELIM</quotes>); -- we want to eliminate a and b
+
NC.SetOrdering("ELIM"); -- we want to eliminate a and b
 
G1:=[[a^3],[-1]]; -- a^3-1
 
G1:=[[a^3],[-1]]; -- a^3-1
 
G2:=[[b^2],[-1]]; -- b^2-1
 
G2:=[[b^2],[-1]]; -- b^2-1
Line 71: Line 73:
 
</description>
 
</description>
 
<seealso>
 
<seealso>
<see>Use</see>
+
<see>ApCoCoA-1:Use|Use</see>
<see>NC.FindPolys</see>
+
<see>ApCoCoA-1:NC.FindPolys|NC.FindPolys</see>
<see>NC.GB</see>
+
<see>ApCoCoA-1:NC.GB|NC.GB</see>
<see>NC.SetOrdering</see>
+
<see>ApCoCoA-1:NC.SetOrdering|NC.SetOrdering</see>
<see>Introduction to CoCoAServer</see>
+
<see>ApCoCoA-1:Introduction to CoCoAServer|Introduction to CoCoAServer</see>
 
</seealso>
 
</seealso>
 
<types>
 
<types>
Line 86: Line 88:
 
<key>NC.KernelOfHomomorphism</key>
 
<key>NC.KernelOfHomomorphism</key>
 
<key>KernelOfHomomorphism</key>
 
<key>KernelOfHomomorphism</key>
<wiki-category>Package_ncpoly</wiki-category>
+
<wiki-category>ApCoCoA-1:Package_ncpoly</wiki-category>
 
</command>
 
</command>

Latest revision as of 13:34, 29 October 2020

This article is about a function from ApCoCoA-1.

NC.KernelOfHomomorphism

The kernel of an algebra homomorphism.

Syntax

Description

Proposition (Kernel of an Algebra Homomorphism): Let I be a two-sided ideal in the free monoid ring K<x[1],...,x[n]>, and let J be a two-sided ideal in the free monoid ring K<y[1],...,y[m]>. Moreover, let g_1,...,g_m be polynomials in K<x[1],...,x[n]>, and let phi: K<y[1],...,y[m]>/J-->K<x[1],...,x[n]>/I be a homomorphism of K-algebras defined by phi(y[i]+J)=g_i+I for i=1,...,m. We form the free monoid ring K<x[1],...,x[n],y[1],...,y[m]>, and let D be the diagonal ideal generated by the set {y[1]-g_1,...,y[m]-g_m}. Then we have ker(phi)=((D+J) intersets K<y[1],...,y[m]>)+I.

Example

Use QQ[x[1..2],y[1..2],a,b];
NC.SetOrdering("ELIM"); -- we want to eliminate x[1..2],y[1..2]
-- Group ring Q&lt;a,b&gt;/&lt;F11,F12,F13&gt; with the triangle group of order 576
F11:=[[a^2], [-1]];
F12:=[[b^3], [-1]];
F13:=[[a,b,a,b,a,b^2,a,b^2,a,b,a,b,a,b^2,a,b^2], [-1]];
-- Group ring Q&lt;x[1],y[1],x[2],y[2]&gt;/&lt;F21,F22,F23,F24,F25,F26&gt; with the fundamental group of 3-manifold of order 72
F21:=[[x[1]^3],[y[1]^3]]; --x[1]^3=y[1]^3
F22:=[[x[1]^3],[-y[1],x[2],y[1],x[2]]]; --x[1]^3p=(y[1]x[1]^-1)^2
F23:=[[x[2],x[1]],[-1]];
F24:=[[x[1],x[2]],[-x[2],x[1]]];
F25:=[[y[2],y[1]],[-1]];
F26:=[[y[1],y[2]],[-y[2],y[1]]];
-- Q-group algebra homomorphism phi: Q&lt;a,b&gt;/&lt;F11,F12,F13&gt; --&gt;Q&lt;x[1],y[1],x[2],y[2]&gt;/&lt;F21,F22,F23,F24,F25,F26&gt; 
-- defined by mapping a to x[1] and b to 0
D1:=[[a],[-x[1]]]; -- map a to x[1]
D2:=[[b]]; -- map b to 0
G:=[D1,D2,F21,F22,F23,F24,F25,F26];
Gb:=NC.GB(G);
KGb:=NC.FindPolys(Gb,[a,b]);
Concat(KGb,[F11,F12,F13]); -- a generating sy[1]stem of the ker(phi)

[[[b]], [[a^18], [-1]], [[a^2], [-1]], [[b^3], [-1]], 
[[a, b, a, b, a, b^2, a, b^2, a, b, a, b, a, b^2, a, b^2], [-1]]]
-------------------------------

Corollary (Minimal Polynomial): Let phi: K[y]-->K<x[1],...,x[n]>/I be a K-algebra homomorphism given by phi(y)=g+I. Then g+I is algebraic over K if and only if ker(phi) is not zero. Moreover, if g+I is algebraic over K, then the unique monic generating polynomial of the ideal ker(phi) is the minimal polynomial of g+I over K.

Example

-- The following example shows that a is transcendental over Q in the algebra Q&lt;a,b&gt;/&lt;b^2-1,(ab)^2-1&gt;,
-- hence the group &lt;a,b: b^2=(ab)^2=1&gt; is infinite.
Use QQ[a,b,y];
NC.SetOrdering("ELIM"); -- we want to eliminate a and b
F1:=[[b^2],[-1]]; -- b^2-1
F2:=[[a,b,a,b],[-1]]; -- (ab)^2-1
-- Construct a Q-algebra homomorphism phi: Q[y]--&gt; Q&lt;a,b&gt;/&lt;b^2-1,(ab)^2-1&gt;
-- defined by mapping y to a
D:=[[y],[-a]]; -- y-a
G:=[D,F1,F2];
Gb:=NC.GB(G);
Gb;
NC.FindPolys(Gb,[y]);

[[[a], [-y]], [[b^2], [-1]], [[y, b, y], [-b]]]
-------------------------------
[ ]
-------------------------------
Use QQ[a,b,y];
NC.SetOrdering("ELIM"); -- we want to eliminate a and b
G1:=[[a^3],[-1]]; -- a^3-1
G2:=[[b^2],[-1]]; -- b^2-1
G3:=[[a,b,a,b],[-1]]; -- (ab)^2-1
-- Construct a Q-algebra homomorphism phi: Q[y]--&gt; Q&lt;a,b&gt;/&lt;a^3-1,b^2-1,(ab)^2-1&gt;
-- defined by mapping y to bab
D:=[[y],[-b,a,b]]; -- y-bab
G:=[D,G1,G2,G3];
Gb:=NC.GB(G);
NC.FindPolys(Gb,[y]);

[[[y^3], [-1]]]
-------------------------------


See also

Use

NC.FindPolys

NC.GB

NC.SetOrdering

Introduction to CoCoAServer