spielwiese
Last change
on this file since 066288 was
066288,
checked in by Oleksandr Motsak <motsak@…>, 10 years ago
|
Separating headers: kernel/fglm/
NOTE: in this case git was able to detect the movement of headers despite minor changes to them,
in general if git fails to do that one will get separate DELETION and ADDITION of a new file
which is to be avoided e.g. at the cost of an extra commit (with all the changes)
|
-
Property mode set to
100644
|
File size:
1.0 KB
|
Line | |
---|
1 | // emacs edit mode for this file is -*- C++ -*- |
---|
2 | |
---|
3 | /**************************************** |
---|
4 | * Computer Algebra System SINGULAR * |
---|
5 | ****************************************/ |
---|
6 | /* |
---|
7 | * ABSTRACT - header file for the gauss - reducer |
---|
8 | * (used by fglm) |
---|
9 | */ |
---|
10 | #ifndef FGLMGAUSS_H |
---|
11 | #define FGLMGAUSS_H |
---|
12 | |
---|
13 | #include <kernel/structs.h> |
---|
14 | #include <kernel/fglm/fglmvec.h> |
---|
15 | |
---|
16 | class gaussElem; |
---|
17 | |
---|
18 | class gaussReducer |
---|
19 | { |
---|
20 | private: |
---|
21 | gaussElem * elems; |
---|
22 | BOOLEAN * isPivot; |
---|
23 | int * perm; |
---|
24 | fglmVector v; |
---|
25 | fglmVector p; |
---|
26 | number pdenom; |
---|
27 | int size; |
---|
28 | int max; |
---|
29 | public: |
---|
30 | gaussReducer( int dimen ); |
---|
31 | ~gaussReducer(); |
---|
32 | |
---|
33 | // reduce returns TRUE, if v reduces to 0, FALSE otherwise; |
---|
34 | BOOLEAN reduce( fglmVector v ); |
---|
35 | |
---|
36 | // if a vector does not reduce to zero, then it can be stored as a new gauss |
---|
37 | // vector. |
---|
38 | // Has to be called after reduce! |
---|
39 | void store(); |
---|
40 | |
---|
41 | // if a vector reduces to zero, then one can get the corresponding fglmVector |
---|
42 | // of the linear dependence |
---|
43 | // Has to be called after reduce! |
---|
44 | fglmVector getDependence(); |
---|
45 | }; |
---|
46 | |
---|
47 | #endif |
---|
Note: See
TracBrowser
for help on using the repository browser.