carl  24.04
Computer ARithmetic Library
carl::ContextPolynomial< Coeff, Ordering, Policies > Class Template Reference

#include <ContextPolynomial.h>

Collaboration diagram for carl::ContextPolynomial< Coeff, Ordering, Policies >:

Public Types

using ContextType = Context
 
using NumberType = typename UnderlyingNumberType< Coeff >::type
 Number type within the coefficients. More...
 
using RootType = typename UnivariatePolynomial< NumberType >::RootType
 

Public Member Functions

 ContextPolynomial (const Context &context, const MultivariatePolynomial< Coeff, Ordering, Policies > &p)
 
 ContextPolynomial (const Context &context, const UnivariatePolynomial< MultivariatePolynomial< Coeff, Ordering, Policies >> &p)
 
 ContextPolynomial (Context &&context, UnivariatePolynomial< MultivariatePolynomial< Coeff, Ordering, Policies >> &&p)
 
 ContextPolynomial (const Context &context, const Coeff &c)
 
 operator MultivariatePolynomial< Coeff, Ordering, Policies > () const
 
 operator const UnivariatePolynomial< MultivariatePolynomial< Coeff, Ordering, Policies >> & () const
 
 operator UnivariatePolynomial< MultivariatePolynomial< Coeff, Ordering, Policies >> & ()
 
const UnivariatePolynomial< MultivariatePolynomial< Coeff, Ordering, Policies > > & content () const
 
MultivariatePolynomial< Coeff, Ordering, Policies > as_multivariate () const
 
const Contextcontext () const
 
auto main_var () const
 
auto degree () const
 
auto total_degree () const
 
auto coefficients () const
 
auto lcoeff () const
 
auto normalized () const
 
auto constant_part () const
 

Static Private Member Functions

static Variable main_var (const Context &ctx, const MultivariatePolynomial< Coeff, Ordering, Policies > &p)
 

Private Attributes

Context m_context
 
UnivariatePolynomial< MultivariatePolynomial< Coeff, Ordering, Policies > > m_content
 

Detailed Description

template<typename Coeff, typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
class carl::ContextPolynomial< Coeff, Ordering, Policies >

Definition at line 10 of file ContextPolynomial.h.

Member Typedef Documentation

◆ ContextType

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
using carl::ContextPolynomial< Coeff, Ordering, Policies >::ContextType = Context

Definition at line 12 of file ContextPolynomial.h.

◆ NumberType

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
using carl::ContextPolynomial< Coeff, Ordering, Policies >::NumberType = typename UnderlyingNumberType<Coeff>::type

Number type within the coefficients.

Definition at line 14 of file ContextPolynomial.h.

◆ RootType

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
using carl::ContextPolynomial< Coeff, Ordering, Policies >::RootType = typename UnivariatePolynomial<NumberType>::RootType

Definition at line 16 of file ContextPolynomial.h.

Constructor & Destructor Documentation

◆ ContextPolynomial() [1/4]

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
carl::ContextPolynomial< Coeff, Ordering, Policies >::ContextPolynomial ( const Context context,
const MultivariatePolynomial< Coeff, Ordering, Policies > &  p 
)
inline

Definition at line 35 of file ContextPolynomial.h.

◆ ContextPolynomial() [2/4]

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
carl::ContextPolynomial< Coeff, Ordering, Policies >::ContextPolynomial ( const Context context,
const UnivariatePolynomial< MultivariatePolynomial< Coeff, Ordering, Policies >> &  p 
)
inline

Definition at line 37 of file ContextPolynomial.h.

◆ ContextPolynomial() [3/4]

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
carl::ContextPolynomial< Coeff, Ordering, Policies >::ContextPolynomial ( Context &&  context,
UnivariatePolynomial< MultivariatePolynomial< Coeff, Ordering, Policies >> &&  p 
)
inline

Definition at line 39 of file ContextPolynomial.h.

◆ ContextPolynomial() [4/4]

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
carl::ContextPolynomial< Coeff, Ordering, Policies >::ContextPolynomial ( const Context context,
const Coeff c 
)
inline

Definition at line 41 of file ContextPolynomial.h.

Member Function Documentation

◆ as_multivariate()

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
MultivariatePolynomial<Coeff, Ordering, Policies> carl::ContextPolynomial< Coeff, Ordering, Policies >::as_multivariate ( ) const
inline

Definition at line 59 of file ContextPolynomial.h.

Here is the caller graph for this function:

◆ coefficients()

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
auto carl::ContextPolynomial< Coeff, Ordering, Policies >::coefficients ( ) const
inline

Definition at line 79 of file ContextPolynomial.h.

◆ constant_part()

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
auto carl::ContextPolynomial< Coeff, Ordering, Policies >::constant_part ( ) const
inline

Definition at line 95 of file ContextPolynomial.h.

◆ content()

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
const UnivariatePolynomial<MultivariatePolynomial<Coeff, Ordering, Policies> >& carl::ContextPolynomial< Coeff, Ordering, Policies >::content ( ) const
inline

Definition at line 55 of file ContextPolynomial.h.

Here is the caller graph for this function:

◆ context()

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
const Context& carl::ContextPolynomial< Coeff, Ordering, Policies >::context ( ) const
inline

Definition at line 63 of file ContextPolynomial.h.

Here is the caller graph for this function:

◆ degree()

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
auto carl::ContextPolynomial< Coeff, Ordering, Policies >::degree ( ) const
inline

Definition at line 71 of file ContextPolynomial.h.

◆ lcoeff()

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
auto carl::ContextPolynomial< Coeff, Ordering, Policies >::lcoeff ( ) const
inline

Definition at line 87 of file ContextPolynomial.h.

◆ main_var() [1/2]

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
auto carl::ContextPolynomial< Coeff, Ordering, Policies >::main_var ( ) const
inline

Definition at line 67 of file ContextPolynomial.h.

◆ main_var() [2/2]

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
static Variable carl::ContextPolynomial< Coeff, Ordering, Policies >::main_var ( const Context ctx,
const MultivariatePolynomial< Coeff, Ordering, Policies > &  p 
)
inlinestaticprivate

Definition at line 22 of file ContextPolynomial.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ normalized()

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
auto carl::ContextPolynomial< Coeff, Ordering, Policies >::normalized ( ) const
inline

Definition at line 91 of file ContextPolynomial.h.

Here is the call graph for this function:

◆ operator const UnivariatePolynomial< MultivariatePolynomial< Coeff, Ordering, Policies >> &()

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
carl::ContextPolynomial< Coeff, Ordering, Policies >::operator const UnivariatePolynomial< MultivariatePolynomial< Coeff, Ordering, Policies >> & ( ) const
inline

Definition at line 47 of file ContextPolynomial.h.

◆ operator MultivariatePolynomial< Coeff, Ordering, Policies >()

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
carl::ContextPolynomial< Coeff, Ordering, Policies >::operator MultivariatePolynomial< Coeff, Ordering, Policies > ( ) const
inline

Definition at line 43 of file ContextPolynomial.h.

◆ operator UnivariatePolynomial< MultivariatePolynomial< Coeff, Ordering, Policies >> &()

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
carl::ContextPolynomial< Coeff, Ordering, Policies >::operator UnivariatePolynomial< MultivariatePolynomial< Coeff, Ordering, Policies >> & ( )
inline

Definition at line 51 of file ContextPolynomial.h.

◆ total_degree()

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
auto carl::ContextPolynomial< Coeff, Ordering, Policies >::total_degree ( ) const
inline

Definition at line 75 of file ContextPolynomial.h.

Field Documentation

◆ m_content

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
UnivariatePolynomial<MultivariatePolynomial<Coeff, Ordering, Policies> > carl::ContextPolynomial< Coeff, Ordering, Policies >::m_content
private

Definition at line 20 of file ContextPolynomial.h.

◆ m_context

template<typename Coeff , typename Ordering = GrLexOrdering, typename Policies = StdMultivariatePolynomialPolicies<>>
Context carl::ContextPolynomial< Coeff, Ordering, Policies >::m_context
private

Definition at line 19 of file ContextPolynomial.h.


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