Skip to content

Implemented primitives for working with ideals of polynomial rings of several variables and algorithms for finding various Groebner bases.

Notifications You must be signed in to change notification settings

wery0/GroebnerBasisLibrary

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GroebnerBasisLibrary

Implemented primitives for working with ideals of polynomial rings of several variables and algorithms for finding various Groebner bases. Primitives are:

1). Fields: Fraction (for working with rational numbers), Mint (modulo numbers).

2). Variable: represents a variable of the form [A − Za − z](_(\d))+.

3). Monomial: product of variables and coefficient. Represents a monomial of the form (Coefficient)?(Variable(^(\d)+)?)+ .

4). Orders: VariableOrders and MonomialOrders. Use them to change order of variables inside monomial and monomials inside polynomial.

5). Parsers: CoefficientParser and MonomialParser for parsing std::string to primitives.

6). Polynomial: sum of monomials.

7). Ideal: represents ideal of polynomial ring of several variables K[x_1, ..., x_n].

Implemented Buchberger's algorithm with S-polynomials optimization for finding arbitrary Groebner basis, as well as functions for turning an arbitrary Groebner basis into a minimal Groebner basis and a minimal Groebner basis into a reduced Groebner basis.

Everything is tested by unit tests.

About

Implemented primitives for working with ideals of polynomial rings of several variables and algorithms for finding various Groebner bases.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published