~ubuntu-branches/ubuntu/saucy/gfan/saucy-proposed

« back to all changes in this revision

Viewing changes to subspace.h

  • Committer: Package Import Robot
  • Author(s): Cédric Boutillier
  • Date: 2013-07-09 10:44:01 UTC
  • mfrom: (2.1.2 experimental)
  • Revision ID: package-import@ubuntu.com-20130709104401-5q66ozz5j5af0dak
Tags: 0.5+dfsg-3
* Upload to unstable.
* modify remove_failing_tests_on_32bits.patch to replace command of
  0009RenderStairCase test with an empty one instead of deleting it.
* remove lintian override about spelling error

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
 
4
4
#include "vektor.h"
5
5
#include "polynomial.h"
6
 
 
 
6
#include "linalg.h"
 
7
 
 
8
/**
 
9
   @brief A subspace of Q^n.
 
10
 
 
11
   An object of this class represents a linear subspace of Q^n. All
 
12
   functionality is already available in the class FieldMatrix.
 
13
   However, the Subspace class is different in two ways: a Subspace
 
14
   cannot be changed after construction and the Subspace class
 
15
   provides operator< for sorting and distinguishing mathematical
 
16
   subspaces.
 
17
*/
7
18
class Subspace
8
19
{
9
20
  int n;//ambient dimension
10
 
  PolynomialSet basis;
 
21
 
 
22
  //  PolynomialSet basis;
 
23
  FieldMatrix basis2;
 
24
  IntegerVectorList integerRep;//REMOVE THIS
11
25
 public:
 
26
  /**
 
27
     Constructs a subspace given a generating set.
 
28
 
 
29
     @param generators generators for the subspace.
 
30
     @param ambientDimension the dimension of the ambient space.
 
31
     This number must equal the sizes of the vectors in generators.
 
32
   */
12
33
  Subspace(IntegerVectorList const &generators, int ambientDimension=-1);
13
34
  bool contains(IntegerVector const &v)const;
14
35
  int dimension();
15
36
  friend Subspace sum(Subspace const &a, Subspace const &b);
16
 
  int ambientDimension();
 
37
  int ambientDimension()const;
17
38
  IntegerVectorList getRepresentation()const;
18
39
  IntegerVector canonicalizeVector(IntegerVector const &v)const;
 
40
  bool operator<(Subspace const &b)const;
19
41
};
20
42
 
21
43
#endif