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

## NC.KernelOfHomomorphism

The kernel of an algebra homomorphism.

### Description

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

#### Example

```Use QQ[x[1..2],y[1..2],a,b];
NC.SetOrdering(<quotes>ELIM</quotes>); -- we want to eliminate x,y,x and y
-- 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,y,x,y&gt;/&lt;F21,F22,F23,F24,F25,F26&gt; with the fundamental group of 3-manifold of order 72
F21:=[[x^3],[y^3]]; --x^3=y^3
F22:=[[x^3],[-y,x,y,x]]; --x^3p=(yx^-1)^2
F23:=[[x,x],[-1]];
F24:=[[x,x],[-x,x]];
F25:=[[y,y],[-1]];
F26:=[[y,y],[-y,y]];
-- Q-group algebra homomorphism phi: Q&lt;a,b&gt;/&lt;F11,F12,F13&gt; --&gt;Q&lt;x,y,x,y&gt;/&lt;F21,F22,F23,F24,F25,F26&gt;
-- defined by mapping a to x2+1 and b to 0
D1:=[[a],[-x]]; -- map a to x
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 system 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,...,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(<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]--&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(<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]--&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]]]
-------------------------------
```