ApCoCoA-1:NC.HF

From ApCoCoAWiki
Revision as of 23:17, 11 December 2010 by 132.231.183.4 (talk)

NC.HF

Hilbert function of K-algebra.

Syntax

NC.HF(Gb:LIST):LIST
NC.HF(Gb:LIST, DegreeBound: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.

Please set ring environment coefficient field K, alphabet (or indeterminates) X and ordering through the functions NC.SetFp(Prime), NC.SetX(X) and NC.SetOrdering(Ordering), respectively, before calling the function. Default coefficient field is Q. Default ordering is length-lexicographic ordering ("LLEX"). For more information, please check the relevant functions.

  • @param Gb: a LIST of non-zero polynomials in K<X> which is a Groebner basis of (two-sided) ideal generated by Gb. Each polynomial is represented as a LIST of LISTs, which are pairs of form [C, W] where C is a coefficient and W is a word (or term). Each term is represented as a STRING. For example, xy^2x is represented as "xyyx", unit is represented as an empty string "". Then, polynomial F=xy-y+1 is represented as F:=[[1,"xy"], [-1, "y"], [1,""]]. 0 polynomial is represented as an empty LIST [].

  • @param DegreeBound: (optional) a positive integer which is a degree bound of Hilbert funtion.

  • @return: a LIST of non-negative integers, which is a list of coefficient of Hilbert function of K<X>/(Gb).

Example

NC.SetX(<quotes>abc</quotes>); 				
NC.SetOrdering(<quotes>ELIM</quotes>); 
NC.RingEnv();
Coefficient ring : Q
Alphabet : abc
Ordering : ELIM

-------------------------------		
F1 := [[1,<quotes>a</quotes>],[1,<quotes></quotes>]];
F2 := [[1,<quotes>b</quotes>],[1,<quotes>ba</quotes>]];
NC.Add(F1,F2); -- over Q
[[1, <quotes>ba</quotes>], [1, <quotes>a</quotes>], [1, <quotes>b</quotes>], [1, <quotes></quotes>]]
-------------------------------
NC.SetFp(); -- set default Fp = F2
NC.RingEnv();
Coefficient ring : Fp = Z/(2)
Alphabet : abc
Ordering : ELIM

-------------------------------
NC.Add(F1,F2); -- over F2
[[1, <quotes>ba</quotes>], [1, <quotes>a</quotes>], [1, <quotes>b</quotes>], [1, <quotes></quotes>]]
-------------------------------
NC.Add(F1,F1); -- over F2
[ ]
-------------------------------

See also

NC.Add

NC.Deg

NC.FindPolynomials

NC.GB

NC.HF

NC.Intersection

NC.IsGB

NC.KernelOfHomomorphism

NC.LC

NC.LT

NC.NR

NC.ReducedGB

NC.MRBP

NC.SetFp

NC.SetOrdering

NC.SetRelations

NC.SetRules

NC.SetX

NC.Subtract

NC.UnsetFp

NC.UnsetOrdering

NC.UnsetRelations

NC.UnsetRules

NC.UnsetX

Introduction to CoCoAServer