source: git/Singular/fglmgauss.h @ 8cfee1c

spielwiese
Last change on this file since 8cfee1c was 416465, checked in by Olaf Bachmann <obachman@…>, 24 years ago
* bug-fixes from work with Thomas git-svn-id: file:///usr/local/Singular/svn/trunk@3826 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 1.1 KB
Line 
1// emacs edit mode for this file is -*- C++ -*-
2// $Id: fglmgauss.h,v 1.6 1999-11-15 17:20:01 obachman Exp $
3
4/****************************************
5*  Computer Algebra System SINGULAR     *
6****************************************/
7/*
8* ABSTRACT - header file for the gauss - reducer
9*            (used by fglm)
10*/
11#ifndef FGLMGAUSS_H
12#define FGLMGAUSS_H
13
14#include "structs.h"
15#include "fglmvec.h"
16
17class gaussElem;
18
19class gaussReducer
20{
21private:
22    gaussElem * elems;
23    BOOLEAN * isPivot;
24    int * perm;
25    fglmVector v;
26    fglmVector p;
27    number pdenom;
28    int size;
29    int max;
30public:
31    gaussReducer( int dimen );
32    ~gaussReducer();
33
34    // reduce returns TRUE, if v reduces to 0, FALSE otherwise;
35    BOOLEAN reduce( fglmVector v );
36
37    // if a vector does not reduce to zero, then it can be stored as a new gauss
38    // vector.
39    // Has to be called after reduce!
40    void store();
41
42    // if a vector reduces to zero, then one can get the corresponding fglmVector
43    // of the linear dependence
44    // Has to be called after reduce!
45    fglmVector getDependence();
46};
47
48#endif
Note: See TracBrowser for help on using the repository browser.