Difference between revisions of "ApCoCoA-1:NC.KernelOfHomomorphism"
Line 9: | Line 9: | ||
<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 | + | NC.SetOrdering(<quotes>ELIM</quotes>); -- 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 | -- Group ring Q<a,b>/<F11,F12,F13> with the triangle group of order 576 | ||
F11:=[[a^2], [-1]]; | F11:=[[a^2], [-1]]; | ||
Line 22: | Line 22: | ||
F26:=[[y[1],y[2]],[-y[2],y[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> | -- 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 | + | -- 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 |
Revision as of 18:06, 15 May 2013
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(<quotes>ELIM</quotes>); -- 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(<quotes>ELIM</quotes>); -- 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(<quotes>ELIM</quotes>); -- 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