Frobby 0.9.5
BigattiFacade.cpp
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#include "stdinc.h"
19#include "BigattiFacade.h"
20
22#include "BigattiParams.h"
24
26 Facade(params.getPrintActions()),
27 _pivot(BigattiPivotStrategy::createStrategy
28 (params.getPivot(), params.getWidenPivot())),
29 _params(params) {
31}
32
34 // Destructor defined so auto_ptr<T> in the header does not need
35 // definition of T.
36}
37
39 beginAction("Computing multigraded Hilbert-Poincare series.");
40
43 _params,
44 _pivot,
46 alg.setComputeUnivariate(false);
47 alg.run();
48
49 endAction();
50}
51
53 beginAction("Computing univariate Hilbert-Poincare series");
54
57 _params,
58 _pivot,
60 alg.setComputeUnivariate(true);
61 alg.run();
62
63 endAction();
64}
void nameFactoryRegister(NameFactory< AbstractProduct > &factory)
Registers the string returned by ConcreteProduct::getStaticName() to a function that default-construc...
void computeMultigradedHilbertSeries()
Computes the numerator of the multigraded Hilbert-Poincare series with no cancellation of common term...
BigattiParams _params
void computeUnivariateHilbertSeries()
Computes the numerator of the univariate Hilbert-Poincare series with no cancellation of common terms...
auto_ptr< BigattiPivotStrategy > _pivot
BigattiFacade(const BigattiParams &params)
CommonParamsHelper _common
A BigattiPivotStrategy is an implementation of a pivot selection strategy for the Hilbert series algo...
TermTranslator & getTranslator()
CoefBigTermConsumer & getPolyConsumer()
void readIdealAndSetPolyOutput(const CommonParams &params)
Read input and support polynomial output.
auto_ptr< Ideal > takeIdeal()
This is the super class of all facades.
Definition Facade.h:32
void beginAction(const char *message)
Prints message to standard error if printing is turned on, and records the time when the action start...
Definition Facade.cpp:38
void endAction()
Prints to standard error the time since the last call to beginAction.
Definition Facade.cpp:51