#include <Atlas.h>
|
| Subspace () |
|
| Subspace (size_t n) |
|
| Subspace (const BitVectorList< dim > &, size_t) |
| Constructs the normalised subspace generated by the collection of |BitVectors| |b|, each of which has rank |n|. More...
|
|
| Subspace (const BitMatrix< dim > &) |
| Constructs the normalised subspace generated by the columns of a |BitMatrix|, i.e., the image of that matrix. More...
|
|
const BitVector< dim > & | basis (size_t j) const |
|
const BitVectorList< dim > & | basis () const |
|
size_t | dimension () const |
|
const size_t | rank () const |
|
const BitSet< dim > & | support () const |
|
BitVectorList< dim > | basis_perp () const |
|
BitSet< dim > | support_perp () const |
|
BitVector< dim > | toBasis (BitVector< dim > v) const |
| Expresses |v| in the subspace basis. More...
|
|
BitVector< dim > | fromBasis (const BitVector< dim > &v) const |
| Interprets |v| in the subspace basis and returns external form. More...
|
|
bool | contains (const BitVector< dim > &v) const |
|
bool | contains (const BitVectorList< dim > &m) const |
|
BitVector< dim > | representative (const BitVector< dim > &) const |
| Return canonical representative of |v| modulo our subspace. More...
|
|
BitVector< dim > | mod_image (const BitVector< dim > &w) const |
|
void | mod_reduce (BitVector< dim > &w) const |
|
void | apply (const BitMatrix< dim > &) |
|
void | swap (Subspace &) |
|
Constructs the normalised subspace generated by the collection of |BitVectors| |b|, each of which has rank |n|.
Constructs the normalised subspace generated by the columns of a |BitMatrix|, i.e., the image of that matrix.
Synopsis: applies |r| to our subspace, normalizing the resulting subspace.
Precondition: r is a matrix of the appropriate column size (it could go to a space of another dimension, even.)
Interprets |v| in the subspace basis and returns external form.
Return canonical representative of |v| modulo our subspace.
This representative is characterized by the vanishing of its bits in positions |d_support| (the leading bits of the canonical basis of our subspace). Note that we are making no reference to the space from which our subspace is divided out; this could be the whole space $(Z/2Z)^n$ (in any case |r| is expressed in its canonical basis) or some subspace containing our subspace.
The algorithm projects v onto the subspace, the result |pv| being expressed in the canonical basis of the subspace: the coordinates of pv are just the entries of |v| in the coordinates flagged by |d_support|. Then |w| is computed as the corresponding |BitVector| in $(Z/2Z)^n$, given by combining the canonical basis with coefficients from |pv|. Finally we set |r=v-w|.
Expresses |v| in the subspace basis.
Dimension of the ambient vector space.
pivot (leading nonzero bit) positions
The documentation for this class was generated from the following files:
- /home/ran/atlas_project/latest_branch_07182016/sources/Atlas.h
- /home/ran/atlas_project/latest_branch_07182016/sources/structure/subquotient.h
- /home/ran/atlas_project/latest_branch_07182016/sources/structure/subquotient.cpp