Difference between revisions of "Category:ApCoCoA-1:Package gbmr"
Line 1: | Line 1: | ||
Package gbmr is designed to enable us to do basic operations (for instance addition, subtraction, multiplication, normal remainder, leading term, etc.) over Non-Commutative algebra, i.e. finitely presented monoid rings, compute (partial) Groebner bases of finitely generated (one-sided/two-sided) ideals, and experiment on applications of Groebner bases. | Package gbmr is designed to enable us to do basic operations (for instance addition, subtraction, multiplication, normal remainder, leading term, etc.) over Non-Commutative algebra, i.e. finitely presented monoid rings, compute (partial) Groebner bases of finitely generated (one-sided/two-sided) ideals, and experiment on applications of Groebner bases. | ||
− | Generally, a finitely presented monoid ring is defined by <tt>P=K<X|R>=K<X>/<R></tt>, where <tt>K</tt> is a field, <tt>X</tt> is a finite alphabet | + | |
+ | Generally, a finitely presented monoid ring is defined by <tt>P=K<X|R>=K<X>/<R></tt>, where <tt>K</tt> is a field, <tt>X</tt> is a finite alphabet (a finite set of letters), and <tt>R</tt> is a finite set of relations. If <tt>R</tt> is empty, then <tt>P</tt> becomes a free associative <tt>K</tt>-algebra. | ||
Revision as of 09:37, 23 July 2010
Package gbmr is designed to enable us to do basic operations (for instance addition, subtraction, multiplication, normal remainder, leading term, etc.) over Non-Commutative algebra, i.e. finitely presented monoid rings, compute (partial) Groebner bases of finitely generated (one-sided/two-sided) ideals, and experiment on applications of Groebner bases.
Generally, a finitely presented monoid ring is defined by P=K<X|R>=K<X>/<R>, where K is a field, X is a finite alphabet (a finite set of letters), and R is a finite set of relations. If R is empty, then P becomes a free associative K-algebra.
Things to know about this package.
(a) Predefined alias for this package is
Alias NC := $apcocoa/gbmr;
(b) K is field of rational number Q by default. It can be set to a finite field Fp through the functions
NC.SetFp(); and NC.SetFp(Prime);
where Primeis a prime number. The prevouse one sets finite field to F_{2}=Z/(2) and the later to F_{Prime}=Z/(Prime). And K can be reset to field of rational number through the function
NC.UnsetFp();
(c) X (or Alphabet) is represented as a STRING of letters. Every letter in X should have a unique occurrence. The order of letters in X is important since it induces an admissible ordering specified by Ordering. X can be set through the function
NC.SetX(X);
where X is a STRING of letters. And X can be reset to empty through the function
NC.UnsetX();
However I fail to find a proper situation to use it currently.
(d) Ordering is a STRING indicating which ordering we are working with. In the package we use admissible orderings. Currently, the package only supports length-lexicographic ordering ("LLEX") and elimination ordering ("ELIM") induced from the order of letters in X. The default ordering is "LLEX".
For example, X:="abc"; Ordering:="ELIM"; means elimination ordering induced from a>b>c.
Ordering can be set through the function
NC.SetOrdering(Ordering);
where Ordering is the ordering supported by the package. And Ordering can be reset to "LLEX" through the function
NC.UnsetOrdering();
(e) Relations, which is a finite generating set, is represented as a LIST of relations. Each relation of Relations is represented as a LIST (pair) composting of two words in X*.
(e0) Each word (term) in X* is represented as a STRING with all letters coming from X.
For example, X := "abc"; W := "ba"; means W=ba.
Note that unit in X* is empty word represented as an empty STRING "".
For example, X := "abc"; Relations := [["ba","ab"], ["ca","ac"], ["cb","bc"]]; means Relations generated by {ba=ab, ca=ac, cb=bc}.
Relations can be set through the function
NC.SetRelations(Relations);
where Relations is a properly represented Relations. And Relations can be reset to empty through the function
NC.UnsetRelations();
which might be a tricky way to change a monoid ring to a free associative K-algebra.
(f) Rules, which is also a finite generating set, is represented as a LIST of (rewriting) rules. Each rule of Rules is represented as a LIST (pair) consisting of one word in X* and one polynomial in K<X> (or K<X|R>).
(f0) Each polynomial in K<X> (or K<X|R>) is represented as a LIST of monomials, and each monomial is represented as a LIST (pair) consisting of one coefficient in K and one word (term) in X*.
For example, X := "abc"; P := [[1,"ab"], [1,""]]; means P=ab+1.
Note that 0 polynomial is represented as an empty LIST [].
For example, X := "ab"; Rules := [["ba", [[1,"ab"], [1,""]]]]; means Rules generated by {ba=ab+1}.
Rules can be set through the function
NC.SetRules(Rules);
where Rules is a properly represented Rules. And Rules can be reset to empty through the function
NC.UnsetRules();
(g) There is a function to get general information about ring environment.
NC.RingEnv();
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.
Pages in category "ApCoCoA-1:Package gbmr"
The following 59 pages are in this category, out of 59 total.
N
- ApCoCoA-1:NCo.Add
- ApCoCoA-1:NCo.AdMatrix
- ApCoCoA-1:NCo.BAdd
- ApCoCoA-1:NCo.BDeg
- ApCoCoA-1:NCo.BGB
- ApCoCoA-1:NCo.BHF
- ApCoCoA-1:NCo.BInterreduction
- ApCoCoA-1:NCo.BIsGB
- ApCoCoA-1:NCo.BLC
- ApCoCoA-1:NCo.BLW
- ApCoCoA-1:NCo.BMB
- ApCoCoA-1:NCo.BMultiply
- ApCoCoA-1:NCo.BNR
- ApCoCoA-1:NCo.BReducedGB
- ApCoCoA-1:NCo.BSubtract
- ApCoCoA-1:NCo.BTruncatedGB
- ApCoCoA-1:NCo.Deg
- ApCoCoA-1:NCo.FindPolynomials
- ApCoCoA-1:NCo.GB
- ApCoCoA-1:NCo.HF
- ApCoCoA-1:NCo.Interreduction
- ApCoCoA-1:NCo.Intersection
- ApCoCoA-1:NCo.IsFinite
- ApCoCoA-1:NCo.IsGB
- ApCoCoA-1:NCo.IsHomog
- ApCoCoA-1:NCo.KernelOfHomomorphism
- ApCoCoA-1:NCo.LC
- ApCoCoA-1:NCo.LW
- ApCoCoA-1:NCo.LWIdeal
- ApCoCoA-1:NCo.MB
- ApCoCoA-1:NCo.MRAdd
- ApCoCoA-1:NCo.MRDeg
- ApCoCoA-1:NCo.MRGB
- ApCoCoA-1:NCo.MRHF
- ApCoCoA-1:NCo.MRInterreduction
- ApCoCoA-1:NCo.MRIsGB
- ApCoCoA-1:NCo.MRLC
- ApCoCoA-1:NCo.MRLW
- ApCoCoA-1:NCo.MRMB
- ApCoCoA-1:NCo.MRMultiply
- ApCoCoA-1:NCo.MRNR
- ApCoCoA-1:NCo.MRReducedGB
- ApCoCoA-1:NCo.MRSubtract
- ApCoCoA-1:NCo.Multiply
- ApCoCoA-1:NCo.NR
- ApCoCoA-1:NCo.PrefixGB
- ApCoCoA-1:NCo.PrefixInterreduction
- ApCoCoA-1:NCo.PrefixNR
- ApCoCoA-1:NCo.PrefixReducedGB
- ApCoCoA-1:NCo.PrefixSaturation
- ApCoCoA-1:NCo.ReducedGB
- ApCoCoA-1:NCo.SetFp
- ApCoCoA-1:NCo.SetOrdering
- ApCoCoA-1:NCo.SetRelations
- ApCoCoA-1:NCo.SetX
- ApCoCoA-1:NCo.Subtract
- ApCoCoA-1:NCo.TruncatedGB
- ApCoCoA-1:NCo.UnsetFp
- ApCoCoA-1:NCo.UnsetRelations