Loading...
Searching...
No Matches
CSpecialPairMultiplier Class Referenceabstract

`#include <ncSAMult.h>`

## Public Types

typedef int | CExponent

## Public Member Functions

| CSpecialPairMultiplier (ring r, int i, int j)
virtual | ~CSpecialPairMultiplier ()
int | GetI () const
int | GetJ () const
virtual poly | MultiplyEE (const CExponent expLeft, const CExponent expRight)=0
virtual poly | MultiplyME (const poly pMonom, const CExponent expRight)
virtual poly | MultiplyEM (const CExponent expLeft, const poly pMonom)
Public Member Functions inherited from CMultiplier< int >
| CMultiplier (ring rBaseRing)
virtual | ~CMultiplier ()
ring | GetBasering () const
int | NVars () const
poly | LM (const poly pTerm, const ring r, int i=1) const
poly | MultiplyTE (const poly pTerm, const int expRight)
poly | MultiplyET (const int expLeft, const poly pTerm)

## Private Attributes

int | m_i
int | m_j

## Additional Inherited Members

Protected Attributes inherited from CMultiplier< int >
const ring | m_basering
const int | m_NVars

## Detailed Description

Definition at line 93 of file ncSAMult.h.

## Member Typedef Documentation

## CExponent

typedef int CSpecialPairMultiplier::CExponent

Definition at line 112 of file ncSAMult.h.

## Constructor & Destructor Documentation

## CSpecialPairMultiplier()

CSpecialPairMultiplier::CSpecialPairMultiplier | ( | ring | r,
|  | int | i,
|  | int | j )

Definition at line 1060 of file ncSAMult.cc.

:
CMultiplier<int>(r), m_i(i), m_j(j)
{
#if OUTPUT
Print("CSpecialPairMultiplier::CSpecialPairMultiplier(ring, i: %d, j: %d)!", i, j);
PrintLn();
#endif
assume(i < j);
assume(i > 0);
assume(j <= NVars());
}
i
int i
Definition cfEzgcd.cc:132
CMultiplier< int >::CMultiplier
CMultiplier(ring rBaseRing)
Definition ncSAMult.h:32
CMultiplier< int >::NVars
int NVars() const
Definition ncSAMult.h:36
CSpecialPairMultiplier::m_i
int m_i
Definition ncSAMult.h:96
CSpecialPairMultiplier::m_j
int m_j
Definition ncSAMult.h:97
Print
#define Print
Definition emacs.cc:80
j
int j
Definition facHensel.cc:110
assume
#define assume(x)
Definition mod2.h:389
PrintLn
void PrintLn()
Definition reporter.cc:314

## ~CSpecialPairMultiplier()

CSpecialPairMultiplier::~CSpecialPairMultiplier | ( |  | ) |

virtual

Definition at line 1074 of file ncSAMult.cc.

{
#if OUTPUT
PrintS("CSpecialPairMultiplier::~CSpecialPairMultiplier()!");
PrintLn();
#endif
}
PrintS
void PrintS(const char *s)
Definition reporter.cc:288

## Member Function Documentation

## GetI()

int CSpecialPairMultiplier::GetI | ( |  | ) | const

inline

Definition at line 108 of file ncSAMult.h.

{ return m_i; } // X

## GetJ()

int CSpecialPairMultiplier::GetJ | ( |  | ) | const

inline

Definition at line 109 of file ncSAMult.h.

{ return m_j; } // Y > X!

## MultiplyEE()

virtual poly CSpecialPairMultiplier::MultiplyEE | ( | const CExponent | expLeft,
|  | const CExponent | expRight )

pure virtual

Implements CMultiplier< int >.

Implemented in CAntiCommutativeSpecialPairMultiplier, CCommutativeSpecialPairMultiplier, CExternalSpecialPairMultiplier, CHWeylSpecialPairMultiplier, CQuasiCommutativeSpecialPairMultiplier, CShiftSpecialPairMultiplier, and CWeylSpecialPairMultiplier.

## MultiplyEM()

poly CSpecialPairMultiplier::MultiplyEM | ( | const CExponent | expLeft,
|  | const poly | pMonom )

virtual

Implements CMultiplier< int >.

Definition at line 1097 of file ncSAMult.cc.

{
#if OUTPUT
Print("CSpecialPairMultiplier::MultiplyEM(var(%d)^{%d}, monom)!", GetJ(), expLeft);
PrintLn();
PrintS("Monom: "); p_Write(pMonom, GetBasering());
#endif
return MultiplyEE(expLeft, p_GetExp(pMonom, GetI(), GetBasering()));
}
CMultiplier< int >::GetBasering
ring GetBasering() const
Definition ncSAMult.h:35
CSpecialPairMultiplier::GetI
int GetI() const
Definition ncSAMult.h:108
CSpecialPairMultiplier::GetJ
int GetJ() const
Definition ncSAMult.h:109
CSpecialPairMultiplier::MultiplyEE
virtual poly MultiplyEE(const CExponent expLeft, const CExponent expRight)=0
p_Write
void p_Write(poly p, ring lmRing, ring tailRing)
Definition polys0.cc:342
p_GetExp
static long p_GetExp(const poly p, const unsigned long iBitmask, const int VarOffset)
get a single variable exponent @Note: the integer VarOffset encodes:
Definition p_polys.h:471

## MultiplyME()

poly CSpecialPairMultiplier::MultiplyME | ( | const poly | pMonom,
|  | const CExponent | expRight )

virtual

Implements CMultiplier< int >.

Definition at line 1085 of file ncSAMult.cc.

{
#if OUTPUT
Print("CSpecialPairMultiplier::MultiplyME(monom, var(%d)^{%d})!", GetI(), expRight);
PrintLn();
PrintS("Monom: "); p_Write(pMonom, GetBasering());
#endif
return MultiplyEE(p_GetExp(pMonom, GetJ(), GetBasering()), expRight);
}

## Field Documentation

## m_i

int CSpecialPairMultiplier::m_i

private

Definition at line 96 of file ncSAMult.h.

## m_j

int CSpecialPairMultiplier::m_j

private

Definition at line 97 of file ncSAMult.h.

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

- libpolys/polys/nc/ncSAMult.h
- libpolys/polys/nc/ncSAMult.cc