This function creates the graph ideal of a ring map between noncommutative rings. It creates the free product of the source and target, and forms the ideal generated by $v - f(v)$ for all variables $v$ in the source.
i1 : A = QQ<|a,b,c|> o1 = A o1 : FreeAlgebra |
i2 : B = QQ<|x,y|> o2 = B o2 : FreeAlgebra |
i3 : f = map(B,A,{x*y*x,y*x*y,x*y}) o3 = map (B, A, {x*y*x, y*x*y, x*y}) o3 : RingMap B <--- A |
i4 : I = ncGraphIdeal f o4 = ideal (- x*y*x + a, - y*x*y + b, - x*y + c) o4 : Ideal of QQ <|x, y, a, b, c|> |
i5 : Igb = NCGB(I,10) Warning: Parallel F4 Algorithm not available over current coefficient ring. Converting to Naive algorithm. o5 = | xy-c cx-a yc-b | 1 3 o5 : Matrix (QQ <|x, y, a, b, c|>) <--- (QQ <|x, y, a, b, c|>) |
Those generators of the Groebner basis that involve only the variables in the domain are a Groebner basis of the kernel of the ring map.
The object ncGraphIdeal is a method function.