Frobby
0.9.1
src
BigattiPivotStrategy.h
Go to the documentation of this file.
1
/* Frobby: Software for monomial ideal computations.
2
Copyright (C) 2009 University of Aarhus
3
Contact Bjarke Hammersholt Roune for license information (www.broune.com)
4
5
This program is free software; you can redistribute it and/or modify
6
it under the terms of the GNU General Public License as published by
7
the Free Software Foundation; either version 2 of the License, or
8
(at your option) any later version.
9
10
This program is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
GNU General Public License for more details.
14
15
You should have received a copy of the GNU General Public License
16
along with this program. If not, see http://www.gnu.org/licenses/.
17
*/
18
#ifndef BIGATTI_PIVOT_STRATEGY_GUARD
19
#define BIGATTI_PIVOT_STRATEGY_GUARD
20
21
class
Term
;
22
class
BigattiState
;
23
28
class
BigattiPivotStrategy
{
29
public
:
30
virtual
~BigattiPivotStrategy
();
31
37
virtual
const
Term
&
getPivot
(
BigattiState
& state) = 0;
38
40
virtual
const
char
*
getName
()
const
= 0;
41
50
static
auto_ptr<BigattiPivotStrategy> createStrategy
51
(
const
string
& prefix,
bool
widen);
52
53
protected
:
54
BigattiPivotStrategy
();
55
56
// To make these inaccessible. They are not implemented.
57
BigattiPivotStrategy
(
const
BigattiPivotStrategy
&);
58
BigattiPivotStrategy
& operator=(
const
BigattiPivotStrategy
&);
59
bool
operator==
(
const
BigattiPivotStrategy
&);
60
};
61
62
#endif
BigattiPivotStrategy::getName
virtual const char * getName() const =0
Returns the name of the strategy.
BigattiPivotStrategy::~BigattiPivotStrategy
virtual ~BigattiPivotStrategy()
Definition:
BigattiPivotStrategy.cpp:30
BigattiState
Definition:
BigattiState.h:27
operator==
bool operator==(const BigIntVector &a, const BigIntVector &b)
Definition:
BigIntVector.cpp:21
Term
Term represents a product of variables which does not include a coefficient.
Definition:
Term.h:49
BigattiPivotStrategy::getPivot
virtual const Term & getPivot(BigattiState &state)=0
Returns the pivot of a pivot split of state.
BigattiPivotStrategy
A BigattiPivotStrategy is an implementation of a pivot selection strategy for the Hilbert series algo...
Definition:
BigattiPivotStrategy.h:28
Generated by
1.8.17