My Project
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes
CQuasiCommutativeSpecialPairMultiplier Class Reference

#include <ncSAMult.h>

Public Member Functions

 CQuasiCommutativeSpecialPairMultiplier (ring r, int i, int j, number q)
 
virtual ~CQuasiCommutativeSpecialPairMultiplier ()
 
virtual poly MultiplyEE (const int expLeft, const int expRight)
 
- Public Member Functions inherited from CSpecialPairMultiplier
 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)
 
virtual poly MultiplyEE (const int expLeft, const int expRight)=0
 
virtual poly MultiplyME (const poly pMonom, const int expRight)=0
 
virtual poly MultiplyEM (const int expLeft, const poly pMonom)=0
 

Private Attributes

const number m_q
 

Additional Inherited Members

- Public Types inherited from CSpecialPairMultiplier
typedef int CExponent
 
- Protected Attributes inherited from CMultiplier< int >
const ring m_basering
 
const int m_NVars
 

Detailed Description

Definition at line 523 of file ncSAMult.h.

Constructor & Destructor Documentation

◆ CQuasiCommutativeSpecialPairMultiplier()

CQuasiCommutativeSpecialPairMultiplier::CQuasiCommutativeSpecialPairMultiplier ( ring  r,
int  i,
int  j,
number  q 
)

Definition at line 586 of file ncSAMult.cc.

586 :
588{
589#if OUTPUT
590 Print("CQuasiCommutativeSpecialPairMultiplier::CQuasiCommutativeSpecialPairMultiplier(ring, i: %d, j: %d, q)!", i, j);
591 PrintLn();
592 PrintS("Parameter q: ");
593 n_Write(q, r);
594#endif
595}
int i
Definition: cfEzgcd.cc:132
static FORCE_INLINE void n_Write(number n, const coeffs r, const BOOLEAN bShortOut=TRUE)
Definition: coeffs.h:588
#define Print
Definition: emacs.cc:80
int j
Definition: facHensel.cc:110
void PrintS(const char *s)
Definition: reporter.cc:284
void PrintLn()
Definition: reporter.cc:310

◆ ~CQuasiCommutativeSpecialPairMultiplier()

CQuasiCommutativeSpecialPairMultiplier::~CQuasiCommutativeSpecialPairMultiplier ( )
virtual

Definition at line 598 of file ncSAMult.cc.

599{
600#if OUTPUT
601 PrintS("CQuasiCommutativeSpecialPairMultiplier::~CQuasiCommutativeSpecialPairMultiplier()");
602 PrintLn();
603#endif
604}

Member Function Documentation

◆ MultiplyEE()

poly CQuasiCommutativeSpecialPairMultiplier::MultiplyEE ( const int  expLeft,
const int  expRight 
)
virtual

Implements CSpecialPairMultiplier.

Definition at line 607 of file ncSAMult.cc.

608{
609#if OUTPUT
610 Print("CQuasiCommutativeSpecialPairMultiplier::MultiplyEE(var(%d)^{%d}, var(%d)^{%d})!", GetJ(), expLeft, GetI(), expRight);
611 PrintLn();
612#endif
613
614 const ring r = GetBasering();
615
616 return CFormulaPowerMultiplier::ncSA_Qxy0x0y0(GetI(), GetJ(), expRight, expLeft, m_q, r);
617}
static poly ncSA_Qxy0x0y0(const int i, const int j, const int n, const int m, const number m_q, const ring r)
Definition: ncSAFormula.cc:725
ring GetBasering() const
Definition: ncSAMult.h:35
int GetI() const
Definition: ncSAMult.h:108
int GetJ() const
Definition: ncSAMult.h:109

Field Documentation

◆ m_q

const number CQuasiCommutativeSpecialPairMultiplier::m_q
private

Definition at line 526 of file ncSAMult.h.


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