#include <factory.h>
In the typical case, the user provides an object whose class inherits from BlackboxFactory and implements the method makeBlackbox. The object represents the original integer or rational version of the black box, whose data might require some modification (e.g. modular reduction) to produce a true black box. Alternatively, the resulting black box might merely be a reinterpretation of the data in the original object, as is the case where matrix entries are all nonnegative and smaller than the modulus.
Public Methods | |
virtual | ~BlackboxFactory () |
Virtual destructor. | |
virtual Blackbox * | makeBlackbox (const Field &F)=0 |
virtual integer & | maxNorm (integer &res)=0 |
virtual integer & | hadamardBound (integer &res) const=0 |
virtual size_t | rowdim ()=0 |
virtual size_t | coldim ()=0 |
|
Virtual destructor.
|
|
Give the column dimension of the matrix Implemented in DenseMatrixFactory, and SparseMatrixFactory. |
|
Compute and return the hadamard bound of the matrxi. Implemented in DenseMatrixFactory, and SparseMatrixFactory. |
|
Given a field and vector type, construct a black box for the matrix over that field and using that vector type. This should be implemented by the user
Implemented in DenseMatrixFactory, and SparseMatrixFactory. |
|
Compute and return the max-norm of the matrix.
Implemented in DenseMatrixFactory, and SparseMatrixFactory. |
|
Give the row dimension of the matrix Implemented in DenseMatrixFactory, and SparseMatrixFactory. |