Gröbner basis project
Codebase for research into Gröbner basis computation
|
the lex ordering for a specified number of variables More...
#include <particular_orderings.hpp>
Public Member Functions | |
Construction | |
Lex_Ordering (NVAR_TYPE number_of_variables) | |
Comparison | |
virtual bool | first_larger (const Monomial &t, const Monomial &u) const |
returns true iff \(t>u\) by sums of successively fewer exponents | |
virtual bool | first_smaller (const Monomial &t, const Monomial &u) const |
returns true iff \(t< u\) by sums of successively fewer exponents | |
virtual bool | first_larger_than_multiple (const Monomial &t, const Monomial &u, const Monomial &v) const |
returns true iff \(t>u\) by sums of successively fewer exponents | |
virtual int | cmp (const Monomial &t, const Monomial &u) const |
{@ More... | |
![]() | |
virtual | ~Monomial_Ordering () |
needs virtual destructor for polymorphic delete | |
virtual void | set_data (Monomial &) |
sets monomial ordering’s data; default is to do nothing | |
bool | first_larger_or_equal (const Monomial &, const Monomial &) const |
returns true iff the first Monomial is larger or equal to the second More... | |
bool | first_smaller_or_equal (const Monomial &, const Monomial &) const |
returns true iff the first Monomial is smaller or equal to the second More... | |
bool | first_larger_or_equal_than_multiple (const Monomial &, const Monomial &, const Monomial &) const |
returns true iff the first Monomial is larger or equal to the specified multiple of the second More... | |
bool | first_smaller_than_multiple (const Monomial &, const Monomial &, const Monomial &) const |
returns true iff the first Monomial is smaller than the specified multiple of the second More... | |
bool | first_smaller_or_equal_than_multiple (const Monomial &, const Monomial &, const Monomial &) const |
returns true iff the first Monomial is smaller or equal to the specified multiple of the second More... | |
Protected Attributes | |
const NVAR_TYPE | n |
the number of variables, which should remain constant | |
the lex ordering for a specified number of variables
The lex ordering is a dictionary ordering. The first variable is considered largest, and monomials with a larger degree in the first variable will be considered larger than monomials with a smaller degree in the first variable, regardless of the overall degree in all variables.
Definition at line 271 of file particular_orderings.hpp.
Lex_Ordering::Lex_Ordering | ( | NVAR_TYPE | number_of_variables | ) |
creates a lex ordering specific to \(n\) variables
Definition at line 307 of file particular_orderings.cpp.
{@
returns 0 if the Monomials are like; negative if smaller, positive if larger – for efficiency, you probably want to redefine this
Implements Monomial_Ordering.
Definition at line 294 of file particular_orderings.hpp.