Frobby  0.9.0
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"
23 #include "BigattiPivotStrategy.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 }
BigattiFacade::BigattiFacade
BigattiFacade(const BigattiParams &params)
Definition: BigattiFacade.cpp:25
stdinc.h
BigattiFacade::_params
BigattiParams _params
Definition: BigattiFacade.h:49
BigattiHilbertAlgorithm::run
void run()
Definition: BigattiHilbertAlgorithm.cpp:54
CommonParamsHelper::readIdealAndSetPolyOutput
void readIdealAndSetPolyOutput(const CommonParams &params)
Read input and support polynomial output.
Definition: CommonParamsHelper.cpp:85
CommonParamsHelper::getPolyConsumer
CoefBigTermConsumer & getPolyConsumer()
Definition: CommonParamsHelper.h:78
BigattiPivotStrategy.h
BigattiHilbertAlgorithm
Definition: BigattiHilbertAlgorithm.h:32
BigattiParams.h
CommonParamsHelper::takeIdeal
auto_ptr< Ideal > takeIdeal()
Definition: CommonParamsHelper.h:67
BigattiFacade::_common
CommonParamsHelper _common
Definition: BigattiFacade.h:50
BigattiFacade::~BigattiFacade
~BigattiFacade()
Definition: BigattiFacade.cpp:33
BigattiFacade.h
Facade::endAction
void endAction()
Prints to standard error the time since the last call to beginAction.
Definition: Facade.cpp:51
BigattiHilbertAlgorithm::setComputeUnivariate
void setComputeUnivariate(bool value)
Definition: BigattiHilbertAlgorithm.cpp:50
BigattiParams
Definition: BigattiParams.h:25
BigattiPivotStrategy
A BigattiPivotStrategy is an implementation of a pivot selection strategy for the Hilbert series algo...
Definition: BigattiPivotStrategy.h:28
CommonParamsHelper::getTranslator
TermTranslator & getTranslator()
Definition: CommonParamsHelper.h:70
BigattiFacade::computeUnivariateHilbertSeries
void computeUnivariateHilbertSeries()
Computes the numerator of the univariate Hilbert-Poincare series with no cancellation of common terms...
Definition: BigattiFacade.cpp:52
Facade::beginAction
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
BigattiFacade::computeMultigradedHilbertSeries
void computeMultigradedHilbertSeries()
Computes the numerator of the multigraded Hilbert-Poincare series with no cancellation of common term...
Definition: BigattiFacade.cpp:38
BigattiHilbertAlgorithm.h
BigattiFacade::_pivot
auto_ptr< BigattiPivotStrategy > _pivot
Definition: BigattiFacade.h:48
Facade
This is the super class of all facades.
Definition: Facade.h:32