Virtual base class for PAlgebraMod. More...
#include <PAlgebra.h>
Public Member Functions | |
| virtual PAlgebraModBase * | clone () const =0 |
| virtual PA_tag | getTag () const =0 |
| Returns the type tag: PA_GF2_tag or PA_zz_p_tag. | |
| virtual const PAlgebra & | getZMStar () const =0 |
| Returns reference to underlying PAlgebra object. | |
| virtual const vector< ZZX > & | getFactorsOverZZ () const =0 |
| Returns reference to the factorization of Phi_m(X) mod p^r, but as ZZX's. | |
| virtual long | getR () const =0 |
| The value r. | |
| virtual long | getPPowR () const =0 |
| The value p^r. | |
| virtual void | restoreContext () const =0 |
| Restores the NTL context for p^r. | |
| virtual void | genMaskTable () const =0 |
| Generates the "mask table" that is used to support rotations. More... | |
Virtual base class for PAlgebraMod.
|
pure virtual |
Generates the "mask table" that is used to support rotations.
maskTable[i][j] is a polynomial representation of a mask that is 1 in all slots whose i'th coordinate is at least j, and 0 elsewhere. We have:
maskTable.size() == zMStar.numOfGens() // # of generators
for i = 0..maskTable.size()-1:
maskTable[i].size() == zMStar.OrderOf(i) // order of generator i
Implemented in PAlgebraModDerived< type >.
1.8.3.1