My Project
Loading...
Searching...
No Matches
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

◆ Enum_ncSAType

Enumerator
_ncSA_notImplemented 
_ncSA_1xy0x0y0 
_ncSA_Mxy0x0y0 
_ncSA_Qxy0x0y0 
_ncSA_1xyAx0y0 
_ncSA_1xy0xBy0 
_ncSA_1xy0x0yG 
_ncSA_1xy0x0yT2 

Definition at line 15 of file ncSAFormula.h.

16{
18 _ncSA_1xy0x0y0 = 0x00, // commutative
19 _ncSA_Mxy0x0y0 = 0x01, // anti-commutative
20 _ncSA_Qxy0x0y0 = 0x02, // quasi-commutative
21 _ncSA_1xyAx0y0 = 0x10, // shift 1
22 _ncSA_1xy0xBy0 = 0x20, // shift 2
23 _ncSA_1xy0x0yG = 0x30, // Weyl
24 _ncSA_1xy0x0yT2 = 0x100 // homogenized Weyl algebra?
25};
@ _ncSA_1xy0x0yT2
Definition: ncSAFormula.h:24
@ _ncSA_Mxy0x0y0
Definition: ncSAFormula.h:19
@ _ncSA_1xyAx0y0
Definition: ncSAFormula.h:21
@ _ncSA_1xy0x0yG
Definition: ncSAFormula.h:23
@ _ncSA_Qxy0x0y0
Definition: ncSAFormula.h:20
@ _ncSA_notImplemented
Definition: ncSAFormula.h:17
@ _ncSA_1xy0x0y0
Definition: ncSAFormula.h:18
@ _ncSA_1xy0xBy0
Definition: ncSAFormula.h:22

Function Documentation

◆ GetFormulaPowerMultiplier()

static CFormulaPowerMultiplier * GetFormulaPowerMultiplier ( const ring  r)
inlinestatic

Definition at line 93 of file ncSAFormula.h.

94{
95 return r->GetNC()->GetFormulaPowerMultiplier();
96}

◆ ncInitSpecialPowersMultiplication()

bool ncInitSpecialPowersMultiplication ( ring  r)

Definition at line 50 of file ncSAFormula.cc.

51{
52#if OUTPUT
53 PrintS("ncInitSpecialPowersMultiplication(ring), ring: \n");
54 rWrite(r, TRUE);
55 PrintLn();
56#endif
57
59 assume(!rIsSCA(r));
60
61
62 if( r->GetNC()->GetFormulaPowerMultiplier() != NULL )
63 {
64 WarnS("Already defined!");
65 return false;
66 }
67
68
69 r->GetNC()->GetFormulaPowerMultiplier() = new CFormulaPowerMultiplier(r);
70
71 return true;
72
73}
#define TRUE
Definition: auxiliary.h:100
#define WarnS
Definition: emacs.cc:78
static bool rIsSCA(const ring r)
Definition: nc.h:190
#define assume(x)
Definition: mod2.h:389
#define NULL
Definition: omList.c:12
void PrintS(const char *s)
Definition: reporter.cc:284
void PrintLn()
Definition: reporter.cc:310
void rWrite(ring r, BOOLEAN details)
Definition: ring.cc:226
static BOOLEAN rIsPluralRing(const ring r)
we must always have this test!
Definition: ring.h:400