Data Structures | Enumerations | Functions
ncSAFormula.h File Reference
#include <polys/monomials/ring.h>
#include <polys/nc/nc.h>

Go to the source code of this file.

Data Structures

class  CFormulaPowerMultiplier
 

Enumerations

enum  Enum_ncSAType {
  _ncSA_notImplemented = -1, _ncSA_1xy0x0y0 = 0x00, _ncSA_Mxy0x0y0 = 0x01, _ncSA_Qxy0x0y0 = 0x02,
  _ncSA_1xyAx0y0 = 0x10, _ncSA_1xy0xBy0 = 0x20, _ncSA_1xy0x0yG = 0x30, _ncSA_1xy0x0yT2 = 0x100
}
 

Functions

bool ncInitSpecialPowersMultiplication (ring r)
 
static CFormulaPowerMultiplierGetFormulaPowerMultiplier (const ring r)
 

Enumeration Type Documentation

Enumerator
_ncSA_notImplemented 
_ncSA_1xy0x0y0 
_ncSA_Mxy0x0y0 
_ncSA_Qxy0x0y0 
_ncSA_1xyAx0y0 
_ncSA_1xy0xBy0 
_ncSA_1xy0x0yG 
_ncSA_1xy0x0yT2 

Definition at line 17 of file ncSAFormula.h.

18 {
20  _ncSA_1xy0x0y0 = 0x00, // commutative
21  _ncSA_Mxy0x0y0 = 0x01, // anti-commutative
22  _ncSA_Qxy0x0y0 = 0x02, // quasi-commutative
23  _ncSA_1xyAx0y0 = 0x10, // shift 1
24  _ncSA_1xy0xBy0 = 0x20, // shift 2
25  _ncSA_1xy0x0yG = 0x30, // Weyl
26  _ncSA_1xy0x0yT2 = 0x100 // homogenized Weyl algebra?
27 };

Function Documentation

static CFormulaPowerMultiplier* GetFormulaPowerMultiplier ( const ring  r)
inlinestatic

Definition at line 95 of file ncSAFormula.h.

96 {
97  return r->GetNC()->GetFormulaPowerMultiplier();
98 }
const ring r
Definition: syzextra.cc:208
bool ncInitSpecialPowersMultiplication ( ring  r)

Definition at line 51 of file ncSAFormula.cc.

52 {
53 #if OUTPUT
54  Print("ncInitSpecialPowersMultiplication(ring), ring: \n");
55  rWrite(r, TRUE);
56  PrintLn();
57 #endif
58 
60  assume(!rIsSCA(r));
61 
62 
63  if( r->GetNC()->GetFormulaPowerMultiplier() != NULL )
64  {
65  WarnS("Already defined!");
66  return false;
67  }
68 
69 
70  r->GetNC()->GetFormulaPowerMultiplier() = new CFormulaPowerMultiplier(r);
71 
72  return true;
73 
74 }
void PrintLn()
Definition: reporter.cc:327
#define Print
Definition: emacs.cc:83
#define TRUE
Definition: auxiliary.h:144
#define WarnS
Definition: emacs.cc:81
const ring r
Definition: syzextra.cc:208
#define assume(x)
Definition: mod2.h:405
static BOOLEAN rIsPluralRing(const ring r)
we must always have this test!
Definition: ring.h:361
void rWrite(ring r, BOOLEAN details)
Definition: ring.cc:236
#define NULL
Definition: omList.c:10
static bool rIsSCA(const ring r)
Definition: nc.h:206