My Project
Loading...
Searching...
No Matches
CExternalSpecialPairMultiplier Class Reference

#include <ncSAMult.h>

Public Member Functions

 CExternalSpecialPairMultiplier (ring r, int i, int j, Enum_ncSAType type)
virtual ~CExternalSpecialPairMultiplier ()
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 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

Enum_ncSAType m_ncSAtype

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 591 of file ncSAMult.h.

Constructor & Destructor Documentation

◆ CExternalSpecialPairMultiplier()

CExternalSpecialPairMultiplier::CExternalSpecialPairMultiplier ( ring r,
int i,
int j,
Enum_ncSAType type )

Definition at line 738 of file ncSAMult.cc.

738 :
740{
741#if OUTPUT
742 Print("CExternalSpecialPairMultiplier::CExternalSpecialPairMultiplier(ring, i: %d, j: %d, type: %d, c)!", i, j, (int)type);
743 PrintLn();
744#endif
745}
int i
Definition cfEzgcd.cc:132
CSpecialPairMultiplier(ring r, int i, int j)
Definition ncSAMult.cc:1060
#define Print
Definition emacs.cc:80
int j
Definition facHensel.cc:110
void PrintLn()
Definition reporter.cc:310

◆ ~CExternalSpecialPairMultiplier()

CExternalSpecialPairMultiplier::~CExternalSpecialPairMultiplier ( )
virtual

Definition at line 748 of file ncSAMult.cc.

749{
750#if OUTPUT
751 PrintS("CExternalSpecialPairMultiplier::~CExternalSpecialPairMultiplier()");
752 PrintLn();
753#endif
754}
void PrintS(const char *s)
Definition reporter.cc:284

Member Function Documentation

◆ MultiplyEE()

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

Implements CSpecialPairMultiplier.

Definition at line 757 of file ncSAMult.cc.

758{
759#if OUTPUT
760 Print("CExternalSpecialPairMultiplier::MultiplyEE(var(%d)^{%d}, var(%d)^{%d})!", GetJ(), expLeft, GetI(), expRight);
761 PrintLn();
762#endif
763 // Char == 0, otherwise - problem!
764
765 assume( expLeft*expRight > 0 );
766
767 const ring r = GetBasering();
768
769 return CFormulaPowerMultiplier::Multiply(m_ncSAtype, GetI(), GetJ(), expRight, expLeft, r);
770
771}
static poly Multiply(Enum_ncSAType type, const int i, const int j, const int n, const int m, const ring r)
ring GetBasering() const
Definition ncSAMult.h:35
#define assume(x)
Definition mod2.h:389

Field Documentation

◆ m_ncSAtype

Enum_ncSAType CExternalSpecialPairMultiplier::m_ncSAtype
private

Definition at line 594 of file ncSAMult.h.


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