ApCoCoA-1:NC.KernelOfHomomorphism

From ApCoCoAWiki
Revision as of 09:13, 20 July 2010 by 132.231.10.60 (talk) (New page: <command> <title>NC.KernelOfHomomorphism</title> <short_description> Computing (patial) Groebner basis of kernel of k-algebra homomorphism. </short_description> <syntax> NC.KernelOfHomomor...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

NC.KernelOfHomomorphism

Computing (patial) Groebner basis of kernel of k-algebra homomorphism.

Syntax

NC.KernelOfHomomorphism(X_1:STRING, X_2:STRING, Images:LIST[, DegreeBound:INT, LoopBound:INT, IFlag:INT]):LIST

Description

Please note: The function(s) explained on this page is/are using the ApCoCoAServer. You will have to start the ApCoCoAServer in order to use it/them.

  • @param X_1: an finite set of letters. It is of STRING type. Notice that every letter in X_1 MUST appear only once. The order of letters in X_1 is very important, since X_1 as well as Images are used to define a k-algebra homomorphism.

  • @param R_1: a finite set of relations and it is of LIST type. Each element in R_1 has form [w_{l}, w_{r}], where w_{l} and w_{r} are terms over M_1. Each term is represented as a STRING. For example, xy^2x is represented as "xyyx", identity element is represented as an empty STRING "", and relation (yx, xy) is represented as ["yx", "xy"].

  • @param X_2: another finite set of letters. Note that X_1 and X_2 are disjoint sets.

  • @param R_2: a finite set of relations over M_2.

  • @param Images: a LIST of polynomials. Each polynomial is represented as a LIST of LISTs, which are pairs of form [a_{i}, w_{i}]. For example, polynomial F:=xy-y+1 is represented as F:=[[1,"xy"], [-1, "y"], [1,""]]. Zero polynomial is represented as an empty LIST []. Note that the order of polynomials in Images is very important, since Images as well as X_1 are used to defined a k-algebra homomorphism. For example, X_1:="abc"; F1 := [[1,"x"], [1,"y"]]; F2 := [[1,"xx"],[1,"xy"]]; F3 := [[1,"yy"],[1,"yx"]]; Images := [F1, F2, F3]; these together define a k-algebra homomorphism by mapping a to F1, b to F2 and c to F3.

Please note all of the following 3 additional optional parameters must be used at the same time if used.

  • @param DegreeBound: (optional) a natural number (INT) giving a degree bound during Groebner basis computation. When a normal form of a S-polynomial reaches DegreeBound, the Buchberger procedure stops and returns a partial Groebner basis.

  • @param LoopBound: (optional) a natural number (INT) giving a bound for loop during Groebner basis computation. The main loop can only be carried out at most LoopBound times.

  • @param BFlag: (optional) a boolean parameter (BOOL). If BFlag is true, the ApCoCoAServer prints the tracing information in the screen. Otherwise not.

  • @return: a reduced Groebner basis of kernel of k-algebra homomorphism if (1)finite Groebner basis exists and (2)the computation isn't limited by DegreeBound and LoopBound. Otherwise, a partial Groebner basis.

Example

X_1 := <quotes>abc</quotes>; 
X_2 := <quotes>xy</quotes>; 
F1 := [[1,<quotes>x</quotes>], [1,<quotes>y</quotes>]]; 
F2 := [[1,<quotes>xx</quotes>],[1,<quotes>xy</quotes>]]; 
F3 := [[1,<quotes>yy</quotes>],[1,<quotes>yx</quotes>]]; 
Images :=[F1, F2, F3]; -- a |-> F1; b |-> F2; c |-> F3 
NC.KernelOfHomomorphism(X_1, X_2, Images);
[[[1, <quotes>ab</quotes>], [-1, <quotes>ba</quotes>], [1, <quotes>ac</quotes>], [-1, <quotes>ca</quotes>]], [[1, <quotes>aa</quotes>], [-1, <quotes>b</quotes>], [-1, <quotes>c</quotes>]]]
-------------------------------

See also

Gbmr.MRAdd

Gbmr.MRBP

Gbmr.MRIntersection

Gbmr.MRMinimalPolynomials

Gbmr.MRMultiply

Gbmr.MRSubtract

Introduction to CoCoAServer