Difference between revisions of "ApCoCoA-1:NC.KernelOfHomomorphism"
m (replaced <quotes> tag by real quotes) |
|||
(19 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
+ | {{Version|1}} | ||
<command> | <command> | ||
<title>NC.KernelOfHomomorphism</title> | <title>NC.KernelOfHomomorphism</title> | ||
<short_description> | <short_description> | ||
− | + | The kernel of an algebra homomorphism. | |
</short_description> | </short_description> | ||
− | <syntax> | + | <syntax></syntax> |
− | |||
− | |||
− | </syntax> | ||
<description> | <description> | ||
− | <em> | + | <em>Proposition (Kernel of an Algebra Homomorphism):</em> Let <tt>I</tt> be a two-sided ideal in the free monoid ring <tt>K<x[1],...,x[n]></tt>, and let <tt>J</tt> be a two-sided ideal in the free monoid ring <tt>K<y[1],...,y[m]></tt>. Moreover, let <tt>g_1,...,g_m</tt> be polynomials in <tt>K<x[1],...,x[n]></tt>, and let <tt>phi: K<y[1],...,y[m]>/J-->K<x[1],...,x[n]>/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<x[1],...,x[n],y[1],...,y[m]></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<y[1],...,y[m]>)+I</tt>. |
− | |||
− | |||
− | |||
− | |||
− | < | ||
− | |||
− | < | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<example> | <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<a,b>/<F11,F12,F13> 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]]; | |
− | NC. | + | -- Group ring Q<x[1],y[1],x[2],y[2]>/<F21,F22,F23,F24,F25,F26> 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<a,b>/<F11,F12,F13> -->Q<x[1],y[1],x[2],y[2]>/<F21,F22,F23,F24,F25,F26> | ||
+ | -- 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]]] | ||
------------------------------- | ------------------------------- | ||
</example> | </example> | ||
+ | <em>Corollary (Minimal Polynomial):</em> Let <tt>phi: K[y]-->K<x[1],...,x[n]>/I</tt> be a <tt>K</tt>-algebra homomorphism given by <tt>phi(y)=g+I</tt>. Then <tt>g+I</tt> is algebraic over <tt>K</tt> if and only if <tt>ker(phi)</tt> is not zero. Moreover, if <tt>g+I</tt> is algebraic over <tt>K</tt>, then the unique monic generating polynomial of the ideal <tt>ker(phi)</tt> is the minimal polynomial of <tt>g+I</tt> over <tt>K</tt>. | ||
+ | <example> | ||
+ | -- The following example shows that a is transcendental over Q in the algebra Q<a,b>/<b^2-1,(ab)^2-1>, | ||
+ | -- hence the group <a,b: b^2=(ab)^2=1> 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]--> Q<a,b>/<b^2-1,(ab)^2-1> | ||
+ | -- 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]--> Q<a,b>/<a^3-1,b^2-1,(ab)^2-1> | ||
+ | -- 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]]] | ||
+ | ------------------------------- | ||
+ | </example> | ||
+ | <par/> | ||
</description> | </description> | ||
<seealso> | <seealso> | ||
− | <see> | + | <see>ApCoCoA-1:Use|Use</see> |
− | <see>NC. | + | <see>ApCoCoA-1:NC.FindPolys|NC.FindPolys</see> |
− | + | <see>ApCoCoA-1:NC.GB|NC.GB</see> | |
− | <see>NC.GB | + | <see>ApCoCoA-1:NC.SetOrdering|NC.SetOrdering</see> |
− | + | <see>ApCoCoA-1:Introduction to CoCoAServer|Introduction to CoCoAServer</see> | |
− | <see>NC. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | <see> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</seealso> | </seealso> | ||
<types> | <types> | ||
<type>apcocoaserver</type> | <type>apcocoaserver</type> | ||
+ | <type>ideal</type> | ||
<type>groebner</type> | <type>groebner</type> | ||
+ | <type>non_commutative</type> | ||
</types> | </types> | ||
− | <key> | + | <key>ncpoly.KernelOfHomomorphism</key> |
<key>NC.KernelOfHomomorphism</key> | <key>NC.KernelOfHomomorphism</key> | ||
<key>KernelOfHomomorphism</key> | <key>KernelOfHomomorphism</key> | ||
− | <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<a,b>/<F11,F12,F13> 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<x[1],y[1],x[2],y[2]>/<F21,F22,F23,F24,F25,F26> 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<a,b>/<F11,F12,F13> -->Q<x[1],y[1],x[2],y[2]>/<F21,F22,F23,F24,F25,F26> -- 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<a,b>/<b^2-1,(ab)^2-1>, -- hence the group <a,b: b^2=(ab)^2=1> 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]--> Q<a,b>/<b^2-1,(ab)^2-1> -- 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]--> Q<a,b>/<a^3-1,b^2-1,(ab)^2-1> -- 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