Gröbner basis project
Codebase for research into Gröbner basis computation
PPWithIdeal Class Reference

#include <dynamic_engine.hpp>

Public Member Functions

Construction
 PPWithIdeal (Monomial u, const list< Monomial > &F, ::ray &w, const list< Critical_Pair_Dynamic *> &P, const Dense_Univariate_Integer_Polynomial *h=nullptr)
 Construct a monomial/ideal pair. More...
 
 PPWithIdeal (const PPWithIdeal &PI)
 copy constructor
 
Destruction
 ~PPWithIdeal ()
 does nothing the default wouldn't do
 
Basic properties
const MonomialgetPP () const
 the leading monomial being added to the ideal
 
const Monomial_IdealgetIdeal () const
 the old ideal of leading monomials
 
inline ::ray getOrdering ()
 the current monomial ordering
 
Dense_Univariate_Integer_PolynomialgetHilbertNumerator (bool graded=false)
 the Hilbert numerator obtained by adding the monomial to the ideal (numerator is not reduced)
 
Dense_Univariate_Integer_PolynomialgetHilbertReducedNumerator (bool graded=false)
 the Hilbert numerator obtained by adding the monomial to the ideal (numerator is reduced)
 
Dense_Univariate_Rational_PolynomialgetHilbertPolynomial ()
 the Hilbert polynomial obtained by adding the monomial to the ideal
 
int howManyNewPairs () const
 estimate of the number of new critical pairs generated by adding the monomial to the ideal
 
int degOfNewPairs () const
 the degree of the new critical pairs generated by adding the monomial to the ideal
 
int getDifferenceInDegree ()
 computes the difference in degree between the first and last monomials of the ideal
 
Modification
void computeNumberNewPairs ()
 Computes the number of critical pairs the monomial would add.
 

Protected Attributes

Monomial_Ideal I
 the ideal of leading terms
 
int max_deg
 minimum weighted degree of monomials in ideal
 
int min_deg
 minimum weighted degree of monomials in ideal
 
int num_new_pairs
 estimate of number of new pairs
 
::ray ordering
 the current ordering of the Gröbner basis computation
 
const list< Critical_Pair_Dynamic * > & pairs
 the list of critical pairs of \(I\) at this point in the algorithm
 
Monomial t
 a monomial that may be added to the ideal \(I\)
 

Detailed Description

Author
John Perry
Date
2014 Used to associate a potential leading power product with the resulting monomial ideal if it were chosen as the actual leading power product.

Definition at line 70 of file dynamic_engine.hpp.

Constructor & Destructor Documentation

◆ PPWithIdeal()

PPWithIdeal::PPWithIdeal ( Monomial  u,
const list< Monomial > &  F,
::ray w,
const list< Critical_Pair_Dynamic *> &  P,
const Dense_Univariate_Integer_Polynomial h = nullptr 
)
inline

Construct a monomial/ideal pair.

Parameters
uproposed new Monomial for ideal
Fcurrent ideal
wcurrent monomial ordering
Pcurrent list of critical pairs
hunreduced Hilbert numerator of F (does not verify correctness)

Definition at line 82 of file dynamic_engine.hpp.


The documentation for this class was generated from the following files: